SpyBara
Go Premium

Documentation 2026-09-24 22:57 UTC to 2026-09-25 23:58 UTC

103 files changed +8,058 −5,945. View all changes and history on the product overview
2026
Fri 25 23:58 Thu 24 22:57 Wed 23 23:57 Tue 22 23:59 Mon 21 22:59 Sun 20 23:59 Sat 19 23:57 Fri 18 23:58 Tue 15 23:58 Mon 14 22:58 Sun 13 21:00 Sat 12 03:02 Thu 10 23:00 Wed 9 22:58 Tue 8 20:00 Tue 1 21:02

admin-setup.md +3 −3

Details

94Verwaltete Einstellungen können Tools sperren, Sandbox-Ausführung, MCP-Server und Plugin-Quellen einschränken und steuern, welche Hooks ausgeführt werden. Jede Zeile ist eine Kontrollfläche mit den Einstellungsschlüsseln, die sie antreiben.94Verwaltete Einstellungen können Tools sperren, Sandbox-Ausführung, MCP-Server und Plugin-Quellen einschränken und steuern, welche Hooks ausgeführt werden. Jede Zeile ist eine Kontrollfläche mit den Einstellungsschlüsseln, die sie antreiben.

95 95 

96| Kontrolle | Was es tut | Wichtige Einstellungen |96| Kontrolle | Was es tut | Wichtige Einstellungen |

97| :--------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------- |97| :----------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------- |

98| [Berechtigungsregeln](/docs/de/permissions) | Bestimmte Tools und Befehle zulassen, fragen oder ablehnen | `permissions.allow`, `permissions.deny` |98| [Berechtigungsregeln](/docs/de/permissions) | Bestimmte Tools und Befehle zulassen, fragen oder ablehnen | `permissions.allow`, `permissions.deny` |

99| [Berechtigungssperre](/docs/de/permissions#managed-only-settings) | Verwaltete Einstellungen zur [einzigen Quelle von Berechtigungsregeln](/docs/de/settings-reference#allowmanagedpermissionrulesonly) machen. Deaktivieren Sie `--dangerously-skip-permissions` | `allowManagedPermissionRulesOnly`, `permissions.disableBypassPermissionsMode` |99| [Berechtigungssperre](/docs/de/permissions#managed-only-settings) | Verwaltete Einstellungen zur [einzigen Quelle von Berechtigungsregeln](/docs/de/settings-reference#allowmanagedpermissionrulesonly) machen. Deaktivieren Sie `--dangerously-skip-permissions` | `allowManagedPermissionRulesOnly`, `permissions.disableBypassPermissionsMode` |

100| [Startberechtigungsmodus](/docs/de/permission-modes#which-mode-a-session-starts-in) | Wählen Sie den Berechtigungsmodus, in dem die Terminal-Sitzungen Ihrer Entwickler starten, anstelle des integrierten Startberechtigungsmodus, oder entfernen Sie den Auto-Modus. Die VS Code-Erweiterung liest einen `defaultMode`, den Sie nur in Pro-, Max- und Team-Plänen festlegen; [Berechtigungsmodi wechseln](/docs/de/permission-modes#switch-permission-modes) listet auf, was die Erweiterung liest | `permissions.defaultMode`, `permissions.disableAutoMode` |100| [Startberechtigungsmodus](/docs/de/permission-modes#which-mode-a-session-starts-in) | Wählen Sie den Berechtigungsmodus, in dem die Terminal-Sitzungen Ihrer Entwickler starten, anstelle des integrierten Startberechtigungsmodus, oder entfernen Sie den Auto-Modus. Die VS Code-Erweiterung liest einen `defaultMode`, den Sie nur in Pro-, Max- und Team-Plänen festlegen; [Berechtigungsmodi wechseln](/docs/de/permission-modes#switch-permission-modes) listet auf, was die Erweiterung liest | `permissions.defaultMode`, `permissions.disableAutoMode` |

101| [Sandboxing](/docs/de/sandboxing) | Isolierung auf Betriebssystemebene des Dateisystems und Netzwerks mit Domain-Allowlists | `sandbox.enabled`, `sandbox.network.allowedDomains` |101| [Sandboxing](/docs/de/sandboxing) | Isolierung auf Betriebssystemebene des Dateisystems und Netzwerks mit Domain-Allowlists | `sandbox.enabled`, `sandbox.network.allowedDomains` |

102| [Verwaltete Richtlinie CLAUDE.md](/docs/de/memory#deploy-organization-wide-claude-md) | Organisationsweite Anweisungen, die in jeder Sitzung geladen werden, können nicht ausgeschlossen werden | Datei im verwalteten Richtlinienpfad |102| [Verwaltete Richtlinie CLAUDE.md](/docs/de/memory#deploy-organization-wide-claude-md) | Organisationsweite Anweisungen, die in jeder Sitzung geladen werden, können nicht ausgeschlossen werden | Datei im verwalteten Richtlinienpfad |

103| [MCP-Server-Kontrolle](/docs/de/managed-mcp) | Einschränken, welche MCP-Server Benutzer hinzufügen oder verbinden können, einen festen Satz bereitstellen oder Remote-Server neben ihren eigenen für jeden Benutzer bereitstellen | `allowedMcpServers`, `deniedMcpServers`, `allowManagedMcpServersOnly`, `managedMcpServers` oder eine bereitgestellte `managed-mcp.json`-Datei |103| [MCP-Server-Kontrolle](/docs/de/managed-mcp) | Einschränken, welche MCP-Server Benutzer hinzufügen oder verbinden können, einen festen Satz bereitstellen oder Remote-Server neben ihren eigenen für jeden Benutzer bereitstellen | `allowedMcpServers`, `deniedMcpServers`, `allowManagedMcpServersOnly`, `managedMcpServers` oder eine bereitgestellte `managed-mcp.json`-Datei |

104| [Plugin-Marketplace-Kontrolle](/docs/de/plugin-marketplaces#managed-marketplace-restrictions) | Einschränken, von welchen Marketplace-Quellen Benutzer hinzufügen und installieren können, CLI-Flags ablehnen, die Plugins, Agents und MCP-Server für einen einzelnen Lauf sideloaden, [`command`-Plugin-Quellen](/docs/de/plugin-marketplaces#command-sources) blockieren und Allowlisten, welche Plugins von Marketplaces vorgeschlagen werden können | `strictKnownMarketplaces`, `blockedMarketplaces`, `disableSideloadFlags`, `disableCommandPluginSources`, `pluginSuggestionMarketplaces` |104| [Plugin-Marketplace-Kontrolle](/docs/de/plugins/org#restrict-what-users-can-install) | Einschränken, von welchen Marketplace-Quellen Benutzer hinzufügen und installieren können, CLI-Flags ablehnen, die Plugins, Agents und MCP-Server für einen einzelnen Lauf sideloaden, [`command`-Plugin-Quellen](/docs/de/plugins/marketplace-reference#command-plugin-source) blockieren und Allowlisten, welche Plugins von Marketplaces vorgeschlagen werden können | `strictKnownMarketplaces`, `blockedMarketplaces`, `disableSideloadFlags`, `disableCommandPluginSources`, `pluginSuggestionMarketplaces` |

105| [Anpassungssperre](/docs/de/settings-reference#strictpluginonlycustomization) | Blockieren Sie Skills, Agents, Hooks und MCP-Server aus Benutzer- und Projektquellen, damit sie nur aus Plugins oder verwalteten Einstellungen stammen können. Das Sperren von Skills stoppt auch die [Skills, die Ihre Entwickler auf claude.ai aktivieren](/docs/de/skills#where-synced-skills-load) vom Synchronisieren | `strictPluginOnlyCustomization` |105| [Anpassungssperre](/docs/de/settings-reference#strictpluginonlycustomization) | Blockieren Sie Skills, Agents, Hooks und MCP-Server aus Benutzer- und Projektquellen, damit sie nur aus Plugins oder verwalteten Einstellungen stammen können. Das Sperren von Skills stoppt auch die [Skills, die Ihre Entwickler auf claude.ai aktivieren](/docs/de/skills#where-synced-skills-load) vom Synchronisieren | `strictPluginOnlyCustomization` |

106| [Claude.ai-Synchronisierung deaktivieren](/docs/de/settings-reference#syncclaudeaiskills) | Verhindern Sie, dass Claude Code die [Skills](/docs/de/skills#how-synced-skills-behave) und [Plugins](/docs/de/plugins-reference#synced-plugins) lädt, die Ihre Entwickler auf claude.ai aktivieren. Wenn Sie Skills für Ihre Organisation auf claude.ai ausschalten, stoppt Claude Code die Synchronisierung beider, und in v2.1.273 oder später entfernt es auch die bereits synchronisierten. Um eines davon zu stoppen, ohne Skills auszuschalten, setzen Sie seinen Schlüssel in verwalteten Einstellungen auf `false` | `syncClaudeAiSkills`, `syncClaudeAiPlugins` |106| [Claude.ai-Synchronisierung deaktivieren](/docs/de/settings-reference#syncclaudeaiskills) | Verhindern Sie, dass Claude Code die [Skills](/docs/de/skills#how-synced-skills-behave) und [Plugins](/docs/de/plugins/loading#synced-plugins) lädt, die Ihre Entwickler auf claude.ai aktivieren. Wenn Sie Skills für Ihre Organisation auf claude.ai ausschalten, stoppt Claude Code die Synchronisierung beider, und in v2.1.273 oder später entfernt es auch die bereits synchronisierten. Um eines davon zu stoppen, ohne Skills auszuschalten, setzen Sie seinen Schlüssel in verwalteten Einstellungen auf `false` | `syncClaudeAiSkills`, `syncClaudeAiPlugins` |

107| [Hook-Einschränkungen](/docs/de/settings-reference#allowmanagedhooksonly) | Einschränken, welche Hooks ausgeführt werden, und HTTP-Hook-URLs einschränken; siehe [was unter `allowManagedHooksOnly` ausgeführt wird](/docs/de/settings-reference#what-runs-under-allowmanagedhooksonly) für die vollständige Effektliste | `allowManagedHooksOnly`, `allowedHttpHookUrls` |107| [Hook-Einschränkungen](/docs/de/settings-reference#allowmanagedhooksonly) | Einschränken, welche Hooks ausgeführt werden, und HTTP-Hook-URLs einschränken; siehe [was unter `allowManagedHooksOnly` ausgeführt wird](/docs/de/settings-reference#what-runs-under-allowmanagedhooksonly) für die vollständige Effektliste | `allowManagedHooksOnly`, `allowedHttpHookUrls` |

108| [Anmeldung erzwingen](/docs/de/settings-reference#forceloginmethod) | Anmeldung auf eine bestimmte Methode oder Anthropic-Organisation beschränken. Die Methodenbeschränkung gilt über die VS Code-Erweiterung, Agent SDK, `claude setup-token` und `/install-github-app` hinweg, und der Terminal-Bildschirm für interaktive Anmeldung, erreichbar durch `/login` oder Onboarding beim ersten Start, wählt die Methode vor, ohne sie zu erzwingen; Claude Code überprüft die Organisation für claude.ai-Kontoanmeldungen im Terminal, VS Code-Erweiterung und Agent SDK, und überprüft sie nicht für Claude Console-Anmeldungen oder für [Gateway](/docs/de/claude-apps-gateway)-Anmeldung. Vor v2.1.212 galten nur Terminal-Anmeldungen für beide Schlüssel. Wenn festgelegt, werden Sitzungen, die durch `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` oder `apiKeyHelper` authentifiziert sind, beim Start blockiert; Cloud-Provider-Sitzungen sind nicht betroffen | `forceLoginMethod`, `forceLoginOrgUUID` |108| [Anmeldung erzwingen](/docs/de/settings-reference#forceloginmethod) | Anmeldung auf eine bestimmte Methode oder Anthropic-Organisation beschränken. Die Methodenbeschränkung gilt über die VS Code-Erweiterung, Agent SDK, `claude setup-token` und `/install-github-app` hinweg, und der Terminal-Bildschirm für interaktive Anmeldung, erreichbar durch `/login` oder Onboarding beim ersten Start, wählt die Methode vor, ohne sie zu erzwingen; Claude Code überprüft die Organisation für claude.ai-Kontoanmeldungen im Terminal, VS Code-Erweiterung und Agent SDK, und überprüft sie nicht für Claude Console-Anmeldungen oder für [Gateway](/docs/de/claude-apps-gateway)-Anmeldung. Vor v2.1.212 galten nur Terminal-Anmeldungen für beide Schlüssel. Wenn festgelegt, werden Sitzungen, die durch `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` oder `apiKeyHelper` authentifiziert sind, beim Start blockiert; Cloud-Provider-Sitzungen sind nicht betroffen | `forceLoginMethod`, `forceLoginOrgUUID` |

109| [Agent-Ansicht deaktivieren](/docs/de/agent-view#how-background-sessions-are-hosted) | Schalten Sie `claude agents`, `--bg`, `/background` und den On-Demand-Supervisor aus | `disableAgentView` |109| [Agent-Ansicht deaktivieren](/docs/de/agent-view#how-background-sessions-are-hosted) | Schalten Sie `claude agents`, `--bg`, `/background` und den On-Demand-Supervisor aus | `disableAgentView` |

Details

281 Berechtigungen umgehen-Modus (`bypassPermissions`)281 Berechtigungen umgehen-Modus (`bypassPermissions`)

282</h4>282</h4>

283 283 

284Genehmigt Tool-Nutzungen automatisch ohne Aufforderung, außer in den unten aufgeführten Fällen. Hooks werden weiterhin ausgeführt und können Vorgänge bei Bedarf blockieren.284Genehmigt Tool-Nutzungen automatisch ohne Aufforderung, außer in den unten aufgeführten Fällen. Hooks werden weiterhin ausgeführt und können Vorgänge bei Bedarf blockieren. Auf Linux und macOS weigert sich Claude Code, in diesem Modus als Root oder unter `sudo` außerhalb einer [erkannten Sandbox](/docs/de/permission-modes#skip-all-checks-with-bypasspermissions-mode) zu starten, und die Abfrage schlägt vor dem ersten Turn fehl.

285 285 

286<Warning>286<Warning>

287 Mit äußerster Vorsicht verwenden. Claude hat in diesem Modus vollständigen Systemzugriff. Verwenden Sie nur in kontrollierten Umgebungen, in denen Sie allen möglichen Vorgängen vertrauen.287 Mit äußerster Vorsicht verwenden. Claude hat in diesem Modus vollständigen Systemzugriff. Verwenden Sie nur in kontrollierten Umgebungen, in denen Sie allen möglichen Vorgängen vertrauen.

Details

13* **Hooks**: Event-Handler, die auf Tool-Nutzung und andere Ereignisse reagieren13* **Hooks**: Event-Handler, die auf Tool-Nutzung und andere Ereignisse reagieren

14* **MCP-Server**: Externe Tool-Integrationen über das Model Context Protocol14* **MCP-Server**: Externe Tool-Integrationen über das Model Context Protocol

15 15 

16Vollständige Informationen zur Plugin-Struktur und zum Erstellen von Plugins finden Sie unter [Plugins](/docs/de/plugins).16Vollständige Informationen zur Plugin-Struktur und zum Erstellen von Plugins finden Sie unter [Plugins](/docs/de/plugins/overview).

17 17 

18<h2 id="loading-plugins">18<h2 id="loading-plugins">

19 Plugins laden19 Plugins laden


21 21 

22Laden Sie Plugins, indem Sie ihre lokalen Dateisystempfade in Ihrer Optionskonfiguration angeben. Das Feld `type` muss `"local"` sein, der einzige Wert, den das SDK akzeptiert. Das SDK unterstützt das Laden mehrerer Plugins aus verschiedenen Speicherorten.22Laden Sie Plugins, indem Sie ihre lokalen Dateisystempfade in Ihrer Optionskonfiguration angeben. Das Feld `type` muss `"local"` sein, der einzige Wert, den das SDK akzeptiert. Das SDK unterstützt das Laden mehrerer Plugins aus verschiedenen Speicherorten.

23 23 

24Um ein Plugin zu verwenden, das über einen [Marketplace](/docs/de/plugin-marketplaces) oder ein Remote-Repository verteilt wird, laden Sie es zunächst herunter und geben Sie den lokalen Verzeichnispath an. Informationen zum erforderlichen Verzeichnislayout eines Plugins finden Sie in der [Plugin-Struktur-Referenz](#plugin-structure-reference) unten.24Um ein Plugin zu verwenden, das über einen [Marketplace](/docs/de/plugins/overview) oder ein Remote-Repository verteilt wird, laden Sie es zunächst herunter und geben Sie den lokalen Verzeichnispath an. Informationen zum erforderlichen Verzeichnislayout eines Plugins finden Sie in der [Plugin-Struktur-Referenz](#plugin-structure-reference) unten.

25 25 

26<CodeGroup>26<CodeGroup>

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


138 ```138 ```

139</CodeGroup>139</CodeGroup>

140 140 

141<h2 id="using-plugin-skills">141<h2 id="use-plugin-skills">

142 Plugin-Skills verwenden142 Plugin-Skills verwenden

143</h2>143</h2>

144 144 


352 Siehe auch352 Siehe auch

353</h2>353</h2>

354 354 

355* [Plugins](/docs/de/plugins) - Vollständiger Plugin-Entwicklungsleitfaden355* [Plugins](/docs/de/plugins/overview) - Vollständiger Plugin-Entwicklungsleitfaden

356* [Plugins-Referenz](/docs/de/plugins-reference) - Technische Spezifikationen356* [Plugins-Referenz](/docs/de/plugins/manifest-reference) - Technische Spezifikationen

357* [Befehle](/docs/de/agent-sdk/skills#dispatch-commands-by-name) - Versand von Befehlen im SDK357* [Befehle](/docs/de/agent-sdk/skills#dispatch-commands-by-name) - Versand von Befehlen im SDK

358* [Subagenten](/docs/de/agent-sdk/subagents) - Arbeiten mit spezialisierten Agenten358* [Subagenten](/docs/de/agent-sdk/subagents) - Arbeiten mit spezialisierten Agenten

359* [Skills](/docs/de/agent-sdk/skills) - Verwendung von Agent Skills359* [Skills](/docs/de/agent-sdk/skills) - Verwendung von Agent Skills

Details

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

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

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

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

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

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

923| `debug_stderr` | `Any` | `sys.stderr` | *Veraltet* - Dateiähnliches Objekt für Debug-Ausgabe. Verwenden Sie stattdessen den `stderr`-Callback |923| `debug_stderr` | `Any` | `sys.stderr` | *Veraltet* - Das SDK ignoriert diesen Wert. Verwenden Sie den `stderr`-Callback für CLI-stderr-Ausgabe |

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

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

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

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

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

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

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

Details

275Das macht das Agent SDK anders: Claude führt Tools direkt aus, anstatt Sie zu bitten, sie zu implementieren.275Das macht das Agent SDK anders: Claude führt Tools direkt aus, anstatt Sie zu bitten, sie zu implementieren.

276 276 

277<Note>277<Note>

278 Wenn Sie einen Authentifizierungsfehler wie `Not logged in` oder `Invalid API key` sehen, stellen Sie sicher, dass Sie die Umgebungsvariable `ANTHROPIC_API_KEY` in der Shell gesetzt haben, in der Sie Ihren Agenten ausführen. Das SDK lädt `.env`-Dateien nicht automatisch. Weitere Hilfe finden Sie im [vollständigen Fehlerbehebungsleitfaden](/docs/de/troubleshooting).278 Wenn Sie einen Authentifizierungsfehler wie `Not logged in` oder `Invalid API key` sehen, stellen Sie sicher, dass Sie die Umgebungsvariable `ANTHROPIC_API_KEY` in der Shell gesetzt haben, in der Sie Ihren Agenten ausführen. Das SDK lädt `.env`-Dateien nicht automatisch.

279 

280 Informationen zu den Ursachen und Lösungen dieser und anderer Authentifizierungsfehler finden Sie unter [Authentifizierungsfehler](/docs/de/errors#authentication-errors) in der Fehlerreferenz.

279</Note>281</Note>

280 282 

281<h3 id="try-other-prompts">283<h3 id="try-other-prompts">


385* **[MCP-Server](/docs/de/agent-sdk/mcp)**: Verbinden Sie sich mit Datenbanken, Browsern, APIs und anderen externen Systemen387* **[MCP-Server](/docs/de/agent-sdk/mcp)**: Verbinden Sie sich mit Datenbanken, Browsern, APIs und anderen externen Systemen

386* **[Hosting](/docs/de/agent-sdk/hosting)**: Stellen Sie Agenten in Docker, Cloud und CI/CD bereit388* **[Hosting](/docs/de/agent-sdk/hosting)**: Stellen Sie Agenten in Docker, Cloud und CI/CD bereit

387* **[Beispiel-Agenten](https://github.com/anthropics/claude-agent-sdk-demos)**: Siehe vollständige Beispiele: E-Mail-Assistent, Forschungsagent und mehr389* **[Beispiel-Agenten](https://github.com/anthropics/claude-agent-sdk-demos)**: Siehe vollständige Beispiele: E-Mail-Assistent, Forschungsagent und mehr

388* **[Fehlerbehebung](/docs/de/agent-sdk/troubleshooting)**: Beheben Sie Agent SDK-Fehler anhand der genauen Meldung, die Sie sehen390* **[Fehlerbehebung](/docs/de/agent-sdk/troubleshooting)**: Beheben Sie Fehler, wenn die CLI nicht startet oder beendet wird, oder wenn ein Ergebnis ohne strukturierte Ausgabe ankommt

Details

4 4 

5# Fehlerbehebung im Agent SDK5# Fehlerbehebung im Agent SDK

6 6 

7> Beheben Sie Agent SDK-Fehler anhand der genauen Meldung, die Sie sehen, mit der Ursache und Lösung für jeden Fehler in den TypeScript- und Python-SDKs.7> Beheben Sie Agent SDK-Fehler, wenn die Claude Code CLI nicht startet, der CLI-Prozess beendet wird oder ein erfolgreiches Ergebnis ohne strukturierte Ausgabe ankommt.

8 8 

9Die Einträge auf dieser Seite sind nach dem Fehler, den Sie sehen, sortiert. Jeder Eintrag nennt die Ursache und was zu tun ist.9Diese Seite behandelt Agent SDK-Fehler beim CLI-Start, beim CLI-Prozessausstieg und bei strukturierten Ausgaben. Einträge auf dieser Seite sind nach dem Fehler, den Sie sehen, sortiert. Jeder Eintrag nennt die Ursache und was zu tun ist.

10 

11Symptome, die an ein Feature gebunden sind, wie z. B. ein Hook, der nicht ausgelöst wird, oder ein Skill, der nicht verwendet wird, haben einen Fehlerbehebungsabschnitt auf der Seite dieses Features. Die Tabelle nennt den Abschnitt oder die Seite, die jedes Symptom behandelt:

12 

13| Symptom | Gehen Sie zu |

14| :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------- |

15| Skills nicht gefunden, ein Skill wird nicht verwendet, Fehler `Invalid skill name` | [Skills-Fehlerbehebung](/docs/de/agent-sdk/skills#troubleshooting) |

16| MCP-Server zeigt Status `failed`, Tools werden nicht aufgerufen, Verbindungs-Timeouts, Tool-Ausgabe überschreitet die maximal zulässigen Token | [MCP-Fehlerbehebung](/docs/de/agent-sdk/mcp#troubleshooting) |

17| Plugin wird nicht geladen, Plugin-Skills werden nicht angezeigt | [Plugins-Fehlerbehebung](/docs/de/agent-sdk/plugins#troubleshooting) |

18| Claude delegiert nicht an Subagenten, dateisystembasierte Agenten werden nicht geladen | [Subagenten-Fehlerbehebung](/docs/de/agent-sdk/subagents#troubleshooting) |

19| Checkpointing-Optionen nicht erkannt, Benutzernachrichten ohne UUIDs, `No file checkpoint found`, `File rewinding is not enabled`, `ProcessTransport is not ready for writing` | [Fehlerbehebung für Datei-Checkpointing](/docs/de/agent-sdk/file-checkpointing#troubleshooting) |

20| Hook wird nicht ausgelöst, Matcher filtert nicht wie erwartet, Hook-Timeout, Tool unerwartet blockiert, geänderte Eingabe nicht angewendet, Session-Hooks nicht verfügbar in Python, Subagenten-Berechtigungsaufforderungen vervielfachen sich, rekursive Hook-Schleifen mit Subagenten, `systemMessage` wird nicht in der Ausgabe angezeigt | [Beheben Sie häufige Probleme](/docs/de/agent-sdk/hooks#fix-common-issues) auf der Hooks-Seite |

21| Ein Agent, der auf Ihrem Computer funktioniert, schlägt in einem bereitgestellten Service oder Container fehl | [Fehlerbehebung bei Bereitstellungsfehlern](/docs/de/agent-sdk/hosting#troubleshoot-deployment-failures) |

22| `Not logged in`, `Invalid API key`, `API Error`, `429`, `There's an issue with the selected model` | [Fehlerreferenz](/docs/de/errors#find-your-error) |

23| `CLINotFoundError`, `CLIConnectionError`, `ProcessError`, `Claude Code process exited with code N`, `Claude Code returned an error result`, `structured_output` ist `None` | [CLI-Start](#cli-startup), [CLI-Prozessausstieg](#cli-process-exit) und [Strukturierte Ausgaben](#structured-outputs) auf dieser Seite |

10 24 

11<h2 id="cli-startup">25<h2 id="cli-startup">

12 CLI-Start26 CLI-Start

agent-teams.md +1 −1

Details

118 118 

119Der Standard ist `"in-process"`. Setzen Sie `"auto"`, um Split Panes zu aktivieren, wenn Sie bereits in einer tmux-Sitzung ausgeführt werden oder Ihr Terminal iTerm2 mit der installierten `it2` CLI ist, und fallen Sie ansonsten auf In-Process zurück. Die Einstellung `"tmux"` aktiviert den Split-Pane-Modus und erkennt automatisch, ob tmux oder iTerm2 basierend auf Ihrem Terminal verwendet werden soll.119Der Standard ist `"in-process"`. Setzen Sie `"auto"`, um Split Panes zu aktivieren, wenn Sie bereits in einer tmux-Sitzung ausgeführt werden oder Ihr Terminal iTerm2 mit der installierten `it2` CLI ist, und fallen Sie ansonsten auf In-Process zurück. Die Einstellung `"tmux"` aktiviert den Split-Pane-Modus und erkennt automatisch, ob tmux oder iTerm2 basierend auf Ihrem Terminal verwendet werden soll.

120 120 

121Ab v2.1.186 setzen Sie `"iterm2"`, um native Split Panes von iTerm2 explizit zu verwenden. Dieser Modus erfordert die [`it2` CLI](https://github.com/mkusaka/it2) und zeigt einen Fehler mit dem Installationsbefehl an, wenn `it2` fehlt. Die Setup-Eingabeaufforderung, die angeboten wird, `it2` zu installieren oder zu tmux zu wechseln, wird unter `"auto"` oder `"tmux"` angezeigt, wenn Ihr Terminal iTerm2 ist und tmux als Fallback verfügbar ist.121Setzen Sie `"iterm2"`, um native Split Panes von iTerm2 explizit zu verwenden. Dieser Modus erfordert die [`it2` CLI](https://github.com/mkusaka/it2) und zeigt einen Fehler mit dem Installationsbefehl an, wenn `it2` fehlt. Die Setup-Eingabeaufforderung, die angeboten wird, `it2` zu installieren oder zu tmux zu wechseln, wird unter `"auto"` oder `"tmux"` angezeigt, wenn Ihr Terminal iTerm2 ist und tmux als Fallback verfügbar ist.

122 122 

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

124 124 

agent-view.md +2 −2

Details

724| :----------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |724| :----------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

725| [`--settings <file-or-json>`](/docs/de/settings) | Einstellungen für Agenten-Ansicht und versendete Sitzungen überschreiben |725| [`--settings <file-or-json>`](/docs/de/settings) | Einstellungen für Agenten-Ansicht und versendete Sitzungen überschreiben |

726| [`--add-dir <path>`](/docs/de/permissions#additional-directories-grant-file-access-not-configuration) | Dateizugriff auf ein zusätzliches Verzeichnis gewähren |726| [`--add-dir <path>`](/docs/de/permissions#additional-directories-grant-file-access-not-configuration) | Dateizugriff auf ein zusätzliches Verzeichnis gewähren |

727| [`--plugin-dir <path>`](/docs/de/plugins) | Ein Plugin aus einem lokalen Verzeichnis laden |727| [`--plugin-dir <path>`](/docs/de/plugins/create#load-a-directory-or-archive-for-one-session) | Ein Plugin aus einem lokalen Verzeichnis laden |

728| [`--mcp-config <file-or-json>`](/docs/de/mcp) | MCP-Server aus einer Konfigurationsdatei oder JSON-Zeichenkette laden |728| [`--mcp-config <file-or-json>`](/docs/de/mcp) | MCP-Server aus einer Konfigurationsdatei oder JSON-Zeichenkette laden |

729| `--strict-mcp-config` | Nur die MCP-Server aus `--mcp-config` verwenden, andere MCP-Konfigurationen ignorieren. Siehe [Exklusive Kontrolle mit managed-mcp.json](/docs/de/managed-mcp#exclusive-control-with-managed-mcp-json), um zu erfahren, was das Flag unter einer verwalteten MCP-Datei tut |729| `--strict-mcp-config` | Nur die MCP-Server aus `--mcp-config` verwenden, andere MCP-Konfigurationen ignorieren. Siehe [Exklusive Kontrolle mit managed-mcp.json](/docs/de/managed-mcp#exclusive-control-with-managed-mcp-json), um zu erfahren, was das Flag unter einer verwalteten MCP-Datei tut |

730 730 


1062| v2.1.257 | Eine Eingabeaufforderung, die mit `Ctrl+S` in einer geöffneten Hintergrund-Sitzung verstaut wird, [wird mit der Sitzung beibehalten](#what-persists-across-restarts), sodass `Ctrl+S` sie nach dem Stoppen und erneuten Starten des Sitzungsprozesses wiederherstellt. Vor dieser Version lebte der Verstau nur im laufenden Prozess und ging verloren, wenn die Sitzung lange genug untätig war, damit ihr Prozess stoppte, oder wenn sie gestoppt und dann erneut geöffnet wurde. |1062| v2.1.257 | Eine Eingabeaufforderung, die mit `Ctrl+S` in einer geöffneten Hintergrund-Sitzung verstaut wird, [wird mit der Sitzung beibehalten](#what-persists-across-restarts), sodass `Ctrl+S` sie nach dem Stoppen und erneuten Starten des Sitzungsprozesses wiederherstellt. Vor dieser Version lebte der Verstau nur im laufenden Prozess und ging verloren, wenn die Sitzung lange genug untätig war, damit ihr Prozess stoppte, oder wenn sie gestoppt und dann erneut geöffnet wurde. |

1063| v2.1.251 | In einer Hintergrund-Sitzung, die nicht [in einen Worktree verschoben wurde](#how-file-edits-are-isolated), können Claude und die Subagenten, die es spawnt, Dateien in einem verknüpften Git-Worktree bearbeiten. |1063| v2.1.251 | In einer Hintergrund-Sitzung, die nicht [in einen Worktree verschoben wurde](#how-file-edits-are-isolated), können Claude und die Subagenten, die es spawnt, Dateien in einem verknüpften Git-Worktree bearbeiten. |

1064| v2.1.251 | Claude Code leitet ein Cloud-Provider-Gateway weiter, das in der Shell exportiert wird, von der Sie versenden, wie `ANTHROPIC_VERTEX_BASE_URL` oder `ANTHROPIC_BEDROCK_BASE_URL` mit seinem Auth-Bypass-Flag, an [den Worker der Sitzung](#llm-gateway) unter denselben Bedingungen wie `ANTHROPIC_BASE_URL`. Vor dieser Version schlugen alle Anfragen fehl, die die Sitzung machte, wenn Sie von einer Shell aus backgroundeten oder versendeten, die nur durch ein solches Gateway authentifiziert wurde, weil der Endpunkt und das Flag aus ihrer Umgebung gelöscht wurden. |1064| v2.1.251 | Claude Code leitet ein Cloud-Provider-Gateway weiter, das in der Shell exportiert wird, von der Sie versenden, wie `ANTHROPIC_VERTEX_BASE_URL` oder `ANTHROPIC_BEDROCK_BASE_URL` mit seinem Auth-Bypass-Flag, an [den Worker der Sitzung](#llm-gateway) unter denselben Bedingungen wie `ANTHROPIC_BASE_URL`. Vor dieser Version schlugen alle Anfragen fehl, die die Sitzung machte, wenn Sie von einer Shell aus backgroundeten oder versendeten, die nur durch ein solches Gateway authentifiziert wurde, weil der Endpunkt und das Flag aus ihrer Umgebung gelöscht wurden. |

1065| v2.1.251 | Wenn eine Hintergrund-Sitzung startet, während ein anderer Claude Code-Prozess einen [Plugin-Marketplace](/docs/de/plugin-marketplaces) aktualisiert, wie eine Schwester-Sitzung, die die [Marketplace-Autoupdate](/docs/de/discover-plugins#configure-auto-updates) ausführt, hält Claude Code die Plugins dieses Marketplace verfügbar. Vor dieser Version konnte eine solche Sitzung ohne Skills, Agenten, Hooks und MCP-Server dieses Marketplace starten und so für ihren gesamten Lauf bleiben. |1065| v2.1.251 | Wenn eine Hintergrund-Sitzung startet, während ein anderer Claude Code-Prozess einen [Plugin-Marketplace](/docs/de/plugins/overview) aktualisiert, wie eine Schwester-Sitzung, die die [Marketplace-Autoupdate](/docs/de/plugins/install#keep-plugins-updated) ausführt, hält Claude Code die Plugins dieses Marketplace verfügbar. Vor dieser Version konnte eine solche Sitzung ohne Skills, Agenten, Hooks und MCP-Server dieses Marketplace starten und so für ihren gesamten Lauf bleiben. |

1066| v2.1.248 | `Shift+Enter` in der [Versand-Eingabe](#keyboard-shortcuts) fügt eine neue Zeile ein, was der Haupteingabeaufforderung entspricht, und `Ctrl+Enter` versendet und hängt sich sofort in Terminals an, in denen die `?`-Überlagerung `ctrl+enter to start and open` auflistet. Vor dieser Version versendete `Shift+Enter` und hängte sich an. |1066| v2.1.248 | `Shift+Enter` in der [Versand-Eingabe](#keyboard-shortcuts) fügt eine neue Zeile ein, was der Haupteingabeaufforderung entspricht, und `Ctrl+Enter` versendet und hängt sich sofort in Terminals an, in denen die `?`-Überlagerung `ctrl+enter to start and open` auflistet. Vor dieser Version versendete `Shift+Enter` und hängte sich an. |

1067| v2.1.248 | [Das Löschen einer Sitzung](#what-deleting-a-session-removes) ist erfolgreich, wenn die Commits des Worktree bereits auf der lokalen Kopie des Standard-Branch Ihres `origin`-Remote vorhanden sind und Ihr Haupt-Checkout diesen Branch ausgecheckt hat; vor dieser Version wurde das Löschen mit `has commits that are not pushed anywhere` abgelehnt. |1067| v2.1.248 | [Das Löschen einer Sitzung](#what-deleting-a-session-removes) ist erfolgreich, wenn die Commits des Worktree bereits auf der lokalen Kopie des Standard-Branch Ihres `origin`-Remote vorhanden sind und Ihr Haupt-Checkout diesen Branch ausgecheckt hat; vor dieser Version wurde das Löschen mit `has commits that are not pushed anywhere` abgelehnt. |

1068| v2.1.248 | Eine Sitzung, die mit `←` oder `/background` in den Hintergrund verschoben wird, hält die [`git worktree lock`](/docs/de/worktrees#clean-up-subagent-and-background-session-worktrees) auf ihrem Worktree, während sie läuft; vor dieser Version gab das Backgrounding die Sperre frei, und die Bereinigung oder `git worktree remove` konnte den Worktree unter der laufenden Sitzung entfernen. |1068| v2.1.248 | Eine Sitzung, die mit `←` oder `/background` in den Hintergrund verschoben wird, hält die [`git worktree lock`](/docs/de/worktrees#clean-up-subagent-and-background-session-worktrees) auf ihrem Worktree, während sie läuft; vor dieser Version gab das Backgrounding die Sperre frei, und die Bereinigung oder `git worktree remove` konnte den Worktree unter der laufenden Sitzung entfernen. |

agents.md +1 −1

Details

22 22 

23* [Worktrees](/docs/de/worktrees) geben jeder Sitzung einen separaten Git-Checkout, sodass parallele Sitzungen niemals dieselben Dateien bearbeiten. Verwenden Sie sie für Sitzungen, die Sie selbst ausführen. Eine Sitzung, die Sie aus der Agent-Ansicht versenden, [wird vor der Bearbeitung von Dateien in ihren eigenen Worktree verschoben](/docs/de/agent-view#how-file-edits-are-isolated), und Subagenten, die Sie spawnen, können jeweils einen erhalten.23* [Worktrees](/docs/de/worktrees) geben jeder Sitzung einen separaten Git-Checkout, sodass parallele Sitzungen niemals dieselben Dateien bearbeiten. Verwenden Sie sie für Sitzungen, die Sie selbst ausführen. Eine Sitzung, die Sie aus der Agent-Ansicht versenden, [wird vor der Bearbeitung von Dateien in ihren eigenen Worktree verschoben](/docs/de/agent-view#how-file-edits-are-isolated), und Subagenten, die Sie spawnen, können jeweils einen erhalten.

24* [Sitzungsübergreifendes Messaging](/docs/de/cross-session-messaging) ermöglicht es Claude, Ihre anderen Claude Code-Sitzungen auf diesem Computer, auf einem anderen Computer oder [in der Cloud](/docs/de/claude-code-on-the-web) aufzulisten und zu kontaktieren, sodass Sitzungen, die Sie selbst ausführen, Ergebnisse und Status untereinander weitergeben können.24* [Sitzungsübergreifendes Messaging](/docs/de/cross-session-messaging) ermöglicht es Claude, Ihre anderen Claude Code-Sitzungen auf diesem Computer, auf einem anderen Computer oder [in der Cloud](/docs/de/claude-code-on-the-web) aufzulisten und zu kontaktieren, sodass Sitzungen, die Sie selbst ausführen, Ergebnisse und Status untereinander weitergeben können.

25* [`/batch`](/docs/de/commands) ist ein [Skill](/docs/de/skills), der Claude eine große Änderung in 5 bis 30 Worktree-isolierte Subagenten aufteilt, die jeweils einen Pull Request öffnen. Es ist eine gepackte Verwendung von Subagenten und Worktrees, keine separate Koordinationsstil.25* [`/batch`](/docs/de/commands) ist ein [Skill](/docs/de/skills), der Claude eine große Änderung in 5 bis 30 Worktree-isolierte Subagenten aufteilt. Es ist eine gepackte Verwendung von Subagenten und Worktrees, keine separate Koordinationsstil.

26 26 

27Einige andere Funktionen führen Claude aus, ohne dass Sie jeden Schritt steuern, aber sie lösen ein anderes Problem als die Aufteilung der Arbeit auf Agenten:27Einige andere Funktionen führen Claude aus, ohne dass Sie jeden Schritt steuern, aber sie lösen ein anderes Problem als die Aufteilung der Arbeit auf Agenten:

28 28 

Details

518 Verwenden Sie den Mantle-Endpunkt518 Verwenden Sie den Mantle-Endpunkt

519</h2>519</h2>

520 520 

521Mantle ist ein Amazon Bedrock-Endpunkt, der Claude-Modelle über die native Anthropic API-Form statt über die Amazon Bedrock Invoke API bereitstellt. Er verwendet die gleichen [AWS-Anmeldedaten](#2-configure-aws-credentials), [IAM-Berechtigungen](#iam-configuration) und [`awsAuthRefresh`-Konfiguration](#advanced-credential-configuration).521Mantle ist ein Amazon Bedrock-Endpunkt, der Claude-Modelle über die native Anthropic API-Form statt über die Amazon Bedrock Invoke API bereitstellt. Er verwendet die gleichen [AWS-Anmeldedaten](#2-configure-aws-credentials) und [`awsAuthRefresh`-Konfiguration](#advanced-credential-configuration).

522 

523Mantle hat seine eigenen IAM-Aktionen unter dem `bedrock-mantle:`-Präfix, daher decken die `bedrock:`-Aktionen in der [IAM-Konfiguration](#iam-configuration) es nicht ab. Gewähren Sie Ihrer IAM-Identität `bedrock-mantle:CreateInference` für Inferenz und `bedrock-mantle:CountTokens` für Token-Zählung. Siehe [Making inference requests](https://docs.aws.amazon.com/bedrock/latest/userguide/inference.html) und [Counting tokens](https://docs.aws.amazon.com/bedrock/latest/userguide/count-tokens.html) in der AWS-Dokumentation und die [service authorization reference](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrockpoweredbyawsmantle.html) für jede Mantle-Aktion.

522 524 

523<h3 id="enable-mantle">525<h3 id="enable-mantle">

524 Aktivieren Sie Mantle526 Aktivieren Sie Mantle


670 672 

671Wenn `/status` nach dem Setzen von `CLAUDE_CODE_USE_MANTLE` nicht `Amazon Bedrock (Mantle)` anzeigt, erreicht die Variable den Prozess nicht. Bestätigen Sie, dass sie in der Shell exportiert wird, in der Sie `claude` gestartet haben, oder legen Sie sie im `env`-Block Ihrer [Einstellungsdatei](/docs/de/settings) fest.673Wenn `/status` nach dem Setzen von `CLAUDE_CODE_USE_MANTLE` nicht `Amazon Bedrock (Mantle)` anzeigt, erreicht die Variable den Prozess nicht. Bestätigen Sie, dass sie in der Shell exportiert wird, in der Sie `claude` gestartet haben, oder legen Sie sie im `env`-Block Ihrer [Einstellungsdatei](/docs/de/settings) fest.

672 674 

673Ein `403` vom Mantle-Endpunkt mit gültigen Anmeldedaten bedeutet, dass Ihrem AWS-Konto kein Zugriff auf das angeforderte Modell gewährt wurde. Wenden Sie sich an Ihr AWS-Kontoteam, um Zugriff anzufordern.675Was ein `403` vom Mantle-Endpunkt bedeutet, hängt davon ab, ob der Fehler eine IAM-Aktion benennt:

676 

677* Wenn der Fehler eine `bedrock-mantle:`-Aktion benennt, gewähren Sie Ihrer IAM-Identität diese Aktion.

678* Wenn der Fehler keine Aktion benennt und Ihre Anmeldedaten gültig sind, wurde Ihrem AWS-Konto kein Zugriff auf das angeforderte Modell gewährt. Wenden Sie sich an Ihr AWS-Kontoteam, um Zugriff anzufordern.

674 679 

675Ein `400`, das die Modell-ID nennt, bedeutet, dass dieses Modell nicht auf Mantle bereitgestellt wird. Mantle hat sein eigenes Modell-Lineup, das vom Standard-Amazon Bedrock-Katalog getrennt ist, daher funktionieren Inferenzprofil-IDs wie `us.anthropic.claude-sonnet-4-6` nicht. Verwenden Sie eine Mantle-Format-ID, oder aktivieren Sie [beide Endpunkte](#run-mantle-alongside-the-invoke-api), damit Claude Code jede Anfrage zum Endpunkt weiterleitet, wo das Modell verfügbar ist.680Ein `400`, das die Modell-ID nennt, bedeutet, dass dieses Modell nicht auf Mantle bereitgestellt wird. Mantle hat sein eigenes Modell-Lineup, das vom Standard-Amazon Bedrock-Katalog getrennt ist, daher funktionieren Inferenzprofil-IDs wie `us.anthropic.claude-sonnet-4-6` nicht. Verwenden Sie eine Mantle-Format-ID, oder aktivieren Sie [beide Endpunkte](#run-mantle-alongside-the-invoke-api), damit Claude Code jede Anfrage zum Endpunkt weiterleitet, wo das Modell verfügbar ist.

676 681 

Details

334 Führen Sie `/plugin` aus, um den Marketplace zu durchsuchen. Plugins fügen Skills, Tools und Integrationen ohne Konfiguration hinzu.334 Führen Sie `/plugin` aus, um den Marketplace zu durchsuchen. Plugins fügen Skills, Tools und Integrationen ohne Konfiguration hinzu.

335</Tip>335</Tip>

336 336 

337[Plugins](/docs/de/plugins) bündeln Skills, Hooks, Subagents und MCP-Server in eine einzelne installierbare Einheit aus der Community und von Anthropic. Wenn Sie mit einer typisierten Sprache arbeiten, installieren Sie ein [Code-Intelligence-Plugin](/docs/de/discover-plugins#code-intelligence), um Claude präzise Symbol-Navigation und automatische Fehlererkennung nach Bearbeitungen zu geben.337[Plugins](/docs/de/plugins/overview) bündeln Skills, Hooks, Subagents und MCP-Server in eine einzelne installierbare Einheit aus der Community und von Anthropic. Wenn Sie mit einer typisierten Sprache arbeiten, installieren Sie ein [Code-Intelligence-Plugin](/docs/de/plugins/code-intelligence), um Claude präzise Symbol-Navigation und automatische Fehlererkennung nach Bearbeitungen zu geben.

338 338 

339Anleitungen zur Auswahl zwischen Skills, Subagents, Hooks und MCP finden Sie unter [Extend Claude Code](/docs/de/features-overview#match-features-to-your-goal).339Anleitungen zur Auswahl zwischen Skills, Subagents, Hooks und MCP finden Sie unter [Extend Claude Code](/docs/de/features-overview#match-features-to-your-goal).

340 340 


541 Schleifen Sie durch Aufgaben, die `claude -p` für jede aufrufen. Verwenden Sie `--allowedTools`, um Berechtigungen für Batch-Operationen zu begrenzen.541 Schleifen Sie durch Aufgaben, die `claude -p` für jede aufrufen. Verwenden Sie `--allowedTools`, um Berechtigungen für Batch-Operationen zu begrenzen.

542</Tip>542</Tip>

543 543 

544Für große Migrationen oder Analysen können Sie Arbeit über viele parallele Claude-Aufrufe verteilen. In einem Git-Repository führen Sie [`/batch <instruction>`](/docs/de/commands#all-commands) aus, um Claude die Änderung auf 5 bis 30 Subagenten zu verteilen. Jeder Subagent arbeitet in seinem eigenen Worktree und öffnet einen Pull Request. Um den Fan-Out stattdessen von Ihrem eigenen Skript aus zu steuern, schleifen Sie über `claude -p`:544Für große Migrationen oder Analysen können Sie Arbeit über viele parallele Claude-Aufrufe verteilen. Führen Sie [`/batch <instruction>`](/docs/de/commands#all-commands) aus, um Claude die Änderung auf 5 bis 30 Subagenten zu verteilen. Jeder Subagent arbeitet in seinem eigenen Worktree. Um den Fan-Out stattdessen von Ihrem eigenen Skript aus zu steuern, schleifen Sie über `claude -p`:

545 545 

546<Steps>546<Steps>

547 <Step title="Generieren Sie eine Aufgabenliste">547 <Step title="Generieren Sie eine Aufgabenliste">

Details

191claude --dangerously-load-development-channels server:webhook191claude --dangerously-load-development-channels server:webhook

192```192```

193 193 

194Der Bypass ist pro Eintrag. Das Kombinieren dieses Flags mit `--channels` erweitert den Bypass nicht auf die `--channels`-Einträge. Während der Research Preview ist die genehmigte Allowlist von Anthropic kuratiert, daher bleibt Ihr Channel auf dem Development-Flag, während Sie ihn erstellen und testen.194Der Bypass ist pro Eintrag. Das Kombinieren dieses Flags mit `--channels` erweitert den Bypass nicht auf die `--channels`-Einträge. Während der Research Preview ist Ihr Channel nicht auf der genehmigten Allowlist, daher bleibt er auf dem Development-Flag, während Sie ihn erstellen und testen.

195 195 

196<Note>196<Note>

197 Dieses Flag überspringt nur die Allowlist. Die `channelsEnabled`-Organisationsrichtlinie gilt weiterhin. Verwenden Sie es nicht, um Channels aus nicht vertrauenswürdigen Quellen auszuführen.197 Dieses Flag überspringt nur die Allowlist. Die `channelsEnabled`-Organisationsrichtlinie gilt weiterhin. Verwenden Sie es nicht, um Channels aus nicht vertrauenswürdigen Quellen auszuführen.


802 Als Plugin verpacken802 Als Plugin verpacken

803</h2>803</h2>

804 804 

805Um Ihren Channel installierbar und teilbar zu machen, wickeln Sie ihn in ein [Plugin](/docs/de/plugins) ein und veröffentlichen Sie ihn auf einem [Marketplace](/docs/de/plugin-marketplaces). Benutzer installieren ihn mit `/plugin install`, dann aktivieren ihn pro Sitzung mit `--channels plugin:<name>@<marketplace>`.805Um Ihren Channel installierbar und teilbar zu machen, wickeln Sie ihn in ein [Plugin](/docs/de/plugins/overview) ein und veröffentlichen Sie ihn auf einem [Marketplace](/docs/de/plugins/overview). Benutzer installieren ihn mit `/plugin install`, dann aktivieren ihn pro Sitzung mit `--channels plugin:<name>@<marketplace>`.

806 806 

807Ein Channel, der auf Ihrem eigenen Marketplace veröffentlicht wird, benötigt immer noch `--dangerously-load-development-channels` zum Ausführen, da er nicht auf der [genehmigten Allowlist](/docs/de/channels#supported-channels) ist. Die Standard-Allowlist ist die Channel-Plugins in `claude-plugins-official`, die Anthropic nach eigenem Ermessen kuratiert. Die [In-App-Einreichungsformulare](/docs/de/plugins#submit-your-plugin-to-the-community-marketplace) fügen Plugins zum Community-Marketplace hinzu, der nicht auf der Channel-Allowlist ist.807Ein Channel, der auf Ihrem eigenen Marketplace veröffentlicht wird, benötigt immer noch `--dangerously-load-development-channels` zum Ausführen, da er nicht auf der [genehmigten Allowlist](/docs/de/channels#supported-channels) ist. Die Standard-Allowlist ist die Channel-Plugins in `claude-plugins-official`. Die [In-App-Einreichungsformulare](/docs/de/plugins/publish#submit-to-the-community-marketplace) fügen Plugins zum Community-Marketplace hinzu, der nicht auf der Channel-Allowlist ist.

808 808 

809Wenn Sie mit einem Anthropic-Partner-Kontakt arbeiten, wenden Sie sich an diese Person, um eine offizielle Marketplace-Auflistung zu koordinieren. Bei Team- und Enterprise-Plänen kann ein Admin stattdessen Ihr Plugin in die [`allowedChannelPlugins`](/docs/de/channels#restrict-which-channel-plugins-can-run)-Liste der Organisation aufnehmen, die die Standard-Anthropic-Allowlist ersetzt.809Wenn Sie mit einem Anthropic-Partner-Kontakt arbeiten, wenden Sie sich an diese Person, um eine offizielle Marketplace-Auflistung zu koordinieren. Bei Team- und Enterprise-Plänen kann ein Admin stattdessen Ihr Plugin in die [`allowedChannelPlugins`](/docs/de/channels#restrict-which-channel-plugins-can-run)-Liste der Organisation aufnehmen, die die Standard-Anthropic-Allowlist ersetzt.

810 810 


815* [Channels](/docs/de/channels) zum Installieren und Verwenden von Telegram, Discord, iMessage oder der fakechat-Demo und zum Aktivieren von Channels für eine Team- oder Enterprise-Organisation815* [Channels](/docs/de/channels) zum Installieren und Verwenden von Telegram, Discord, iMessage oder der fakechat-Demo und zum Aktivieren von Channels für eine Team- oder Enterprise-Organisation

816* [Arbeitende Channel-Implementierungen](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins) für vollständigen Server-Code mit Pairing-Flows, Antwort-Tools und Dateianhängen816* [Arbeitende Channel-Implementierungen](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins) für vollständigen Server-Code mit Pairing-Flows, Antwort-Tools und Dateianhängen

817* [MCP](/docs/de/mcp) für das zugrunde liegende Protokoll, das Channel-Server implementieren817* [MCP](/docs/de/mcp) für das zugrunde liegende Protokoll, das Channel-Server implementieren

818* [Plugins](/docs/de/plugins) zum Verpacken Ihres Channels, damit Benutzer ihn mit `/plugin install` installieren können818* [Plugins](/docs/de/plugins/overview) zum Verpacken Ihres Channels, damit Benutzer ihn mit `/plugin install` installieren können

Details

54 Rewind über eine gelöschte Konversation hinweg54 Rewind über eine gelöschte Konversation hinweg

55</h4>55</h4>

56 56 

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

58 58 

59<h4 id="guide-a-summary">59<h4 id="guide-a-summary">

60 Eine Zusammenfassung leiten60 Eine Zusammenfassung leiten

Details

446 Einstellungen, die die Sperren nicht abdecken446 Einstellungen, die die Sperren nicht abdecken

447</h4>447</h4>

448 448 

449Vier übergeordnete Einstellungen passieren den Filter auch mit allen fünf Sperren gesetzt. Unter der Standard-First-Wins-Einstellung ist der Admin-Wert, der den übergeordneten blockiert, der in der höchsten Prioritäts-Admin-Quelle, außer für `allowedMcpServers` während die [MCP-Server-Sperre](#lock-behavior-across-sources) aktiv ist. Unter der Merge-Opt-in `managedSourcesBehavior` sagt [wie Claude Code verwaltete Quellen kombiniert](/docs/de/managed-settings#how-claude-code-combines-managed-sources), welcher Quellenwert stattdessen gilt.449Sechs übergeordnete Einstellungen passieren den Filter auch mit allen fünf Sperren gesetzt. Unter der Standard-First-Wins-Einstellung ist der Admin-Wert, der den übergeordneten blockiert, der in der höchsten Prioritäts-Admin-Quelle, außer für `allowedMcpServers` während die [MCP-Server-Sperre](#lock-behavior-across-sources) aktiv ist. Unter der Merge-Opt-in `managedSourcesBehavior` sagt [wie Claude Code verwaltete Quellen kombiniert](/docs/de/managed-settings#how-claude-code-combines-managed-sources), welcher Quellenwert stattdessen gilt.

450 450 

451* **`forceLoginOrgUUID`**: Claude Code ehrt einen übergeordneten Wert, wenn die höchste Prioritäts-Admin-Quelle keine Organisations-UUID setzt. Gateway-Anmeldung überprüft diesen Schlüssel nicht, daher ist er nur für Flotten wichtig, die auch First-Party-Anthropic-Anmeldungen verwenden. Eine Organisations-UUID in der höchsten Prioritäts-Admin-Quelle blockiert den übergeordneten Wert und ist der, den Claude Code erzwingt, daher setzen Sie `forceLoginOrgUUID` dort.451* **`forceLoginOrgUUID`**: Claude Code ehrt einen übergeordneten Wert, wenn die höchste Prioritäts-Admin-Quelle keine Organisations-UUID setzt. Gateway-Anmeldung überprüft diesen Schlüssel nicht, daher ist er nur für Flotten wichtig, die auch First-Party-Anthropic-Anmeldungen verwenden. Eine Organisations-UUID in der höchsten Prioritäts-Admin-Quelle blockiert den übergeordneten Wert und ist der, den Claude Code erzwingt, daher setzen Sie `forceLoginOrgUUID` dort.

452* **`allowedMcpServers`**: Claude Code ehrt eine übergeordnete Zulassungsliste, wenn keine Admin-Liste in Kraft ist. `allowManagedMcpServersOnly` blockiert sie nicht, da die Sperre erzwingt, welche Liste auch immer gewinnt, als verwalteter Wert, einschließlich einer übergeordneten Liste, wenn keine Admin-Quelle eine Liste liefert. Eine Liste in der höchsten Prioritäts-Admin-Quelle blockiert die übergeordnete und ist die Liste, die Claude Code erzwingt, daher setzen Sie `allowedMcpServers` dort, neben der Sperre. Vor v2.1.223 blockierte ein Wert für einen der beiden Schlüssel in jeder Admin-Quelle den übergeordneten.452* **`allowedMcpServers`**: Claude Code ehrt eine übergeordnete Zulassungsliste, wenn keine Admin-Liste in Kraft ist. `allowManagedMcpServersOnly` blockiert sie nicht, da die Sperre erzwingt, welche Liste auch immer gewinnt, als verwalteter Wert, einschließlich einer übergeordneten Liste, wenn keine Admin-Quelle eine Liste liefert. Eine Liste in der höchsten Prioritäts-Admin-Quelle blockiert die übergeordnete und ist die Liste, die Claude Code erzwingt, daher setzen Sie `allowedMcpServers` dort, neben der Sperre. Vor v2.1.223 blockierte ein Wert für einen der beiden Schlüssel in jeder Admin-Quelle den übergeordneten.

453* **`availableModels`**: Claude Code ehrt eine übergeordnete Modelliste, wenn die Gewinnerquelle für verwaltete Einstellungen keine setzt. Wenn Ihre Flotte Modelle einschränkt, setzen Sie `availableModels` in der Gewinnerquelle.453* **`availableModels`**: Claude Code ehrt eine übergeordnete Modelliste, wenn die Gewinnerquelle für verwaltete Einstellungen keine setzt. Wenn Ihre Flotte Modelle einschränkt, setzen Sie `availableModels` in der Gewinnerquelle.

454* **`strictKnownMarketplaces`**: Claude Code ehrt eine übergeordnete Plugin-Marketplace-Zulassungsliste, wenn die Gewinnerquelle für verwaltete Einstellungen keine setzt. Wenn Ihre Flotte Marketplaces einschränkt, setzen Sie `strictKnownMarketplaces` in der Gewinnerquelle. Erfordert Claude Code v2.1.282 oder später.

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

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

455 457 

456<h3 id="connect-claude-desktop">458<h3 id="connect-claude-desktop">

Details

37* [`managed`](#managed): verwaltete Einstellungsrichtlinien nach IdP-Gruppe37* [`managed`](#managed): verwaltete Einstellungsrichtlinien nach IdP-Gruppe

38* [`telemetry`](#telemetry): OTLP-Weiterleitung an Ihren Observability-Stack38* [`telemetry`](#telemetry): OTLP-Weiterleitung an Ihren Observability-Stack

39* [`access_control`, `limits`, `timeouts`, `rate_limits`](#http-tuning): IP-Zulassung/Ablehnung, Anfragegrößenbeschränkungen, Upstream-Zeit-bis-erstes-Byte und Pro-IP-Anmeldungslimits39* [`access_control`, `limits`, `timeouts`, `rate_limits`](#http-tuning): IP-Zulassung/Ablehnung, Anfragegrößenbeschränkungen, Upstream-Zeit-bis-erstes-Byte und Pro-IP-Anmeldungslimits

40* [`load_test_mode`](#load_test_mode): Lasttests des Gateways ohne Aufruf eines Modellanbieters

40 41 

41<h2 id="secret-expansion">42<h2 id="secret-expansion">

42 Geheimniserweiterung43 Geheimniserweiterung


1029 1030 

1030Hinter einem solchen Front-End setzen Sie zuerst [`listen.trusted_proxies`](#listen), damit das Gateway echte Client-Adressen sieht, und halten Sie das Gateway und alles davor unabhängig vom öffentlichen Internet unerreichbar.1031Hinter einem solchen Front-End setzen Sie zuerst [`listen.trusted_proxies`](#listen), damit das Gateway echte Client-Adressen sieht, und halten Sie das Gateway und alles davor unabhängig vom öffentlichen Internet unerreichbar.

1031 1032 

1033<h3 id="load_test_mode">

1034 `load_test_mode`

1035</h3>

1036 

1037Der `load_test_mode`-Block ermöglicht es Ihnen, ein Gateway zu laden, ohne einen Modell-Anbieter aufzurufen. Während es aktiviert ist, erstellt das Gateway jede Anbieter-Anfrage wie gewohnt, verwirft sie statt sie zu senden, und streamt eine vorgefertigte Antwort durch seinen normalen Antwortpfad zurück. Die Antwort ist Fülltext, der mit einem Satz beginnt, der besagt, dass er vorgefertigt ist.

1038 

1039Erfordert v2.1.283 oder später. Frühere Versionen weigern sich zu starten, wenn der Schlüssel gesetzt ist, daher aktualisieren Sie jedes Replikat, bevor Sie den Block hinzufügen, und entfernen Sie ihn, bevor Sie zurückrollen.

1040 

1041Das Beispiel unten schaltet den Modus mit den Standardwerten ein, eine Antwort von 750 Ausgabe-Token, die über etwa 10 Sekunden gestreamt werden:

1042 

1043```yaml theme={null}

1044load_test_mode:

1045 enabled: true

1046 reply_tokens: 750 # roughly how many tokens of text each canned reply carries

1047 reply_seconds: 9.5 # how long a streamed reply takes

1048```

1049 

1050| Feld | Erforderlich | Beschreibung |

1051| --------------- | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

1052| `enabled` | Ja | `true` schaltet den Modus ein. `false` behält Ihre Zahlen in der Datei mit dem Modus aus. Das Gateway weigert sich zu starten, wenn der Block vorhanden ist, ohne ihn. |

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

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

1055 

1056Ein Lasttest in diesem Modus deckt das Gateway, Ihre Postgres und alles vor dem Gateway ab. Es deckt die Grenzen, Geschwindigkeit oder den Netzwerkpfad des Anbieters nicht ab.

1057 

1058Während der Modus aktiviert ist, kann eine Anfrage einen `x-load-test-user`-Header tragen, der eine ganze Zahl von bis zu sieben Ziffern hält, und das Gateway zählt jede Zahl als einen separaten Entwickler mit der E-Mail und den Gruppen des Entwicklers, dessen Token mit der Anfrage kam. Geben Sie der Load-Test-Bereitstellung ihre eigene leere Datenbank, da das Gateway sich weigert zu starten, wenn der Modus gegen eine Datenbank aktiviert ist, in der ein Entwickler bereits etwas ausgegeben hat.

1059 

1060<Warning>

1061 Schalten Sie dies niemals für ein Gateway ein, das Entwickler verwenden. Jede Anfrage erhält die vorgefertigte Antwort und kein Modell wird aufgerufen. Das Gateway protokolliert eine `load_test_mode is on`-Warnung beim Start und markiert jedes `inference`-[Audit-Ereignis](/docs/de/claude-apps-gateway-deploy#logs) mit `load_test: true`, während der Modus aktiviert ist.

1062</Warning>

1063 

1032<h2 id="complete-example">1064<h2 id="complete-example">

1033 Vollständiges Beispiel1065 Vollständiges Beispiel

1034</h2>1066</h2>


1100# enforcement:1132# enforcement:

1101# fail_closed_on_error: false1133# fail_closed_on_error: false

1102 1134 

1135# Laden Sie diese Bereitstellung zu Testzwecken, ohne einen Modell-Provider aufzurufen. Niemals auf einem

1136# Gateway, das Entwickler verwenden: jede Anfrage erhält eine vorgefertigte Antwort.

1137# load_test_mode:

1138# enabled: true

1139# # reply_tokens: 750

1140# # reply_seconds: 9.5

1141 

1103# Meter zu vertraglich vereinbarten Sätzen statt USD-Listenpreis. Erfordert admin: oder eine1142# Meter zu vertraglich vereinbarten Sätzen statt USD-Listenpreis. Erfordert admin: oder eine

1104# managed:-Richtlinie. Mit managed: gehen die gleichen Sätze auch an angemeldete Clients.1143# managed:-Richtlinie. Mit managed: gehen die gleichen Sätze auch an angemeldete Clients.

1105# Die folgenden Sätze sind Platzhalter, keine echten Vertragspreise.1144# Die folgenden Sätze sind Platzhalter, keine echten Vertragspreise.

Details

219* **[Spend-Limit-Durchsetzung](/docs/de/claude-apps-gateway-spend-limits#postgres-availability)**: schlägt während des Ausfalls offen fehl, daher fließt Inferenz weiterhin; schalten Sie es auf Fail-Closed um, wenn Sie lieber blockieren als ungemessen laufen möchten219* **[Spend-Limit-Durchsetzung](/docs/de/claude-apps-gateway-spend-limits#postgres-availability)**: schlägt während des Ausfalls offen fehl, daher fließt Inferenz weiterhin; schalten Sie es auf Fail-Closed um, wenn Sie lieber blockieren als ungemessen laufen möchten

220* **Readiness**: `/readyz` meldet während des Ausfalls nicht bereit, daher entfernen Orchestratoren, die Verkehr auf Readiness gating, jede Replikation auf einmal aus der Rotation. In dieser Topologie schlägt der gesamte Verkehr, einschließlich Inferenz, die das Gateway immer noch bedienen könnte, beim Load Balancer fehl, bis Postgres wiederhergestellt ist. Die Liveness-Probe auf `/healthz` bleibt bestehen, daher werden Replikationen nicht neu gestartet. Zeigen Sie die Readiness-Probe statt auf `/healthz`, wenn Sie lieber möchten, dass angemeldete Entwickler durch einen Store-Ausfall weiterarbeiten; die Kosten sind, dass neue Anmeldungen gegen eine Replikation fehlschlagen, die immer noch bereit meldet.220* **Readiness**: `/readyz` meldet während des Ausfalls nicht bereit, daher entfernen Orchestratoren, die Verkehr auf Readiness gating, jede Replikation auf einmal aus der Rotation. In dieser Topologie schlägt der gesamte Verkehr, einschließlich Inferenz, die das Gateway immer noch bedienen könnte, beim Load Balancer fehl, bis Postgres wiederhergestellt ist. Die Liveness-Probe auf `/healthz` bleibt bestehen, daher werden Replikationen nicht neu gestartet. Zeigen Sie die Readiness-Probe statt auf `/healthz`, wenn Sie lieber möchten, dass angemeldete Entwickler durch einen Store-Ausfall weiterarbeiten; die Kosten sind, dass neue Anmeldungen gegen eine Replikation fehlschlagen, die immer noch bereit meldet.

221 221 

222Wenn Ihr IdP ausfällt, funktionieren bestehende Sitzungen bis `ttl_hours`, und neue Anmeldungen und Refreshes schlagen fehl. Setzen Sie eine längere `ttl_hours`, wenn Ihr IdP häufige Wartungsfenster hat.222Wenn Ihr IdP ausfällt, funktionieren bestehende Sitzungen bis `ttl_hours`, neue Anmeldungen schlagen fehl, und eine Sitzungs-Aktualisierung erhält eine Wiederholungsantwort und funktioniert, sobald der IdP wieder verfügbar ist. Setzen Sie eine längere `ttl_hours`, wenn Ihr IdP häufige Wartungsfenster hat.

223 223 

224<h3 id="jwt-secret-rotation">224<h3 id="jwt-secret-rotation">

225 JWT-Geheimnisrotation225 JWT-Geheimnisrotation

Details

218Teleport überprüft diese Anforderungen, bevor eine Sitzung fortgesetzt wird. Wenn eine Anforderung nicht erfüllt ist, sehen Sie einen Fehler oder werden aufgefordert, das Problem zu beheben.218Teleport überprüft diese Anforderungen, bevor eine Sitzung fortgesetzt wird. Wenn eine Anforderung nicht erfüllt ist, sehen Sie einen Fehler oder werden aufgefordert, das Problem zu beheben.

219 219 

220| Anforderung | Details |220| Anforderung | Details |

221| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |221| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

222| Sauberer Git-Status | Ihr Arbeitsverzeichnis darf keine nicht committeten Änderungen haben. Teleport fordert Sie auf, Änderungen zu stashen, falls erforderlich. |222| Sauberer Git-Status | Ihr Arbeitsverzeichnis darf keine nicht committeten Änderungen haben. Teleport fordert Sie auf, Änderungen zu stashen, falls erforderlich. |

223| Korrektes Repository | Sie müssen `--teleport` aus einem Checkout desselben Repositories ausführen, nicht aus einem Fork. Wenn Sie es aus einem Checkout eines anderen Repositories ausführen, zeigt Claude Code einen Fehler an, der sowohl das Repository der Sitzung als auch Ihren Checkout benennt. Wenn Claude Code Ihr Remote nicht in einen Hostnamen analysieren kann, beispielsweise einen SSH-Host-Alias wie `git@work:owner/repo.git`, fragt es Sie zur Bestätigung auf und akzeptiert den Checkout, wenn der Owner und der Repository-Name des Remote mit dem Repository der Sitzung übereinstimmen. |223| Korrektes Repository | Sie müssen `--teleport` aus einem Checkout desselben Repositories ausführen, nicht aus einem Fork. Wenn Sie es aus einem Checkout eines anderen Repositories ausführen, zeigt Claude Code einen Fehler an, der sowohl das Repository der Sitzung als auch das Repository Ihres Checkouts benennt. Vor v2.1.219 nannte der Fehler das Repository Ihres Checkouts nicht. Wenn Claude Code Ihr Remote nicht in einen Hostnamen analysieren kann, beispielsweise einen SSH-Host-Alias wie `git@work:owner/repo.git`, fordert es Sie zur Bestätigung auf und akzeptiert den Checkout, wenn der Owner und der Repository-Name des Remote mit dem Repository der Sitzung übereinstimmen. |

224| Branch verfügbar | Der Branch aus der Cloud-Sitzung muss in das Remote gepusht worden sein. Teleport ruft ihn automatisch ab und checkt ihn aus. |224| Branch verfügbar | Der Branch aus der Cloud-Sitzung muss in das Remote gepusht worden sein. Teleport ruft ihn automatisch ab und checkt ihn aus. |

225| Gleiches Konto | Sie müssen sich bei demselben claude.ai-Konto authentifizieren, das in der Cloud-Sitzung verwendet wurde. |225| Gleiches Konto | Sie müssen sich bei demselben claude.ai-Konto authentifizieren, das in der Cloud-Sitzung verwendet wurde. |

226 226 

Details

1451Der Explorer behandelt Dateien, die Sie erstellen und bearbeiten. Ein paar verwandte Dateien befinden sich an anderen Orten:1451Der Explorer behandelt Dateien, die Sie erstellen und bearbeiten. Ein paar verwandte Dateien befinden sich an anderen Orten:

1452 1452 

1453| Datei | Ort | Zweck |1453| Datei | Ort | Zweck |

1454| ----------------------- | ------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |1454| ----------------------- | ------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

1455| `managed-settings.json` | Systemebene, variiert je nach Betriebssystem | Von Unternehmen erzwungene Einstellungen, die Sie nicht überschreiben können, mit Ausnahme von [engen Ausnahmen](/docs/de/settings#security-keys-where-the-stricter-value-applies). Siehe [wo die Datei gespeichert werden soll](/docs/de/managed-settings#deploy-a-managed-settings-file) und [welche verwaltete Quelle Claude Code verwendet](/docs/de/managed-settings#precedence-within-the-managed-tier). |1455| `managed-settings.json` | Systemebene, variiert je nach Betriebssystem | Von Unternehmen erzwungene Einstellungen, die Sie nicht überschreiben können, mit Ausnahme von [engen Ausnahmen](/docs/de/settings#security-keys-where-the-stricter-value-applies). Siehe [wo die Datei gespeichert werden soll](/docs/de/managed-settings#deploy-a-managed-settings-file) und [welche verwaltete Quelle Claude Code verwendet](/docs/de/managed-settings#precedence-within-the-managed-tier). |

1456| `CLAUDE.local.md` | Projektstammverzeichnis | Ihre privaten Voreinstellungen für dieses Projekt, geladen zusammen mit CLAUDE.md. Erstellen Sie es manuell und fügen Sie es zu `.gitignore` hinzu. |1456| `CLAUDE.local.md` | Projektstammverzeichnis | Ihre privaten Voreinstellungen für dieses Projekt, geladen zusammen mit CLAUDE.md. Erstellen Sie es manuell und fügen Sie es zu `.gitignore` hinzu. |

1457| `AGENTS.md` | Projektstammverzeichnis, `.claude/` oder ein beliebiges Verzeichnis | Projektanweisungen, die Sie für KI-Codierungs-Agenten schreiben. Claude Code kann [sie laden](/docs/de/memory#agents-md) eigenständig oder zusammen mit `CLAUDE.md`. |1457| `AGENTS.md` | Projektstammverzeichnis, `.claude/` oder ein beliebiges Verzeichnis | Projektanweisungen, die Sie für KI-Codierungs-Agenten schreiben. Claude Code kann [sie laden](/docs/de/memory#agents-md) eigenständig oder zusammen mit `CLAUDE.md`. |

1458| Installierte Plugins | `~/.claude/plugins` | Geklonte Marketplaces, installierte Plugin-Versionen, der `installed_plugins.json`-Installationsdatensatz und Pro-Plugin-Daten, verwaltet durch `claude plugin`-Befehle. Plugins [synchronisiert von Ihrem claude.ai-Konto](/docs/de/plugins-reference#synced-plugins) werden in `~/.claude/plugins/synced/` heruntergeladen. Für ein Plugin, das von einem Marketplace mit [`command`-Quelle](/docs/de/plugin-marketplaces#command-sources) im Link-Modus installiert wurde, speichert Claude Code hier Links statt einer Kopie, und die Dateien des Plugins bleiben in dem Verzeichnis, das der Befehl ausgibt. Ein `command`-Quelle erfordert Claude Code v2.1.229 oder später. Ein Plugin, das nach relativem Pfad in einem lokalen Marketplace aufgelistet ist, wird auch [an Ort und Stelle geladen](/docs/de/plugins-reference#plugin-caching-and-file-resolution) aus seinem Quellverzeichnis statt aus einer Cache-Kopie. Siehe [Plugin-Caching](/docs/de/plugins-reference#plugin-caching-and-file-resolution) für die Bereinigung verwaister Versionen. |1458| Installierte Plugins | `~/.claude/plugins` | Geklonte Marketplaces, installierte Plugin-Versionen, der `installed_plugins.json`-Installationsdatensatz und Pro-Plugin-Daten, verwaltet durch `claude plugin`-Befehle. Plugins [synchronisiert von Ihrem claude.ai-Konto](/docs/de/plugins/loading#synced-plugins) werden in `~/.claude/plugins/synced/` heruntergeladen. Für ein Plugin, das von einem Marketplace mit [`command`-Quelle](/docs/de/plugins/marketplace-reference#command-plugin-source) im Link-Modus installiert wurde, speichert Claude Code hier Links statt einer Kopie, und die Dateien des Plugins bleiben in dem Verzeichnis, das der Befehl ausgibt. Ein `command`-Quelle erfordert Claude Code v2.1.229 oder später. Ein Plugin, das nach relativem Pfad in einem lokalen Marketplace aufgelistet ist, wird auch [an Ort und Stelle geladen](/docs/de/plugins/loading#find-plugins-on-disk) aus seinem Quellverzeichnis statt aus einer Cache-Kopie. Siehe [Plugin-Caching](/docs/de/plugins/loading#find-plugins-on-disk) für die Bereinigung verwaister Versionen. |

1459 1459 

1460`~/.claude` enthält auch Daten, die Claude Code während der Arbeit schreibt: Transkripte, Prompt-Verlauf, Datei-Snapshots, Caches und Logs. Siehe [Anwendungsdaten](#application-data) unten.1460`~/.claude` enthält auch Daten, die Claude Code während der Arbeit schreibt: Transkripte, Prompt-Verlauf, Datei-Snapshots, Caches und Logs. Siehe [Anwendungsdaten](#application-data) unten.

1461 1461 


1529| `output-styles/*.md` | `name`, `description`, `keep-coding-instructions`, `force-for-plugin` | [Ausgabestil-Frontmatter](/docs/de/output-styles#frontmatter) |1529| `output-styles/*.md` | `name`, `description`, `keep-coding-instructions`, `force-for-plugin` | [Ausgabestil-Frontmatter](/docs/de/output-styles#frontmatter) |

1530| `rules/*.md` | `paths` | [Regel-Frontmatter](/docs/de/memory#rules-frontmatter-reference) |1530| `rules/*.md` | `paths` | [Regel-Frontmatter](/docs/de/memory#rules-frontmatter-reference) |

1531 1531 

1532Agenten, die in einem [Plugin](/docs/de/plugins-reference#plugin-agent-frontmatter) ausgeliefert werden, berücksichtigen eine Teilmenge der Subagenten-Felder.1532Agenten, die in einem [Plugin](/docs/de/plugins/components#agents) ausgeliefert werden, berücksichtigen eine Teilmenge der Subagenten-Felder.

1533 1533 

1534<h2 id="troubleshoot-configuration">1534<h2 id="troubleshoot-configuration">

1535 Fehlerbehebung bei der Konfiguration1535 Fehlerbehebung bei der Konfiguration


1568| `feedback-bundles/` | Redigierte Transkript-Archive, die von `/feedback` auf Drittanbieter-Plattformen oder wenn keine Anthropic-Anmeldedaten konfiguriert sind geschrieben werden, um an Ihr Anthropic-Kontoteam gesendet zu werden |1568| `feedback-bundles/` | Redigierte Transkript-Archive, die von `/feedback` auf Drittanbieter-Plattformen oder wenn keine Anthropic-Anmeldedaten konfiguriert sind geschrieben werden, um an Ihr Anthropic-Kontoteam gesendet zu werden |

1569| `feedback/drafts/` | Warteschlange [Claude-entworfener Feedback](/docs/de/tools-reference#sendfeedback-tool-behavior) in Erwartung Ihrer Überprüfung in `/feedback`. Bereinigt nach `cleanupPeriodDays` oder 30 Tagen, je nachdem, welcher Wert kürzer ist. Wenn die Warteschlange ihre Grenze von 10 Entwürfen erreicht, löscht Claude Code den ältesten Entwurf, um Platz zu schaffen. |1569| `feedback/drafts/` | Warteschlange [Claude-entworfener Feedback](/docs/de/tools-reference#sendfeedback-tool-behavior) in Erwartung Ihrer Überprüfung in `/feedback`. Bereinigt nach `cleanupPeriodDays` oder 30 Tagen, je nachdem, welcher Wert kürzer ist. Wenn die Warteschlange ihre Grenze von 10 Entwürfen erreicht, löscht Claude Code den ältesten Entwurf, um Platz zu schaffen. |

1570| `usage-data/` | `report.html` und zeitgestempelte Report-Kopien, die von [`/insights`](/docs/de/costs#analyze-your-usage-patterns) geschrieben werden, plus zwischengespeicherte Pro-Sitzungs-Analysedaten, die zu ihrer Erstellung verwendet werden |1570| `usage-data/` | `report.html` und zeitgestempelte Report-Kopien, die von [`/insights`](/docs/de/costs#analyze-your-usage-patterns) geschrieben werden, plus zwischengespeicherte Pro-Sitzungs-Analysedaten, die zu ihrer Erstellung verwendet werden |

1571| `skills/.trash/`, `plugins/.trash/` | [Skills](/docs/de/skills#how-synced-skills-behave) und [Plugins](/docs/de/plugins-reference#synced-plugins), die die claude.ai-Synchronisierung entfernt hat, z. B. nachdem Sie eine auf claude.ai ausgeschaltet haben oder die Synchronisierung beendet haben. Die Dateien bleiben hier, damit Sie sie wiederherstellen können, bis der Durchlauf sie löscht |1571| `skills/.trash/`, `plugins/.trash/` | [Skills](/docs/de/skills#how-synced-skills-behave) und [Plugins](/docs/de/plugins/loading#synced-plugins), die die claude.ai-Synchronisierung entfernt hat, z. B. nachdem Sie eine auf claude.ai ausgeschaltet haben oder die Synchronisierung beendet haben. Die Dateien bleiben hier, damit Sie sie wiederherstellen können, bis der Durchlauf sie löscht |

1572| `todos/`, `statsig/`, `logs/` | Legacy-Verzeichnisse aus älteren Versionen. Nicht mehr geschrieben. Die Bereinigung entfernt deren Inhalte und dann das leere Verzeichnis. |1572| `todos/`, `statsig/`, `logs/` | Legacy-Verzeichnisse aus älteren Versionen. Nicht mehr geschrieben. Die Bereinigung entfernt deren Inhalte und dann das leere Verzeichnis. |

1573 1573 

1574Sitzungsdateien in `sessions/`, automatisches Memory und Claude Desktop und Cowork Transkripte folgen jeweils ihrer eigenen Aufbewahrungsregel:1574Sitzungsdateien in `sessions/`, automatisches Memory und Claude Desktop und Cowork Transkripte folgen jeweils ihrer eigenen Aufbewahrungsregel:


1678Sie können auch jeden der oben genannten Anwendungsdaten-Pfade manuell löschen, abgesehen von den [Zustandsdateien zum Behalten](#state-files-to-keep). Neue Sitzungen sind nicht betroffen. Die folgende Tabelle zeigt, was Sie für vergangene Sitzungen verlieren.1678Sie können auch jeden der oben genannten Anwendungsdaten-Pfade manuell löschen, abgesehen von den [Zustandsdateien zum Behalten](#state-files-to-keep). Neue Sitzungen sind nicht betroffen. Die folgende Tabelle zeigt, was Sie für vergangene Sitzungen verlieren.

1679 1679 

1680| Löschen | Sie verlieren |1680| Löschen | Sie verlieren |

1681| -------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |1681| -------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

1682| `~/.claude/projects/` | Fortsetzen, Fortfahren und Zurückspulen für vergangene Sitzungen, und automatisches Memory für jedes Projekt |1682| `~/.claude/projects/` | Fortsetzen, Fortfahren und Zurückspulen für vergangene Sitzungen, und automatisches Memory für jedes Projekt |

1683| `~/.claude/history.jsonl` | Up-Arrow-Prompt-Abruf, `Ctrl+R` Verlaufssuche und `!` Shell-Befehl-Vervollständigung |1683| `~/.claude/history.jsonl` | Up-Arrow-Prompt-Abruf, `Ctrl+R` Verlaufssuche und `!` Shell-Befehl-Vervollständigung |

1684| `~/.claude/paste-cache/` | Eingefügter Text in abgerufenen Prompts; siehe [großen Inhalt einfügen](/docs/de/terminal-config#paste-large-content) |1684| `~/.claude/paste-cache/` | Eingefügter Text in abgerufenen Prompts; siehe [großen Inhalt einfügen](/docs/de/terminal-config#paste-large-content) |


1692| `~/.claude/cache/changelog.md` | Nichts. Im Hintergrund aktualisiert. |1692| `~/.claude/cache/changelog.md` | Nichts. Im Hintergrund aktualisiert. |

1693| `~/.claude/policy-limits.json` | Nichts. Automatisch aktualisiert. |1693| `~/.claude/policy-limits.json` | Nichts. Automatisch aktualisiert. |

1694| `~/.claude/tasks/` | Aufgabenlisten, die eine fortgesetzte Sitzung aufgreifen würde |1694| `~/.claude/tasks/` | Aufgabenlisten, die eine fortgesetzte Sitzung aufgreifen würde |

1695| `~/.claude/skills/.trash/`, `~/.claude/plugins/.trash/` | Die Möglichkeit, [synchronisierte Skills](/docs/de/skills#how-synced-skills-behave) und [synchronisierte Plugins](/docs/de/plugins-reference#synced-plugins) wiederherzustellen, die Claude Code entfernt hat |1695| `~/.claude/skills/.trash/`, `~/.claude/plugins/.trash/` | Die Möglichkeit, [synchronisierte Skills](/docs/de/skills#how-synced-skills-behave) und [synchronisierte Plugins](/docs/de/plugins/loading#synced-plugins) wiederherzustellen, die Claude Code entfernt hat |

1696| `~/.claude/debug/`, `~/.claude/plans/`, `~/.claude/session-env/`, `~/.claude/shell-snapshots/`, `~/.claude/backups/` | Nichts für Benutzer sichtbar |1696| `~/.claude/debug/`, `~/.claude/plans/`, `~/.claude/session-env/`, `~/.claude/shell-snapshots/`, `~/.claude/backups/` | Nichts für Benutzer sichtbar |

1697| `~/.claude/todos/`, `~/.claude/statsig/`, `~/.claude/logs/`, `~/.claude/image-cache/` | Nichts. Legacy-Verzeichnisse nicht von aktuellen Versionen geschrieben. |1697| `~/.claude/todos/`, `~/.claude/statsig/`, `~/.claude/logs/`, `~/.claude/image-cache/` | Nichts. Legacy-Verzeichnisse nicht von aktuellen Versionen geschrieben. |

1698 1698 

Details

242 242 

243Claude Code führt diesen Befehl auch beim Start aus, wenn es Ihre vorhandenen AWS-Anmeldedaten nicht validieren kann, und zeigt die Ausgabe des Befehls in einem `Authentication`-Panel an, bis die Anmeldung abgeschlossen ist.243Claude Code führt diesen Befehl auch beim Start aus, wenn es Ihre vorhandenen AWS-Anmeldedaten nicht validieren kann, und zeigt die Ausgabe des Befehls in einem `Authentication`-Panel an, bis die Anmeldung abgeschlossen ist.

244 244 

245Mit konfiguriertem `awsAuthRefresh` führen Sie `/login` aus, wählen **3rd-party platform** aus und wählen dann **Claude Platform on AWS · refresh credentials** unter **Using 3rd-party platforms** aus. Claude Code führt den konfigurierten Befehl aus und liest Ihre AWS-Anmeldedaten erneut, ohne einen Neustart durchzuführen. Diese Option erfordert Claude Code v2.1.186 oder später.245Mit konfiguriertem `awsAuthRefresh` führen Sie `/login` aus, wählen **3rd-party platform** aus und wählen dann **Claude Platform on AWS · refresh credentials** unter **Using 3rd-party platforms** aus. Claude Code führt den konfigurierten Befehl aus und liest Ihre AWS-Anmeldedaten erneut, ohne einen Neustart durchzuführen.

246 246 

247**Option B: Workspace-API-Schlüssel**247**Option B: Workspace-API-Schlüssel**

248 248 

claude-projects.md +47 −45

Details

10 Projekte befinden sich in der öffentlichen Beta auf Pro- und Max-Plänen und werden schrittweise eingeführt, beginnend mit Konten, die [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) verwendet haben und keine vorhandenen Projekte in claude.ai-Chat oder Cowork haben. Sie sind noch nicht auf Team- oder Enterprise-Plänen verfügbar. Wenn **Projekte** nicht in der Seitenleiste unter [claude.ai/code](https://claude.ai/code) oder auf der Registerkarte „Code" der [Desktop-App](/docs/de/desktop) angezeigt wird, hat die Einführung Ihr Konto noch nicht erreicht, und Sie können sich [auf die Warteliste eintragen](https://claude.com/form/projects). [Agenten parallel ausführen](/docs/de/agents) listet auf, was Sie in der Zwischenzeit verwenden können.10 Projekte befinden sich in der öffentlichen Beta auf Pro- und Max-Plänen und werden schrittweise eingeführt, beginnend mit Konten, die [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) verwendet haben und keine vorhandenen Projekte in claude.ai-Chat oder Cowork haben. Sie sind noch nicht auf Team- oder Enterprise-Plänen verfügbar. Wenn **Projekte** nicht in der Seitenleiste unter [claude.ai/code](https://claude.ai/code) oder auf der Registerkarte „Code" der [Desktop-App](/docs/de/desktop) angezeigt wird, hat die Einführung Ihr Konto noch nicht erreicht, und Sie können sich [auf die Warteliste eintragen](https://claude.com/form/projects). [Agenten parallel ausführen](/docs/de/agents) listet auf, was Sie in der Zwischenzeit verwenden können.

11</Note>11</Note>

12 12 

13Ein Projekt ist ein laufendes Gespräch, in dem Claude einen Strom zusammenhängender Arbeiten für Sie koordiniert. Sie teilen ihm mit, was getan werden muss, und er startet einen Thread für jede Aufgabe. Jeder Thread ist eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web): Claude Code, das in der Cloud statt auf Ihrem Computer ausgeführt wird. Threads laufen parallel und werden fortgesetzt, nachdem Sie den Laptop schließen, und Sie können sie von Ihrem Telefon aus überprüfen und steuern.13Ein Projekt ist ein laufendes Gespräch, in dem Claude einen Strom zusammenhängender Arbeiten für Sie koordiniert. Sie teilen ihm mit, was getan werden muss, und er startet einen Thread für jede Aufgabe.

14 

15Jeder Thread ist normalerweise eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web): Claude Code, das in der Cloud statt auf Ihrem Computer ausgeführt wird. Wenn eine Aufgabe etwas benötigt, das nur Ihr Computer hat, können Sie Claude bitten, diesen Thread stattdessen auf Ihrem Computer durch [Remote Control](/docs/de/remote-control) auszuführen. Threads laufen parallel und Sie können sie von Ihrem Telefon aus überprüfen und steuern. Cloud-Threads laufen weiter, nachdem Sie den Laptop schließen.

14 16 

15Ohne ein Projekt bedeutet das Ausführen mehrerer Sitzungen, dass Sie die Koordination selbst übernehmen: Sie entscheiden, woran jede arbeitet, wiederholen denselben Hintergrund am Anfang jeder Sitzung und überprüfen, welche abgeschlossen ist oder eine Antwort benötigt. Mit einem Projekt tun Sie stattdessen:17Ohne ein Projekt bedeutet das Ausführen mehrerer Sitzungen, dass Sie die Koordination selbst übernehmen: Sie entscheiden, woran jede arbeitet, wiederholen denselben Hintergrund am Anfang jeder Sitzung und überprüfen, welche abgeschlossen ist oder eine Antwort benötigt. Mit einem Projekt tun Sie stattdessen:

16 18 

17* **Arbeiten an einen Ort senden**: Fügen Sie einen Fehlerbericht, eine Stack-Trace oder eine Liste von Aufgaben in das Gespräch ein, wann immer eine auftaucht. Claude startet einen Thread für jede Arbeit oder leitet sie an den Thread weiter, der bereits in diesem Bereich arbeitet, und beantwortet schnelle Fragen direkt.19* **Arbeiten an einen Ort senden**: Fügen Sie einen Fehlerbericht, eine Stack-Trace oder eine Liste von Aufgaben in das Gespräch ein, wann immer eine auftaucht. Claude startet einen Thread für jede Arbeit oder leitet sie an den Thread weiter, der bereits in diesem Bereich arbeitet, und beantwortet schnelle Fragen direkt.

18* **Kontext einmal festlegen**: Jeder neue Thread beginnt mit den Repositorys, Anweisungen und dem Speicher des Projekts, sodass eine Regel, die Sie einmal angeben, wie z. B. welcher Branch angestrebt werden soll, alle erreicht.20* **Kontext einmal festlegen**: Jeder neue Thread beginnt mit den Anweisungen des Projekts, sodass eine Regel, die Sie einmal angeben, wie z. B. welcher Branch angestrebt werden soll, alle erreicht.

19* **Weggehen und zur abgeschlossenen Arbeit zurückkehren**: Wenn Sie eine Stunde später oder am nächsten Morgen zurückkommen, zeigt der Bereich **Übersicht** an, welche Threads abgeschlossen sind, welche Pull Requests zur Überprüfung bereit sind und welcher Thread auf Ihre Antwort wartet.21* **Weggehen und zur abgeschlossenen Arbeit zurückkehren**: Wenn Sie eine Stunde später oder am nächsten Morgen zurückkommen, zeigt der Bereich **Übersicht** an, welche Threads abgeschlossen sind, welche Pull Requests zur Überprüfung bereit sind und welcher Thread auf Ihre Antwort wartet.

20 22 

21Wenn Sie bereits wissen, welche Arbeiten ein Projekt ausführen soll, gehen Sie direkt zu [Projekt erstellen](#create-a-project).23Wenn Sie bereits wissen, welche Arbeiten ein Projekt ausführen soll, gehen Sie direkt zu [Projekt erstellen](#create-a-project).


37 Wann etwas anderes besser passt39 Wann etwas anderes besser passt

38</h3>40</h3>

39 41 

40Threads funktionieren auf GitHub-Repositories und auf Dateien, Ordnern und Google Drive-Ordnern, die Sie in das Projekt hochladen, nicht auf Dateien oder Tools, die nur auf Ihrem Computer vorhanden sind. Etwas anderes passt besser in diesen Fällen:42Cloud-Threads funktionieren auf GitHub-Repositories und auf Dateien, Ordnern und Google Drive-Ordnern, die Sie in das Projekt hochladen, nicht auf Dateien oder Tools, die nur auf Ihrem Computer vorhanden sind. Wenn eine Aufgabe Ihren Computer benötigt, bitten Sie Claude, seinen Thread dort über [Remote Control](/docs/de/remote-control) auszuführen. [Einschränkungen](#limitations) listet auf, was dafür erforderlich ist. Etwas anderes passt besser in diesen Fällen:

41 43 

42* **Eine Aufgabe, die in eine Sitzung passt**: „Reparieren Sie den instabilen Login-Test." Starten Sie selbst eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web).44* **Eine Aufgabe, die in eine Sitzung passt**: „Reparieren Sie den instabilen Login-Test." Starten Sie selbst eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web).

43* **Arbeit, die Tools oder Services benötigt, die nur Ihr Computer erreichen kann**: Eine lokale Datenbank, einen Geräteemulator, eine API hinter Ihrem VPN. Verwenden Sie eine lokale Sitzung oder [Agent-Ansicht](/docs/de/agent-view), um mehrere gleichzeitig auszuführen. Wenn die Arbeit nur lokale Dateien benötigt, laden Sie sie stattdessen in das Projekt hoch.45* **Arbeit, bei der jede Aufgabe Ihren Computer benötigt**: eine lokale Datenbank, einen Geräteemulator oder eine API hinter Ihrem VPN. Verwenden Sie eine lokale Sitzung oder [Agent-Ansicht](/docs/de/agent-view), um mehrere gleichzeitig auszuführen. Wenn die Arbeit nur lokale Dateien benötigt, laden Sie sie stattdessen in das Projekt hoch.

44* **Eine Aufgabe, die sich nach einem Zeitplan ohne Gespräch wiederholt**: „Veröffentlichen Sie jeden Montag einen Abhängigkeitsbericht." Erstellen Sie eine [Routine](/docs/de/routines) für sich allein.46* **Eine Aufgabe, die sich nach einem Zeitplan ohne Gespräch wiederholt**: „Veröffentlichen Sie jeden Montag einen Abhängigkeitsbericht." Erstellen Sie eine [Routine](/docs/de/routines) für sich allein.

45* **Mehrere Personen geben Claude Arbeit und lenken sie zusammen in einem Slack-Kanal**: Siehe [Claude Tag](https://claude.com/docs/claude-tag/overview).47* **Mehrere Personen geben Claude Arbeit und lenken sie zusammen in einem Slack-Kanal**: Siehe [Claude Tag](https://claude.com/docs/claude-tag/overview).

46 48 


53Ein Projekt ist eine koordinierende Konversation mit Claude plus die Threads, die es startet, um die Arbeit zu erledigen. Dies sind seine Teile:55Ein Projekt ist eine koordinierende Konversation mit Claude plus die Threads, die es startet, um die Arbeit zu erledigen. Dies sind seine Teile:

54 56 

55* **Die Projektkonversation**: eine lange laufende Sitzung, in der Claude als Koordinator fungiert. Sie nimmt das auf, was Sie senden, entscheidet, was zu einem Thread wird, und verfolgt jeden Thread, den sie gestartet hat. Sie sieht, was Threads zurückberichten, nicht jeden Schritt, den sie unternehmen.57* **Die Projektkonversation**: eine lange laufende Sitzung, in der Claude als Koordinator fungiert. Sie nimmt das auf, was Sie senden, entscheidet, was zu einem Thread wird, und verfolgt jeden Thread, den sie gestartet hat. Sie sieht, was Threads zurückberichten, nicht jeden Schritt, den sie unternehmen.

56* **Threads**: die Worker. Jeder ist eine separate [Cloud-Sitzung](/docs/de/claude-code-on-the-web) mit seinem eigenen Kontextfenster, die ein Stück Arbeit in ihrem eigenen Branch erledigt, einen Pull Request öffnet, wenn die Arbeit dies erfordert, und der Konversation Bericht erstattet, wenn sie fertig ist.58* **Threads**: die Worker. Jeder ist eine separate Sitzung mit seinem eigenen Kontextfenster, die ein Stück Arbeit erledigt und der Konversation Bericht erstattet, wenn sie fertig ist. Ein Cloud-Thread arbeitet in seinem eigenen Branch und öffnet einen Pull Request, wenn die Arbeit dies erfordert.

57* **Was jeder Thread mit sich bringt**:59* **Was jeder Cloud-Thread startet mit**:

58 * Die Repositories und Dateien des Projekts, plus seine [Anweisungen und Speicher](#give-a-project-standing-context)60 * Die Repositories und Dateien des Projekts, plus seine [Anweisungen und Memory](#give-a-project-standing-context)

59 * Die `CLAUDE.md` und Skills in [jedem der Repositories des Projekts](#what-threads-pick-up-from-your-repositories), und in einem Projekt mit einem Repository auch die Berechtigungsregeln und Hooks dieses Repositories61 * Die `CLAUDE.md` und Skills in [jedem der Repositories des Projekts](#what-threads-pick-up-from-your-repositories), und in einem Projekt mit einem Repository auch die Berechtigungsregeln und Hooks dieses Repositories

60 * Die [Connectors](#get-skills-plugins-connectors-and-tools-into-threads) auf Ihrem claude.ai-Konto62 * Die [Connectors](#get-skills-plugins-connectors-and-tools-into-threads) auf Ihrem claude.ai-Konto

61 * Eine [Cloud-Umgebung](#choose-an-environment-for-threads), die seinen Netzwerkzugriff, Umgebungsvariablen, API-Anmeldedaten und installierte Tools festlegt63 * Eine [Cloud-Umgebung](#choose-an-environment-for-threads), die seinen Netzwerkzugriff, Umgebungsvariablen, API-Anmeldedaten und installierte Tools festlegt

62* **Der Übersichtsbereich**: wo Sie [alle Threads auf einmal sehen](#see-what-needs-you-in-overview) und welche von ihnen Sie benötigen. Seine anderen Registerkarten sind **Library** für die Dateien, die Sie hinzugefügt haben, und die Dateien, die Threads produziert haben, **Pull requests** für die, die Threads geöffnet haben, und **Routines** für geplante Arbeit im Projekt.64* **Der Übersichtsbereich**: wo Sie [alle Threads auf einmal sehen](#see-what-needs-you-in-overview) und welche von ihnen Sie benötigen. Seine anderen Registerkarten sind **Library** für die Dateien, die Sie hinzugefügt haben, und die Dateien, die Threads produziert haben, **Pull requests** für die, die Threads geöffnet haben, und **Routines** für geplante Arbeit im Projekt.

63 65 

64Threads wählen nichts aus dem Claude Code-Setup auf Ihrem eigenen Computer auf. [Bringen Sie Skills, Plugins, Connectors und Tools in Threads](#get-skills-plugins-connectors-and-tools-into-threads) behandelt, wie Sie ihnen geben, was ihnen sonst fehlen würde.66Cloud-Threads übernehmen nichts aus dem Claude Code-Setup auf Ihrem eigenen Computer. [Get skills, plugins, connectors, and tools into threads](#get-skills-plugins-connectors-and-tools-into-threads) behandelt, wie Sie ihnen das geben, was ihnen sonst fehlen würde.

65 67 

66Hier ist, wie diese Teile verbunden sind, von Ihnen durch die Konversation zu den Threads, die die Arbeit erledigen, wobei **Overview** ihren Zustand verfolgt:68Hier ist, wie diese Teile verbunden sind, von Ihnen durch die Konversation zu den Threads, die die Arbeit erledigen, mit **Overview**, das ihren Zustand verfolgt:

67 69 

68<Frame>70<Frame>

69 <img src="https://mintcdn.com/claude-code/e8CLbxM17eD7cAiv/images/claude-projects-overview.svg?fit=max&auto=format&n=e8CLbxM17eD7cAiv&q=85&s=dbf446f69f0bbdb9961d21af207cb93b" className="dark:hidden" alt="Diagramm eines Projekts. Sie schreiben in der Projektkonversation, wo Claude antwortet oder einen Thread startet. Jeder Thread ist eine Cloud-Sitzung, die an ihrem eigenen Branch und Pull Request arbeitet. Der Übersichtsbereich listet Threads nach Zustand auf, z. B. bereit zur Überprüfung, wartet auf Sie und arbeitet." width="600" height="250" data-path="images/claude-projects-overview.svg" />71 <img src="https://mintcdn.com/claude-code/e8CLbxM17eD7cAiv/images/claude-projects-overview.svg?fit=max&auto=format&n=e8CLbxM17eD7cAiv&q=85&s=dbf446f69f0bbdb9961d21af207cb93b" className="dark:hidden" alt="Diagramm eines Projekts. Sie schreiben in der Projektkonversation, wo Claude antwortet oder einen Thread startet. Jeder Cloud-Thread arbeitet in seinem eigenen Branch und Pull Request. Der Übersichtsbereich listet Threads nach Zustand auf, z. B. bereit zur Überprüfung, wartet auf Sie und arbeitet." width="600" height="250" data-path="images/claude-projects-overview.svg" />

70 72 

71 <img src="https://mintcdn.com/claude-code/e8CLbxM17eD7cAiv/images/claude-projects-overview-dark.svg?fit=max&auto=format&n=e8CLbxM17eD7cAiv&q=85&s=549a5ba9fea8433729babc37a1f6e9c8" className="hidden dark:block" alt="Diagramm eines Projekts. Sie schreiben in der Projektkonversation, wo Claude antwortet oder einen Thread startet. Jeder Thread ist eine Cloud-Sitzung, die an ihrem eigenen Branch und Pull Request arbeitet. Der Übersichtsbereich listet Threads nach Zustand auf, z. B. bereit zur Überprüfung, wartet auf Sie und arbeitet." width="600" height="250" data-path="images/claude-projects-overview-dark.svg" />73 <img src="https://mintcdn.com/claude-code/e8CLbxM17eD7cAiv/images/claude-projects-overview-dark.svg?fit=max&auto=format&n=e8CLbxM17eD7cAiv&q=85&s=549a5ba9fea8433729babc37a1f6e9c8" className="hidden dark:block" alt="Diagramm eines Projekts. Sie schreiben in der Projektkonversation, wo Claude antwortet oder einen Thread startet. Jeder Cloud-Thread arbeitet in seinem eigenen Branch und Pull Request. Der Übersichtsbereich listet Threads nach Zustand auf, z. B. bereit zur Überprüfung, wartet auf Sie und arbeitet." width="600" height="250" data-path="images/claude-projects-overview-dark.svg" />

72</Frame>74</Frame>

73 75 

74<h2 id="create-a-project">76<h2 id="create-a-project">


89Bevor Sie ein Projekt erstellen, überprüfen Sie Ihren Plan, Ihre GitHub-Einrichtung und was die Arbeit erreichen muss:91Bevor Sie ein Projekt erstellen, überprüfen Sie Ihren Plan, Ihre GitHub-Einrichtung und was die Arbeit erreichen muss:

90 92 

91* **Plan**: Sie sind auf Pro oder Max und **Projekte** werden in Ihrer Seitenleiste angezeigt.93* **Plan**: Sie sind auf Pro oder Max und **Projekte** werden in Ihrer Seitenleiste angezeigt.

92* **GitHub, wenn das Projekt an Code arbeitet**: Ihr Code ist auf github.com statt auf GitHub Enterprise Server, GitLab oder Bitbucket, Ihr verbundenes GitHub-Konto hat Push-Zugriff darauf, und die Claude GitHub App ist darauf installiert. Wenn Sie GitHub mit [`/web-setup`](/docs/de/web-quickstart#connect-from-your-terminal) verbunden haben, ermöglicht dieses Token Ihren anderen Cloud-Sitzungen, ein Repository zu erreichen, reicht aber nicht für Projekt-Threads aus, die die Claude GitHub App benötigen. [Richten Sie GitHub-Zugriff ein](#set-up-github-access) hat die Schritte.94* **GitHub, wenn das Projekt an Code arbeitet**: Ihr Code ist auf github.com statt auf GitHub Enterprise Server, GitLab oder Bitbucket, Ihr verbundenes GitHub-Konto hat Push-Zugriff darauf, und die Claude GitHub App ist darauf installiert. Wenn Sie GitHub mit [`/web-setup`](/docs/de/web-quickstart#connect-from-your-terminal) verbunden haben, ermöglicht dieses Token Ihren anderen Cloud-Sitzungen, ein Repository zu erreichen, reicht aber nicht für Projekt-Cloud-Threads aus, die die Claude GitHub App benötigen. [Richten Sie GitHub-Zugriff ein](#set-up-github-access) hat die Schritte.

93* **Netzwerk, Anmeldedaten und Tools**: Diese stammen aus der [Cloud-Umgebung](#choose-an-environment-for-threads) des Projekts. Die Standardumgebung erreicht bereits [häufige Paket-Registries](/docs/de/cloud-environments#default-allowed-domains), überprüfen Sie dies also nur, wenn die Arbeit andere Domains, ein Geheimnis oder ein Tool benötigt, das nicht vorinstalliert ist. Wenn die Arbeit einen MCP-Server benötigt, überprüfen Sie, dass er als verbunden in Ihren [claude.ai-Connectors](https://claude.ai/customize/connectors) angezeigt wird.95* **Netzwerk, Anmeldedaten und Tools**: Für Cloud-Threads stammen diese aus der [Cloud-Umgebung](#choose-an-environment-for-threads) des Projekts. Die Standardumgebung erreicht bereits [häufige Paket-Registries](/docs/de/cloud-environments#default-allowed-domains), überprüfen Sie dies also nur, wenn die Arbeit andere Domains, ein Geheimnis oder ein Tool benötigt, das nicht vorinstalliert ist. Wenn die Arbeit einen MCP-Server benötigt, überprüfen Sie, dass er als verbunden in Ihren [claude.ai-Connectors](https://claude.ai/customize/connectors) angezeigt wird.

94 96 

95<h3 id="start-a-new-project-from-scratch">97<h3 id="start-a-new-project-from-scratch">

96 Starten Sie ein neues Projekt von Grund auf98 Starten Sie ein neues Projekt von Grund auf


279 Einem Projekt Kontext geben281 Einem Projekt Kontext geben

280</h2>282</h2>

281 283 

282Projektgedächtnis, Projektanweisungen und die Repositories, Dateien und Umgebung des Projekts tragen Kontext über Threads hinweg. Sie legen jedes einmal fest und es gilt für jeden neuen Thread.284Projektgedächtnis, Projektanweisungen und die Repositories, Dateien und Umgebung des Projekts tragen Kontext über Threads hinweg. Sie legen jedes einmal fest.

283 285 

284| Kontext | Was es trägt | Wie Sie es festlegen |286| Kontext | Was es trägt | Wie Sie es festlegen |

285| :--------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |287| :--------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

286| Projektgedächtnis | Notizen, die Claude über das Projekt führt, wie Anforderungen, Entscheidungen und Fallstricke, gespeichert als Dateien. Jeder Thread liest die Indexdatei `MEMORY.md` beim Start und öffnet die anderen Dateien, wenn er sie benötigt | Bitten Sie Claude im Projektgespräch oder in einem beliebigen Thread, sich an eine Anforderung, eine Entscheidung oder einen Fallstrick zu erinnern oder einen zu vergessen. Lesen, bearbeiten und löschen Sie die Dateien in **Projekteinstellungen > Gedächtnis** |288| Projektgedächtnis | Notizen, die Claude über das Projekt führt, wie Anforderungen, Entscheidungen und Fallstricke, gespeichert als Dateien. Jeder Cloud-Thread liest die Indexdatei `MEMORY.md` beim Start und öffnet die anderen Dateien, wenn er sie benötigt | Bitten Sie Claude im Projektgespräch oder in einem beliebigen Cloud-Thread, sich an eine Anforderung, eine Entscheidung oder einen Fallstrick zu erinnern oder einen zu vergessen. Lesen, bearbeiten und löschen Sie die Dateien in **Projekteinstellungen > Gedächtnis** |

287| Projektanweisungen | Text, der an jeden neuen Thread und an Claude im Projektgespräch gesendet wird, bis zu 16.000 Zeichen. [Projektanweisungen schreiben](#write-project-instructions) behandelt, was Sie darin einfügen sollten | **Projekteinstellungen > Gedächtnis > Projektanweisungen**, oder bitten Sie Claude, die Anweisungen zu ändern |289| Projektanweisungen | Text, der an jeden neuen Thread und an Claude im Projektgespräch gesendet wird, bis zu 16.000 Zeichen. [Projektanweisungen schreiben](#write-project-instructions) behandelt, was Sie darin einfügen sollten | **Projekteinstellungen > Gedächtnis > Projektanweisungen**, oder bitten Sie Claude, die Anweisungen zu ändern |

288| Repositories, Dateien und Umgebung | Die Repositories, die jeder Thread klont, die Ordner und Dateien, die jeder Thread unter `/mnt/project-files` lesen kann, und die Cloud-Umgebung, in der Threads ausgeführt werden | Repositories und Umgebung in **Projekteinstellungen > Umgebung**, oder bitten Sie Claude im Gespräch, ein Repository zum Projekt hinzuzufügen. Dateien und Ordner von **Hinzufügen** auf der Registerkarte **Bibliothek** in **Übersicht** |290| Repositories, Dateien und Umgebung | Die Repositories, die jeder Cloud-Thread klont, die Ordner und Dateien, die er unter `/mnt/project-files` lesen kann, und die Cloud-Umgebung, in der er ausgeführt wird | Repositories und Umgebung in **Projekteinstellungen > Umgebung**, oder bitten Sie Claude im Gespräch, ein Repository zum Projekt hinzuzufügen. Dateien und Ordner von **Hinzufügen** auf der Registerkarte **Bibliothek** in **Übersicht** |

289 291 

290**Projekteinstellungen > Gedächtnis** listet diese Dateien unter **Automatisches Gedächtnis** auf, da Claude sie selbst schreibt, während es im Projekt arbeitet. Sie sind getrennt vom [automatischen Gedächtnis](/docs/de/memory), das Claude Code auf Ihrem Computer führt, obwohl beide einen `MEMORY.md`-Index verwenden. Projektgedächtnis ist auch getrennt von den `CLAUDE.md`-Dateien in den Repositories des Projekts. Jeder Thread liest diese `CLAUDE.md`-Dateien immer noch aus seinem Klon beim Start, also fügen Sie Anweisungen zu einem Repository in seine `CLAUDE.md` ein und Notizen zum Projekt in das Projektgedächtnis.292**Projekteinstellungen > Gedächtnis** listet diese Dateien unter **Automatisches Gedächtnis** auf, da Claude sie selbst schreibt, während es im Projekt arbeitet. Sie sind getrennt vom [automatischen Gedächtnis](/docs/de/memory), das Claude Code auf Ihrem Computer führt, obwohl beide einen `MEMORY.md`-Index verwenden. Projektgedächtnis ist auch getrennt von den `CLAUDE.md`-Dateien in den Repositories des Projekts. Jeder Cloud-Thread liest diese `CLAUDE.md`-Dateien immer noch aus seinem Klon beim Start, also fügen Sie Anweisungen zu einem Repository in seine `CLAUDE.md` ein und Notizen zum Projekt in das Projektgedächtnis.

291 293 

292<h3 id="write-project-instructions">294<h3 id="write-project-instructions">

293 Projektanweisungen schreiben295 Projektanweisungen schreiben


312- Führen Sie keine Merges durch, erzwingen Sie keine Pushes und ändern Sie die CI-Konfiguration nicht, ohne mich im Thread zu fragen.314- Führen Sie keine Merges durch, erzwingen Sie keine Pushes und ändern Sie die CI-Konfiguration nicht, ohne mich im Thread zu fragen.

313```315```

314 316 

315Regeln zu einem Repository, wie seine Build-Befehle, gehören in die `CLAUDE.md` dieses Repositories, die jeder Thread liest, wenn das Repository Teil des Projekts ist. Sobald die Arbeit im Gange ist, wenn Sie einen Thread korrigieren, sagen Sie Claude auch, dass er die Korrektur merken soll: Sie geht in das [Projektgedächtnis](#give-a-project-standing-context) und später Threads beginnen damit.317Regeln zu einem Repository, wie seine Build-Befehle, gehören in die `CLAUDE.md` dieses Repositories, die jeder Cloud-Thread liest, wenn das Repository Teil des Projekts ist. Sobald die Arbeit im Gange ist, wenn Sie einen Thread korrigieren, sagen Sie Claude auch, dass er die Korrektur merken soll: Sie geht in das [Projektgedächtnis](#give-a-project-standing-context) und später Threads beginnen damit.

316 318 

317<h3 id="decide-which-repositories-to-add">319<h3 id="decide-which-repositories-to-add">

318 Entscheiden Sie, welche Repositories hinzugefügt werden sollen320 Entscheiden Sie, welche Repositories hinzugefügt werden sollen

319</h3>321</h3>

320 322 

321Die Repositories, die Sie zu einem Projekt hinzufügen, enthalten alles darin, ihren Code, `CLAUDE.md` und Skills, in jedem Thread. Repositories, die Sie nicht hinzufügen, sind immer noch erreichbar: Ein Thread kann eines zu sich selbst hinzufügen, wenn seine Aufgabe es benötigt. Die meisten Projekte verwenden beide:323Die Repositories, die Sie zu einem Projekt hinzufügen, enthalten alles darin, ihren Code, `CLAUDE.md` und Skills, in jedem Cloud-Thread. Repositories, die Sie nicht hinzufügen, sind immer noch erreichbar: Ein Cloud-Thread kann eines zu sich selbst hinzufügen, wenn seine Aufgabe es benötigt. Die meisten Projekte verwenden beide:

322 324 

323* **Fügen Sie es zum Projekt hinzu**, im Dialog **Neues Projekt**, in **Projekteinstellungen > Umgebung**, oder bitten Sie Claude im Gespräch, es zum Projekt hinzuzufügen. Jeder Thread von da an klont es und startet mit seiner `CLAUDE.md` und seinen Skills geladen, unabhängig davon, ob die Aufgabe es berührt. Der Wechsel von einem Repository zu mehreren ändert auch, was Threads aus der `.claude/settings.json` jedes Repositories aufgreifen; siehe [Was Threads aus Ihren Repositories aufgreifen](#what-threads-pick-up-from-your-repositories).325* **Fügen Sie es zum Projekt hinzu**, im Dialog **Neues Projekt**, in **Projekteinstellungen > Umgebung**, oder bitten Sie Claude im Gespräch, es zum Projekt hinzuzufügen. Jeder Cloud-Thread von da an klont es und startet mit seiner `CLAUDE.md` und seinen Skills geladen, unabhängig davon, ob die Aufgabe es berührt. Der Wechsel von einem Repository zu mehreren ändert auch, was Threads aus der `.claude/settings.json` jedes Repositories aufgreifen; siehe [Was Threads aus Ihren Repositories aufgreifen](#what-threads-pick-up-from-your-repositories).

324* **Lassen Sie es weg und lassen Sie Threads es hinzufügen, wenn nötig.** Ein Thread, dessen Aufgabe ein Repository benötigt, das das Projekt nicht hat, kann es zu sich selbst hinzufügen, und eine Notiz im Thread sagt, dass es nur zu diesem Thread hinzugefügt wurde. Der Klon findet teilweise durch die Aufgabe statt, also waren die `CLAUDE.md` und Skills dieses Repositories nicht vorhanden, als der Thread startete. Der nächste Thread startet wieder ohne ihn. Ein Repository, das ein Thread hinzufügt, benötigt die gleichen [Voraussetzungen](#check-the-prerequisites) wie ein Projekt-Repository: die Claude GitHub App ist darauf installiert und Sie haben Push-Zugriff von Ihrem GitHub-Konto.326* **Lassen Sie es weg und lassen Sie Threads es hinzufügen, wenn nötig.** Ein Cloud-Thread, dessen Aufgabe ein Repository benötigt, das das Projekt nicht hat, kann es zu sich selbst hinzufügen, und eine Notiz im Thread sagt, dass es nur zu diesem Thread hinzugefügt wurde. Der Klon findet teilweise durch die Aufgabe statt, also waren die `CLAUDE.md` und Skills dieses Repositories nicht vorhanden, als der Thread startete. Der nächste Thread startet wieder ohne ihn. Ein Repository, das ein Thread hinzufügt, benötigt die gleichen [Voraussetzungen](#check-the-prerequisites) wie ein Projekt-Repository: die Claude GitHub App ist darauf installiert und Sie haben Push-Zugriff von Ihrem GitHub-Konto.

325 327 

326Ein Projekt benötigt überhaupt kein Repository. Seine Threads können immer noch recherchieren, Dokumente schreiben und Code in ihrer eigenen Sandbox schreiben und ausführen, und sie liefern Dateien auf der Registerkarte **Bibliothek** ab. Ein Thread dort kann auch ein Repository zu sich selbst hinzufügen, wenn eine Aufgabe es erfordert.328Ein Projekt benötigt überhaupt kein Repository. Seine Cloud-Threads können immer noch recherchieren, Dokumente schreiben und Code in ihrer eigenen Sandbox schreiben und ausführen, und sie liefern Dateien auf der Registerkarte **Bibliothek** ab. Ein Cloud-Thread dort kann auch ein Repository zu sich selbst hinzufügen, wenn eine Aufgabe es erfordert.

327 329 

328Sobald das Projekt Repositories hat, kann Claude nur Repositories von einem GitHub-Besitzer hinzufügen, den das Projekt bereits verwendet, unabhängig davon, ob es eines zum Projekt hinzufügt oder ein Thread eines zu sich selbst hinzufügt. Um ein Repository von einem anderen Besitzer einzubringen, fügen Sie es selbst in **Projekteinstellungen > Umgebung** zum Projekt hinzu.330Sobald das Projekt Repositories hat, kann Claude nur Repositories von einem GitHub-Besitzer hinzufügen, den das Projekt bereits verwendet, unabhängig davon, ob es eines zum Projekt hinzufügt oder ein Thread eines zu sich selbst hinzufügt. Um ein Repository von einem anderen Besitzer einzubringen, fügen Sie es selbst in **Projekteinstellungen > Umgebung** zum Projekt hinzu.

329 331 

330Für ein Projekt, das viele Repositories umfasst, wie ein Feature mit Server-, Web-, Mobile- und Desktop-Code, fügen Sie das eine oder zwei Repositories hinzu, die fast jede Aufgabe berührt, und nennen Sie die anderen in [Projektanweisungen](#write-project-instructions), damit Claude weiß, wo der Rest des Codes lebt. Threads starten dann klein und ziehen die anderen Repositories nur für die Aufgaben ein, die sie benötigen.332Für ein Projekt, das viele Repositories umfasst, wie ein Feature mit Server-, Web-, Mobile- und Desktop-Code, fügen Sie das eine oder zwei Repositories hinzu, die fast jede Aufgabe berührt, und nennen Sie die anderen in [Projektanweisungen](#write-project-instructions), damit Claude weiß, wo der Rest des Codes lebt. Cloud-Threads starten dann klein und ziehen die anderen Repositories nur für die Aufgaben ein, die sie benötigen.

331 333 

332<h3 id="what-threads-pick-up-from-your-repositories">334<h3 id="what-threads-pick-up-from-your-repositories">

333 Was Threads aus Ihren Repositories aufgreifen335 Was Threads aus Ihren Repositories aufgreifen

334</h3>336</h3>

335 337 

336Jeder Thread klont jedes Repository im Projekt und lädt `CLAUDE.md` und Skills aus allen. Berechtigungsregeln, Hooks und `env` kommen nur aus der `.claude/settings.json` in dem Verzeichnis, in dem der Thread startet: innerhalb des Repositories, wenn das Projekt eines hat, und über den Klonen, wenn es mehrere hat, wo keine Datei eines Repositories für sie gelesen wird.338Jeder Cloud-Thread klont jedes Repository im Projekt und lädt `CLAUDE.md` und Skills aus allen. Berechtigungsregeln, Hooks und `env` kommen nur aus der `.claude/settings.json` in dem Verzeichnis, in dem der Thread startet: innerhalb des Repositories, wenn das Projekt eines hat, und über den Klonen, wenn es mehrere hat, wo keine Datei eines Repositories für sie gelesen wird.

337 339 

338| In jedem Repository | Ein Repository | Mehrere Repositories |340| In jedem Repository | Ein Repository | Mehrere Repositories |

339| :---------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------ |341| :---------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------ |


348 Wählen Sie eine Umgebung für Threads350 Wählen Sie eine Umgebung für Threads

349</h3>351</h3>

350 352 

351Jeder neue Thread startet in der [Cloud-Umgebung](/docs/de/cloud-environments) des Projekts. Die Umgebung legt fest, welche Domains Threads erreichen können, welche Umgebungsvariablen sie haben, welche API-Anmeldedaten zu ihren Anfragen hinzugefügt werden, und was das Setup-Skript installiert, bevor Claude startet. Threads verwenden eine Standard-Anthropic-gehostete Umgebung, bis Sie eine in **Projekteinstellungen > Umgebung** auswählen.353Jeder neue Cloud-Thread startet in der [Cloud-Umgebung](/docs/de/cloud-environments) des Projekts. Die Umgebung legt fest, welche Domains Threads erreichen können, welche Umgebungsvariablen sie haben, welche API-Anmeldedaten zu ihren Anfragen hinzugefügt werden, und was das Setup-Skript installiert, bevor Claude startet. Cloud-Threads verwenden eine Standard-Anthropic-gehostete Umgebung, bis Sie eine in **Projekteinstellungen > Umgebung** auswählen.

352 354 

353Wenn Threads eine interne API oder eine private Package-Registry erreichen müssen oder ein Token benötigen, das Ihr Computer normalerweise hält, ändern Sie die Umgebung statt des Projekts: siehe [Netzwerkzugriff](/docs/de/cloud-environments#network-access), [API-Anmeldedaten hinzufügen](/docs/de/cloud-environments#add-api-credentials) und [Setup-Skripte](/docs/de/cloud-environments#setup-scripts).355Wenn Cloud-Threads eine interne API oder eine private Package-Registry erreichen müssen oder ein Token benötigen, das Ihr Computer normalerweise hält, ändern Sie die Umgebung statt des Projekts: siehe [Netzwerkzugriff](/docs/de/cloud-environments#network-access), [API-Anmeldedaten hinzufügen](/docs/de/cloud-environments#add-api-credentials) und [Setup-Skripte](/docs/de/cloud-environments#setup-scripts).

354 356 

355<h3 id="get-skills-plugins-connectors-and-tools-into-threads">357<h3 id="get-skills-plugins-connectors-and-tools-into-threads">

356 Bringen Sie Skills, Plugins, Connectors und Tools in Threads358 Bringen Sie Skills, Plugins, Connectors und Tools in Threads

357</h3>359</h3>

358 360 

359Threads sind Cloud-Sitzungen, daher haben sie nicht die Skills, MCP-Server, Plugins und Tools, die nur auf Ihrem Computer installiert sind. Um jedes dieser Elemente für Threads verfügbar zu machen:361Cloud-Threads haben nicht die Skills, MCP-Server, Plugins und Tools, die nur auf Ihrem Computer installiert sind. Ein Thread, den Claude auf Ihrem Computer durch [Remote Control](/docs/de/remote-control) ausführt, verwendet das, was dort installiert ist. Um jedes dieser Elemente für Cloud-Threads verfügbar zu machen:

360 362 

361* Skills, Subagenten und Befehle: Committen Sie sie zu einem Repository, das Sie zum Projekt hinzugefügt haben, zum Beispiel ein Skill unter `.claude/skills/<skill-name>/SKILL.md`. Jeder Thread klont jedes Repository im Projekt und lädt `.claude/skills/`, `.claude/agents/` und `.claude/commands/` aus jedem, also ist ein Skill, der zu einem Repository committed wird, in jedem neuen Thread verfügbar. Threads laden auch die Skills, die Sie für Ihr claude.ai-Konto aktivieren.363* Skills, Subagenten und Befehle: Committen Sie sie zu einem Repository, das Sie zum Projekt hinzugefügt haben, zum Beispiel ein Skill unter `.claude/skills/<skill-name>/SKILL.md`. Jeder Cloud-Thread klont jedes Repository im Projekt und lädt `.claude/skills/`, `.claude/agents/` und `.claude/commands/` aus jedem, also ist ein Skill, der zu einem Repository committed wird, in jedem Cloud-Thread verfügbar. Cloud-Threads laden auch die Skills, die Sie für Ihr claude.ai-Konto aktivieren.

362* Plugins: Fügen Sie sie in **Projekteinstellungen > Plugins** hinzu; sie werden in jeden neuen Thread geladen. Plugins, die ein Repository in seiner `.claude/settings.json` deklariert, [werden nicht in Threads geladen](/docs/de/cloud-environments#what-carries-over-from-your-setup), da Threads Cloud-Sitzungen sind.364* Plugins: Fügen Sie sie in **Projekteinstellungen > Plugins** hinzu; sie werden in jeden neuen Cloud-Thread geladen. Plugins, die ein Repository in seiner `.claude/settings.json` deklariert, [werden nicht in Cloud-Threads geladen](/docs/de/cloud-environments#what-carries-over-from-your-setup).

363* MCP-Server: Threads erhalten ihre MCP-Tools von den Connectors auf Ihrem claude.ai-Konto, die MCP-Server sind, die Sie einmal unter [claude.ai/customize/connectors](https://claude.ai/customize/connectors) verbinden oder über den Link **Connectors verwalten** in **Projekteinstellungen > Umgebung**. Jeder Thread kann alle mit keinem projektspezifischen Setup verwenden. Das Projektgespräch selbst hat keine Connectors, also senden Sie Arbeit, die einen benötigt, als Aufgabe für einen Thread. In einem Projekt mit einem Repository laden Threads auch MCP-Server aus der [`.mcp.json`](/docs/de/cloud-environments#what-carries-over-from-your-setup) dieses Repositories. [Wie Connectors Claude Code erreichen](/docs/de/mcp#how-connectors-reach-claude-code) listet die Regeln für Cloud-Sitzungen und die Einstellungen auf, die Connectors ausschalten.365* MCP-Server: Cloud-Threads erhalten ihre MCP-Tools von den Connectors auf Ihrem claude.ai-Konto, die MCP-Server sind, die Sie einmal unter [claude.ai/customize/connectors](https://claude.ai/customize/connectors) verbinden oder über den Link **Connectors verwalten** in **Projekteinstellungen > Umgebung**. Jeder Cloud-Thread kann alle mit keinem projektspezifischen Setup verwenden. Das Projektgespräch selbst hat keine Connectors, also senden Sie Arbeit, die einen benötigt, als Aufgabe für einen Cloud-Thread. In einem Projekt mit einem Repository laden Cloud-Threads auch MCP-Server aus der [`.mcp.json`](/docs/de/cloud-environments#what-carries-over-from-your-setup) dieses Repositories. [Wie Connectors Claude Code erreichen](/docs/de/mcp#how-connectors-reach-claude-code) listet die Regeln für Cloud-Sitzungen und die Einstellungen auf, die Connectors ausschalten.

364* Befehlszeilenwerkzeuge und Pakete: Installieren Sie sie im [Setup-Skript](/docs/de/cloud-environments#setup-scripts) der Umgebung.366* Befehlszeilenwerkzeuge und Pakete: Installieren Sie sie im [Setup-Skript](/docs/de/cloud-environments#setup-scripts) der Umgebung.

365 367 

366Um zu sehen, welche Connectors ein laufender Thread unter claude.ai/code hat, öffnen Sie den Thread und wählen Sie **Connectors** aus dem Menü **+** neben seinem Nachrichtenfeld. Das Ausschalten eines Connectors dort entfernt ihn aus diesem Thread und speichert das als Ihr Kontostandard, also starten neue Threads und claude.ai-Chats ohne ihn, bis Sie ihn wieder einschalten. Ein Thread nimmt einen Connector auf, den Sie hinzufügen oder erneut verbinden, nach der nächsten Nachricht, die Sie ihm senden.368Um zu sehen, welche Connectors ein laufender Cloud-Thread unter claude.ai/code hat, öffnen Sie den Thread und wählen Sie **Connectors** aus dem Menü **+** neben seinem Nachrichtenfeld. Das Ausschalten eines Connectors dort entfernt ihn aus diesem Thread und speichert das als Ihr Kontostandard, also starten neue Threads und claude.ai-Chats ohne ihn, bis Sie ihn wieder einschalten. Ein Cloud-Thread nimmt einen Connector auf, den Sie hinzufügen oder erneut verbinden, nach der nächsten Nachricht, die Sie ihm senden.

367 369 

368<h2 id="project-settings-reference">370<h2 id="project-settings-reference">

369 Referenz für Projekteinstellungen371 Referenz für Projekteinstellungen


379| Koordinator-Modell und Aufwand | Allgemein | Das Modell und die [Aufwandsebene](/docs/de/model-config#adjust-effort-level) für Claude in der Projektkonversation |381| Koordinator-Modell und Aufwand | Allgemein | Das Modell und die [Aufwandsebene](/docs/de/model-config#adjust-effort-level) für Claude in der Projektkonversation |

380| Thread-Modell und Aufwand | Allgemein | Das Modell und die Aufwandsebene für Threads |382| Thread-Modell und Aufwand | Allgemein | Das Modell und die Aufwandsebene für Threads |

381| Projektanweisungen | Memory | [Stehende Regeln](#give-a-project-standing-context), die jeder neue Thread erhält |383| Projektanweisungen | Memory | [Stehende Regeln](#give-a-project-standing-context), die jeder neue Thread erhält |

382| Projekt-Repositories | Umgebung | Die Repositories, die neue Threads klonen |384| Projekt-Repositories | Umgebung | Die Repositories, die neue Cloud-Threads klonen |

383| Cloud-Umgebung | Umgebung | Die [Cloud-Umgebung](#choose-an-environment-for-threads), in der neue Threads ausgeführt werden |385| Cloud-Umgebung | Umgebung | Die [Cloud-Umgebung](#choose-an-environment-for-threads), in der neue Cloud-Threads ausgeführt werden |

384| Connectors | Umgebung | Ein Link zum Verwalten der claude.ai-Connectors, die Threads erhalten |386| Connectors | Umgebung | Ein Link zum Verwalten der claude.ai-Connectors, die Cloud-Threads erhalten |

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

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

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

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


434 Wie Projekte sich auf andere Claude Code-Funktionen beziehen436 Wie Projekte sich auf andere Claude Code-Funktionen beziehen

435</h2>437</h2>

436 438 

437Mehrere Claude Code-Funktionen ermöglichen es, dass mehr als eine Sitzung gleichzeitig arbeitet, daher ist das parallele Ausführen von Arbeit nicht an sich, wofür ein Projekt ist. In einem Projekt startet und verfolgt Claude die Sitzungen statt Ihnen, jede startet aus den gleichen Repositories, Anweisungen und Speicher, und die Arbeit lebt in der Cloud, solange sie dauert. So verbindet sich jede benachbarte Funktion mit einem Projekt:439Mehrere Claude Code-Funktionen ermöglichen es, dass mehr als eine Sitzung gleichzeitig arbeitet, daher ist das parallele Ausführen von Arbeit nicht an sich, wofür ein Projekt ist. In einem Projekt startet und verfolgt Claude die Sitzungen statt Ihnen, und jede startet aus den gleichen Anweisungen. So verbindet sich jede benachbarte Funktion mit einem Projekt:

438 440 

439* **Claude Tag**: [Claude Tag](https://claude.com/docs/claude-tag/overview) ist Claude in den Slack-Kanälen Ihres Teams, auf Team- und Enterprise-Plänen. Jeder in einem Kanal kann ihm Arbeit geben, jeder im Kanal sieht und lenkt es, und es nutzt Verbindungen, die ein Admin für diesen Kanal eingerichtet hat. Ein Projekt ist nur Ihres: Sie sind der Einzige, der ihm Arbeit gibt oder seine Threads sieht, es nutzt Ihren eigenen GitHub-Zugriff und Connectors, und es ist auf Pro und Max. [Wie sich Claude Tag von Cowork und Claude Code unterscheidet](https://claude.com/docs/claude-tag/concepts/how-it-works#how-claude-tag-differs-from-cowork-and-claude-code) hat die Seite-an-Seite.441* **Claude Tag**: [Claude Tag](https://claude.com/docs/claude-tag/overview) ist Claude in den Slack-Kanälen Ihres Teams, auf Team- und Enterprise-Plänen. Jeder in einem Kanal kann ihm Arbeit geben, jeder im Kanal sieht und lenkt es, und es nutzt Verbindungen, die ein Admin für diesen Kanal eingerichtet hat. Ein Projekt ist nur Ihres: Sie sind der Einzige, der ihm Arbeit gibt oder seine Threads sieht, es nutzt Ihren eigenen GitHub-Zugriff und Connectors, und es ist auf Pro und Max. [Wie sich Claude Tag von Cowork und Claude Code unterscheidet](https://claude.com/docs/claude-tag/concepts/how-it-works#how-claude-tag-differs-from-cowork-and-claude-code) hat die Seite-an-Seite.

440* **Cloud-Sitzungen**: Jeder Thread ist eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web), gestartet und verfolgt von Claude statt von Ihnen. Eine Cloud-Sitzung, die Sie selbst gestartet haben, kann ein Projekt werden oder einen durch [**Als Projekt fortfahren** oder **In Projekt verschieben**](#start-from-an-existing-cloud-session) füttern.442* **Cloud-Sitzungen**: Jeder Thread ist eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web), es sei denn, Sie bitten Claude, ihn auf Ihrem Computer auszuführen. In beiden Fällen startet und verfolgt Claude ihn statt Ihnen. Eine Cloud-Sitzung, die Sie selbst gestartet haben, kann ein Projekt werden oder einen durch [**Als Projekt fortfahren** oder **In Projekt verschieben**](#start-from-an-existing-cloud-session) füttern.

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

442* **Lokale Sitzungen und Agent-Ansicht**: Sitzungen in Ihrem Terminal, IDE oder der lokalen Umgebung der Desktop-App laufen auf Ihrem Computer und können nicht Teil eines Projekts sein. [Agent-Ansicht](/docs/de/agent-view) ist ein Bildschirm zum Verfolgen mehrerer dieser lokalen Sitzungen; es hat keinen Koordinator.444* **Lokale Sitzungen und Agent-Ansicht**: Eine Sitzung, die Sie selbst in Ihrem Terminal, IDE oder der lokalen Umgebung der Desktop-App starten, kann nicht zu einem Projekt hinzugefügt werden. Ein Projekt erreicht Ihren Computer nur, indem es einen Thread dort durch [Remote Control](/docs/de/remote-control) ausführt. [Agent-Ansicht](/docs/de/agent-view) ist ein Bildschirm zum Verfolgen mehrerer lokaler Sitzungen, die Sie selbst gestartet haben; es hat keinen Koordinator.

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

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

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

446 448 


451</h2>453</h2>

452 454 

453* Projekte sind unter claude.ai/code, in der Desktop-App und in der Claude Mobile-App verfügbar, nicht im Terminal CLI oder über Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry. Der Befehl [`claude project`](/docs/de/cli-reference) der CLI, der den lokalen Claude Code-Status für ein Verzeichnis verwaltet, ist nicht verwandt.455* Projekte sind unter claude.ai/code, in der Desktop-App und in der Claude Mobile-App verfügbar, nicht im Terminal CLI oder über Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry. Der Befehl [`claude project`](/docs/de/cli-reference) der CLI, der den lokalen Claude Code-Status für ein Verzeichnis verwaltet, ist nicht verwandt.

454* Projekt-Threads sind [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) mit Anthropic als Modell-Provider. [Sicherheit](/docs/de/security) und [Datennutzung](/docs/de/data-usage) erläutern, wie Cloud-Sitzungen isoliert sind und was beibehalten wird.456* Projekt-Threads sind [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) oder Sitzungen auf Ihrem eigenen Computer über [Remote Control](/docs/de/remote-control), wobei Anthropic in beiden Fällen der Modell-Provider ist. [Sicherheit](/docs/de/security) und [Datennutzung](/docs/de/data-usage) erläutern, wie Cloud-Sitzungen isoliert sind und was beibehalten wird, und [Verbindung und Sicherheit](/docs/de/remote-control#connection-and-security) erläutert, wie ein Thread auf Ihrem Computer verbunden ist und was gespeichert wird.

455* Eine lokale Sitzung kann nicht Teil eines Projekts sein.457* Sie können eine Sitzung, die Sie selbst auf Ihrem Computer gestartet haben, nicht zu einem Projekt hinzufügen. Um einem Projekt zu ermöglichen, einen Thread auf Ihrem Computer auszuführen, verbinden Sie den Ordner, in dem es funktionieren soll, über [Remote Control](/docs/de/remote-control#requirements): Aktivieren Sie Remote Control unter **Einstellungen > Claude Code** in der Claude Desktop-App, oder führen Sie `claude remote-control` im Ordner aus und lassen Sie es laufen. Dieser Computer benötigt Claude Code v2.1.280 oder später. Ein Projekt kann auch keinen Thread auf Ihrem Computer ausführen, während **Vertrauenswürdige Geräte erforderlich** in Ihren claude.ai-Einstellungen aktiviert ist.

456* Ein Thread-Sandbox wird zwischen Turns unterbrochen und wird fortgesetzt, wenn der Thread weitergeht. Wenn die Sandbox nicht fortgesetzt werden kann, wird der Thread von einem frischen Klon aus fortgesetzt, sodass nicht committete Änderungen verloren gehen können. Bei langen Aufgaben bitten Sie Claude, Work in Progress zu committen und zu pushen.458* Ein Cloud-Thread-Sandbox wird zwischen Turns unterbrochen und wird fortgesetzt, wenn der Thread weitergeht. Wenn die Sandbox nicht fortgesetzt werden kann, wird der Thread von einem frischen Klon aus fortgesetzt, sodass nicht committete Änderungen verloren gehen können. Bei langen Aufgaben bitten Sie Claude, Work in Progress zu committen und zu pushen.

457* Ein Projekt gehört einem Benutzer. Sie können ein Projekt oder seine Threads nicht mit einem anderen Benutzer teilen, und Thread-Transkripte haben nicht die Share-Option, die andere Cloud-Sitzungen haben. Es gibt keine Kontrollen auf Organisationsebene für Projekte während der Beta.459* Ein Projekt gehört einem Benutzer. Sie können ein Projekt oder seine Threads nicht mit einem anderen Benutzer teilen, und Thread-Transkripte haben nicht die Share-Option, die andere Cloud-Sitzungen haben. Es gibt keine Kontrollen auf Organisationsebene für Projekte während der Beta.

458* Ein Thread gehört dem einen Projekt, das ihn gestartet hat. Sie können einen Thread nicht zu einem anderen Projekt verschieben oder kopieren, oder ihn als eigenständig verschieben. [**In Projekt verschieben**](#start-from-an-existing-cloud-session) funktioniert nur in die andere Richtung: Es bringt die Arbeit einer Cloud-Sitzung in ein Projekt.460* Ein Thread gehört dem einen Projekt, das ihn gestartet hat. Sie können einen Thread nicht zu einem anderen Projekt verschieben oder kopieren, oder ihn als eigenständig verschieben. [**In Projekt verschieben**](#start-from-an-existing-cloud-session) funktioniert nur in die andere Richtung: Es bringt die Arbeit einer Cloud-Sitzung in ein Projekt.

459 461 


467 Ein Thread sieht fest aus469 Ein Thread sieht fest aus

468</h3>470</h3>

469 471 

470Claude veröffentlicht nicht jeden Schritt, den ein Thread unternimmt, daher arbeitet ein Thread, der als laufend mit keinen neuen Nachrichten im Projektgespräch angezeigt wird, normalerweise immer noch. Ein neuer Thread stellt auch seine [Cloud-Umgebung](/docs/de/cloud-environments) bereit, bevor Claude beginnt, daher dauert sein erstes Update einen Moment. Öffnen Sie den Thread, um sein Transkript zu lesen. Wenn der Thread auf einer Berechtigungsaufforderung wartet, beantworten Sie sie dort.472Claude veröffentlicht nicht jeden Schritt, den ein Thread unternimmt, daher arbeitet ein Thread, der als laufend mit keinen neuen Nachrichten im Projektgespräch angezeigt wird, normalerweise immer noch. Ein neuer Cloud-Thread stellt auch seine [Cloud-Umgebung](/docs/de/cloud-environments) bereit, bevor Claude beginnt, daher dauert sein erstes Update einen Moment. Öffnen Sie den Thread, um sein Transkript zu lesen. Wenn der Thread auf einer Berechtigungsaufforderung wartet, beantworten Sie sie dort.

471 473 

472<h3 id="threads-guessed-or-stalled-instead-of-asking">474<h3 id="threads-guessed-or-stalled-instead-of-asking">

473 Threads haben geraten oder stecken fest, anstatt zu fragen475 Threads haben geraten oder stecken fest, anstatt zu fragen


489 Repository-Zugriffsfehler491 Repository-Zugriffsfehler

490</h3>492</h3>

491 493 

492Drei Nachrichten bedeuten, dass ein Thread oder das Projekt eines seiner Repositories nicht erreichen kann. Ein Projekt-Thread benötigt die [GitHub-Voraussetzungen](#check-the-prerequisites) auch wenn Ihre anderen Cloud-Sitzungen das gleiche Repository ohne Probleme klonen.494Drei Nachrichten bedeuten, dass ein Thread oder das Projekt eines seiner Repositories nicht erreichen kann. Ein Projekt-Cloud-Thread benötigt die [GitHub-Voraussetzungen](#check-the-prerequisites) auch wenn Ihre anderen Cloud-Sitzungen das gleiche Repository ohne Probleme klonen.

493 495 

494* **„Konnte die Sitzung nicht starten — Claude hat keinen GitHub-Zugriff auf das Repository dieses Projekts"**, berichtet, bevor der Thread startet, wenn die Claude GitHub App nicht auf diesem Repository installiert ist, ausgesetzt ist oder nicht mit dem GitHub-Konto verknüpft ist, das Sie verbunden haben.496* **„Konnte die Sitzung nicht starten — Claude hat keinen GitHub-Zugriff auf das Repository dieses Projekts"**, berichtet, bevor der Thread startet, wenn die Claude GitHub App nicht auf diesem Repository installiert ist, ausgesetzt ist oder nicht mit dem GitHub-Konto verknüpft ist, das Sie verbunden haben.

495* **„Kann Ihr Repository nicht erreichen"**, berichtet von einem Thread, wenn sein Klon fehlschlägt: GitHub lehnte den Klon ab, das Repository wurde nicht unter dem Namen gefunden, den das Projekt hat, oder der Branch, von dem der Thread starten sollte, existiert nicht.497* **„Kann Ihr Repository nicht erreichen"**, berichtet von einem Thread, wenn sein Klon fehlschlägt: GitHub lehnte den Klon ab, das Repository wurde nicht unter dem Namen gefunden, den das Projekt hat, oder der Branch, von dem der Thread starten sollte, existiert nicht.

Details

27 Installieren Sie das Plugin27 Installieren Sie das Plugin

28</h2>28</h2>

29 29 

30Installieren Sie in einer Claude Code-Sitzung aus dem [offiziellen Anthropic-Marketplace](/docs/de/discover-plugins#official-anthropic-marketplace):30Installieren Sie in einer Claude Code-Sitzung aus dem [offiziellen Anthropic-Marketplace](/docs/de/plugins/anthropic-marketplaces):

31 31 

32```text theme={null}32```text theme={null}

33/plugin install claude-security@claude-plugins-official33/plugin install claude-security@claude-plugins-official

34```34```

35 35 

36Der Befehl öffnet die Details des Plugins, wo Sie einen [Installationsbereich](/docs/de/discover-plugins#install-plugins) wählen, um die Installation zu starten.36Der Befehl öffnet die Details des Plugins, wo Sie einen [Installationsbereich](/docs/de/plugins/install#install-a-plugin) wählen, um die Installation zu starten.

37 37 

38Wenn die Installation fehlschlägt, hängt die Behebung von der Meldung ab, die Claude Code meldet:38Wenn die Installation fehlschlägt, hängt die Behebung von der Meldung ab, die Claude Code meldet:

39 39 

40* Wenn es meldet `Marketplace "claude-plugins-official" not found`, fügen Sie den Marketplace mit `/plugin marketplace add anthropics/claude-plugins-official` hinzu und versuchen Sie dann die Installation erneut.40* Wenn es meldet `Marketplace "claude-plugins-official" not found`, fügen Sie den Marketplace mit `/plugin marketplace add anthropics/claude-plugins-official` hinzu und versuchen Sie dann die Installation erneut.

41* Wenn es meldet, dass es [das Plugin im Marketplace nicht finden kann](/docs/de/discover-plugins#install-plugins), überprüfen Sie den Plugin-Namen auf Tippfehler.41* Wenn es meldet, dass es [das Plugin im Marketplace nicht finden kann](/docs/de/plugins/install#install-a-plugin), überprüfen Sie den Plugin-Namen auf Tippfehler.

42 42 

43Überprüfen Sie die Installationszusammenfassung. Wenn sie meldet `Run /reload-plugins to activate.`, lesen Sie [Plugin-Änderungen ohne Neustart anwenden](/docs/de/discover-plugins#apply-plugin-changes-without-restarting), um das Plugin in Ihrer aktuellen Sitzung zu aktivieren.43Überprüfen Sie die Installationszusammenfassung. Wenn sie meldet `Run /reload-plugins to activate.`, lesen Sie [Plugin-Änderungen ohne Neustart anwenden](/docs/de/plugins/cli-reference#reload-plugins), um das Plugin in Ihrer aktuellen Sitzung zu aktivieren.

44 44 

45Sobald das Plugin aktiv ist, sind Sie bereit zum [Scannen und Beheben Ihrer Codebasis](#scan-and-fix-your-codebase).45Sobald das Plugin aktiv ist, sind Sie bereit zum [Scannen und Beheben Ihrer Codebasis](#scan-and-fix-your-codebase).

46 46 


168* [Code Review](/docs/de/code-review): Richten Sie die Multi-Agent-Überprüfung zur PR-Zeit ein168* [Code Review](/docs/de/code-review): Richten Sie die Multi-Agent-Überprüfung zur PR-Zeit ein

169* [Claude Security](https://claude.com/product/claude-security): Der verwaltete Service, der verbundene Repositories überwacht169* [Claude Security](https://claude.com/product/claude-security): Der verwaltete Service, der verbundene Repositories überwacht

170* [Claude Code-Sicherheit](/docs/de/security): Wie Claude Code Vertrauen, Berechtigungen und Schutzmaßnahmen angeht170* [Claude Code-Sicherheit](/docs/de/security): Wie Claude Code Vertrauen, Berechtigungen und Schutzmaßnahmen angeht

171* [Entdecken und installieren Sie Plugins](/docs/de/discover-plugins#official-anthropic-marketplace): Durchsuchen Sie andere offizielle Plugins171* [Plugins installieren und verwalten](/docs/de/plugins/install): Finden und installieren Sie andere Plugins aus dem offiziellen Marketplace

claude-tag.md +0 −11 deleted

File Deleted View Diff

1> ## Documentation Index

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

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

4 

5# Claude Tag

6 

7> Bringen Sie Claude mit Claude Tag in die Slack-Kanäle Ihres Teams und finden Sie die Setup- und Nutzungsdokumentation auf claude.com.

8 

9[Claude Tag](https://claude.com/product/tag) ist eine Slack-Integration, die `@Claude` in den Kanälen Ihres Teams als gemeinsame Identität Ihrer Organisation mit vom Administrator konfigurierten Zugriffsrechten ausführt. Jeder in einem Kanal kann `@Claude` in einen Thread markieren und ihm eine Aufgabe zuweisen. Lesen Sie die [Claude Tag-Dokumentation](https://claude.com/docs/claude-tag/overview) auf claude.com, um sie einzurichten und zu verwenden.

10 

11Claude Tag ist in Team- und Enterprise-Plänen verfügbar und unterscheidet sich von der früheren [Claude Code in Slack](/docs/de/slack), die jede Sitzung unter dem Konto eines einzelnen Benutzers ausführt. In Pro- und Max-Plänen, in denen Claude Tag nicht verfügbar ist, bleibt Claude Code in Slack der Setup-Pfad.

Details

37| `claude import [source]` | Starten Sie eine interaktive Sitzung, die [`/import`](/docs/de/commands#all-commands) ausführt, um Konfiguration von anderen Coding-Agenten in Claude Code zu bringen. Akzeptiert die gleichen `--dry-run` und `--yes` Optionen wie der Befehl. Nicht verfügbar auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder Claude Platform auf AWS. Auch nicht verfügbar, wenn Sie [Feature-Flag-Abruf](/docs/de/env-vars#features-that-need-feature-flag-fetching) deaktivieren. Erfordert Claude Code v2.1.213 oder später | `claude import codex --dry-run` |37| `claude import [source]` | Starten Sie eine interaktive Sitzung, die [`/import`](/docs/de/commands#all-commands) ausführt, um Konfiguration von anderen Coding-Agenten in Claude Code zu bringen. Akzeptiert die gleichen `--dry-run` und `--yes` Optionen wie der Befehl. Nicht verfügbar auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder Claude Platform auf AWS. Auch nicht verfügbar, wenn Sie [Feature-Flag-Abruf](/docs/de/env-vars#features-that-need-feature-flag-fetching) deaktivieren. Erfordert Claude Code v2.1.213 oder später | `claude import codex --dry-run` |

38| `claude logs <id>` | Drucken Sie die aktuelle Ausgabe aus einer [Hintergrundsitzung](/docs/de/agent-view#manage-sessions-from-the-shell) | `claude logs 7c5dcf5d` |38| `claude logs <id>` | Drucken Sie die aktuelle Ausgabe aus einer [Hintergrundsitzung](/docs/de/agent-view#manage-sessions-from-the-shell) | `claude logs 7c5dcf5d` |

39| `claude mcp` | Model Context Protocol (MCP) Server konfigurieren | Siehe die [Claude Code MCP-Dokumentation](/docs/de/mcp). |39| `claude mcp` | Model Context Protocol (MCP) Server konfigurieren | Siehe die [Claude Code MCP-Dokumentation](/docs/de/mcp). |

40| `claude mcp login <name>` | Führen Sie den OAuth-Fluss eines konfigurierten MCP-Servers aus, ohne das interaktive `/mcp`-Panel zu öffnen. Funktioniert für HTTP-, SSE- und claude.ai-Connector-Server. Fügen Sie `--no-browser` über SSH hinzu, um die Autorisierungs-URL auszudrucken, anstatt einen Browser zu öffnen, und fügen Sie dann die Umleitungs-URL an der Eingabeaufforderung ein. Erfordert Claude Code v2.1.186 oder später. Siehe [Authentifizierung über die Befehlszeile](/docs/de/mcp#authenticate-from-the-command-line) | `claude mcp login sentry` |40| `claude mcp login <name>` | Führen Sie den OAuth-Fluss eines konfigurierten MCP-Servers aus, ohne das interaktive `/mcp`-Panel zu öffnen. Funktioniert für HTTP-, SSE- und claude.ai-Connector-Server. Fügen Sie `--no-browser` über SSH hinzu, um die Autorisierungs-URL auszudrucken, anstatt einen Browser zu öffnen, und fügen Sie dann die Umleitungs-URL an der Eingabeaufforderung ein. Siehe [Authentifizierung über die Befehlszeile](/docs/de/mcp#authenticate-from-the-command-line) | `claude mcp login sentry` |

41| `claude mcp logout <name>` | Löschen Sie gespeicherte OAuth-Anmeldedaten für einen MCP-Server. Erfordert Claude Code v2.1.186 oder später | `claude mcp logout sentry` |41| `claude mcp logout <name>` | Löschen Sie gespeicherte OAuth-Anmeldedaten für einen MCP-Server | `claude mcp logout sentry` |

42| `claude plugin` | Verwalten Sie Claude Code [Plugins](/docs/de/plugins). Alias: `claude plugins`. Siehe [Plugin-Referenz](/docs/de/plugins-reference#cli-commands-reference) für Unterbefehle | `claude plugin install code-review@claude-plugins-official` |42| `claude plugin` | Verwalten Sie Claude Code [Plugins](/docs/de/plugins/overview). Alias: `claude plugins`. Siehe [Plugin-Referenz](/docs/de/plugins/cli-reference#claude-plugin-commands) für Unterbefehle | `claude plugin install code-review@claude-plugins-official` |

43| `claude project purge [path]` | Löschen Sie alle lokalen Claude Code-Status für ein Projekt: Transkripte, Aufgabenlisten, Debug-Protokolle, Datei-Bearbeitungsverlauf, Prompt-Verlaufszeilen und den Projekteintrag in `~/.claude.json`. Lassen Sie `[path]` weg, um aus einer interaktiven Liste auszuwählen. Flags: `--dry-run` zum Vorschau, `-y`/`--yes` zum Überspringen der Bestätigung, `-i`/`--interactive` zum Bestätigen jedes Elements, `--all` für jedes Projekt. Siehe [Lokale Daten löschen](/docs/de/claude-directory#clear-local-data) | `claude project purge ~/work/repo --dry-run` |43| `claude project purge [path]` | Löschen Sie alle lokalen Claude Code-Status für ein Projekt: Transkripte, Aufgabenlisten, Debug-Protokolle, Datei-Bearbeitungsverlauf, Prompt-Verlaufszeilen und den Projekteintrag in `~/.claude.json`. Lassen Sie `[path]` weg, um aus einer interaktiven Liste auszuwählen. Flags: `--dry-run` zum Vorschau, `-y`/`--yes` zum Überspringen der Bestätigung, `-i`/`--interactive` zum Bestätigen jedes Elements, `--all` für jedes Projekt. Siehe [Lokale Daten löschen](/docs/de/claude-directory#clear-local-data) | `claude project purge ~/work/repo --dry-run` |

44| `claude remote-control` | Starten Sie einen [Remote Control](/docs/de/remote-control) Server, um Claude Code von Claude.ai oder der Claude App zu steuern. Läuft im Server-Modus (keine lokale interaktive Sitzung). Siehe [Server-Modus-Flags](/docs/de/remote-control#start-a-remote-control-session). Nach dem Stoppen des Servers können Sie die Sitzungen, die er bedient hat, zurückbringen. Siehe [Sitzungen nach dem Stoppen des Servers fortsetzen](/docs/de/remote-control#resume-sessions-after-stopping-the-server) | `claude remote-control --name "My Project"` |44| `claude remote-control` | Starten Sie einen [Remote Control](/docs/de/remote-control) Server, um Claude Code von Claude.ai oder der Claude App zu steuern. Läuft im Server-Modus (keine lokale interaktive Sitzung). Siehe [Server-Modus-Flags](/docs/de/remote-control#start-a-remote-control-session). Nach dem Stoppen des Servers können Sie die Sitzungen, die er bedient hat, zurückbringen. Siehe [Sitzungen nach dem Stoppen des Servers fortsetzen](/docs/de/remote-control#resume-sessions-after-stopping-the-server) | `claude remote-control --name "My Project"` |

45| `claude respawn <id>` | Starten Sie eine [Hintergrundsitzung](/docs/de/agent-view#manage-sessions-from-the-shell) neu, ob laufend oder gestoppt, mit ihrer Konversation intakt. Verwenden Sie `--all`, um jede laufende Sitzung neu zu starten, z. B. um eine aktualisierte Claude Code Binärdatei zu verwenden | `claude respawn 7c5dcf5d` |45| `claude respawn <id>` | Starten Sie eine [Hintergrundsitzung](/docs/de/agent-view#manage-sessions-from-the-shell) neu, ob laufend oder gestoppt, mit ihrer Konversation intakt. Verwenden Sie `--all`, um jede laufende Sitzung neu zu starten, z. B. um eine aktualisierte Claude Code Binärdatei zu verwenden | `claude respawn 7c5dcf5d` |


114| `--permission-mode` | Beginnen Sie in einem angegebenen [Berechtigungsmodus](/docs/de/permission-modes). Akzeptiert `default`, `acceptEdits`, `plan`, `auto`, `dontAsk`, `bypassPermissions`, oder `manual` als Alias für `default`. Der `manual`-Alias wählt den Berechtigungsmodus aus, den die UI als Manual kennzeichnet, und erfordert Claude Code v2.1.200 oder später; `claude --help` listet ihn anstelle von `default` auf, und beide Werte funktionieren. Überschreibt `defaultMode` aus Einstellungsdateien. Ohne diese Flagge oder `--dangerously-skip-permissions` startet eine neue Sitzung im Berechtigungsmodus, der in [welcher Berechtigungsmodus eine Sitzung startet](/docs/de/permission-modes#which-mode-a-session-starts-in) beschrieben ist. Für `-p` ist das `default`, wenn nichts konfiguriert ist | `claude --permission-mode plan` |114| `--permission-mode` | Beginnen Sie in einem angegebenen [Berechtigungsmodus](/docs/de/permission-modes). Akzeptiert `default`, `acceptEdits`, `plan`, `auto`, `dontAsk`, `bypassPermissions`, oder `manual` als Alias für `default`. Der `manual`-Alias wählt den Berechtigungsmodus aus, den die UI als Manual kennzeichnet, und erfordert Claude Code v2.1.200 oder später; `claude --help` listet ihn anstelle von `default` auf, und beide Werte funktionieren. Überschreibt `defaultMode` aus Einstellungsdateien. Ohne diese Flagge oder `--dangerously-skip-permissions` startet eine neue Sitzung im Berechtigungsmodus, der in [welcher Berechtigungsmodus eine Sitzung startet](/docs/de/permission-modes#which-mode-a-session-starts-in) beschrieben ist. Für `-p` ist das `default`, wenn nichts konfiguriert ist | `claude --permission-mode plan` |

115| `--permission-prompt-tool` | Geben Sie ein MCP-Tool an, um Berechtigungsaufforderungen im nicht-interaktiven Modus zu verarbeiten. Claude Code wartet darauf, dass der MCP-Server dieses Tools verbunden wird, bevor der erste Turn ausgeführt wird, bis zum [`MCP_TIMEOUT`](/docs/de/env-vars)-Starttimeout, standardmäßig 30 Sekunden. <br /><br />Das Prompt-Tool kann ein MCP-Tool, das als [Benutzerinteraktion erfordernd](/docs/de/mcp#require-approval-for-a-specific-tool) gekennzeichnet ist, nicht genehmigen: Claude Code konvertiert ein `allow`-Ergebnis dafür in eine Ablehnung. Diese Einschränkung erfordert Claude Code v2.1.199 oder später | `claude -p --permission-prompt-tool mcp_auth_tool "query"` |115| `--permission-prompt-tool` | Geben Sie ein MCP-Tool an, um Berechtigungsaufforderungen im nicht-interaktiven Modus zu verarbeiten. Claude Code wartet darauf, dass der MCP-Server dieses Tools verbunden wird, bevor der erste Turn ausgeführt wird, bis zum [`MCP_TIMEOUT`](/docs/de/env-vars)-Starttimeout, standardmäßig 30 Sekunden. <br /><br />Das Prompt-Tool kann ein MCP-Tool, das als [Benutzerinteraktion erfordernd](/docs/de/mcp#require-approval-for-a-specific-tool) gekennzeichnet ist, nicht genehmigen: Claude Code konvertiert ein `allow`-Ergebnis dafür in eine Ablehnung. Diese Einschränkung erfordert Claude Code v2.1.199 oder später | `claude -p --permission-prompt-tool mcp_auth_tool "query"` |

116| `--permission-prompts` | Legen Sie fest, wer Berechtigungsaufforderungen im Print-Modus beantwortet. Mit dem Standard `host` sendet Claude Code sie an den Agent SDK-Host oder das `--permission-prompt-tool`-Tool. Übergeben Sie `none`, wenn niemand antworten kann, und Claude Code lehnt sie stattdessen ab. Siehe [Berechtigungsaufforderungen in unbeaufsichtigten Läufen ausschalten](/docs/de/headless#turn-off-permission-prompts-in-unattended-runs). Erfordert Claude Code v2.1.259 oder später | `claude -p --permission-prompts none "query"` |116| `--permission-prompts` | Legen Sie fest, wer Berechtigungsaufforderungen im Print-Modus beantwortet. Mit dem Standard `host` sendet Claude Code sie an den Agent SDK-Host oder das `--permission-prompt-tool`-Tool. Übergeben Sie `none`, wenn niemand antworten kann, und Claude Code lehnt sie stattdessen ab. Siehe [Berechtigungsaufforderungen in unbeaufsichtigten Läufen ausschalten](/docs/de/headless#turn-off-permission-prompts-in-unattended-runs). Erfordert Claude Code v2.1.259 oder später | `claude -p --permission-prompts none "query"` |

117| `--plugin-dir` | Laden Sie ein Plugin aus einem Verzeichnis oder `.zip`-Archiv, oder mehrere aus einem [Ordner von Plugins](/docs/de/plugins#test-your-plugins-locally), nur für diese Sitzung. Jede Flagge nimmt einen Pfad. Wiederholen Sie die Flagge für mehr Pfade: `--plugin-dir A --plugin-dir B.zip`. Das Übergeben eines Ordners von Plugins erfordert Claude Code v2.1.265 oder später | `claude --plugin-dir ./my-plugin` |117| `--plugin-dir` | Laden Sie ein Plugin aus einem Verzeichnis oder `.zip`-Archiv, oder mehrere aus einem [Ordner von Plugins](/docs/de/plugins/create#load-a-directory-or-archive-for-one-session), nur für diese Sitzung. Jede Flagge nimmt einen Pfad. Wiederholen Sie die Flagge für mehr Pfade: `--plugin-dir A --plugin-dir B.zip`. Das Übergeben eines Ordners von Plugins erfordert Claude Code v2.1.265 oder später | `claude --plugin-dir ./my-plugin` |

118| `--plugin-url` | Rufen Sie ein Plugin `.zip`-Archiv von einer URL ab, nur für diese Sitzung. Wiederholen Sie die Flagge für mehrere Plugins, oder übergeben Sie durch Leerzeichen getrennte URLs in einem einzelnen angeführten Wert | `claude --plugin-url https://example.com/plugin.zip` |118| `--plugin-url` | Rufen Sie ein Plugin `.zip`-Archiv von einer URL ab, nur für diese Sitzung. Wiederholen Sie die Flagge für mehrere Plugins, oder übergeben Sie durch Leerzeichen getrennte URLs in einem einzelnen angeführten Wert | `claude --plugin-url https://example.com/plugin.zip` |

119| `--print`, `-p` | Drucken Sie die Antwort ohne interaktiven Modus (siehe [Agent SDK-Dokumentation](/docs/de/agent-sdk/overview) für Details zur programmatischen Verwendung) | `claude -p "query"` |119| `--print`, `-p` | Drucken Sie die Antwort ohne interaktiven Modus (siehe [Agent SDK-Dokumentation](/docs/de/agent-sdk/overview) für Details zur programmatischen Verwendung) | `claude -p "query"` |

120| `--prompt-suggestions` | Geben Sie eine `prompt_suggestion`-Nachricht mit einem vorhergesagten nächsten Benutzer-Prompt nach jedem Turn aus, der einen erzeugt; sehr kurze Konversationen können keine erzeugen. Erfordert `--print`, `--output-format stream-json` und `--verbose`. Siehe [Prompt-Vorschläge](/docs/de/interactive-mode#prompt-suggestions) | `claude -p --prompt-suggestions --output-format stream-json --verbose "query"` |120| `--prompt-suggestions` | Geben Sie eine `prompt_suggestion`-Nachricht mit einem vorhergesagten nächsten Benutzer-Prompt nach jedem Turn aus, der einen erzeugt; sehr kurze Konversationen können keine erzeugen. Erfordert `--print`, `--output-format stream-json` und `--verbose`. Siehe [Prompt-Vorschläge](/docs/de/interactive-mode#prompt-suggestions) | `claude -p --prompt-suggestions --output-format stream-json --verbose "query"` |


134| `--system-prompt-file` | Laden Sie den System-Prompt aus einer Datei, ersetzen Sie den Standard-Prompt | `claude --system-prompt-file ./custom-prompt.txt` |134| `--system-prompt-file` | Laden Sie den System-Prompt aus einer Datei, ersetzen Sie den Standard-Prompt | `claude --system-prompt-file ./custom-prompt.txt` |

135| `--system-prompt-snapshot` | Übergeben Sie `off`, um den System-Prompt bei jeder Anfrage neu zu erstellen, anstatt den Prompt [aufgezeichnet bei der ersten Anfrage der Konversation](#system-prompt-flags-in-resumed-conversations) wiederzuverwenden, z. B. während Sie die Formulierung über `--continue`-Läufe hinweg iterieren. Erfordert Claude Code v2.1.257 oder später | `claude --system-prompt-snapshot off` |135| `--system-prompt-snapshot` | Übergeben Sie `off`, um den System-Prompt bei jeder Anfrage neu zu erstellen, anstatt den Prompt [aufgezeichnet bei der ersten Anfrage der Konversation](#system-prompt-flags-in-resumed-conversations) wiederzuverwenden, z. B. während Sie die Formulierung über `--continue`-Läufe hinweg iterieren. Erfordert Claude Code v2.1.257 oder später | `claude --system-prompt-snapshot off` |

136| `--teleport` | Setzen Sie eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web) in Ihrem lokalen Terminal fort | `claude --teleport` |136| `--teleport` | Setzen Sie eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web) in Ihrem lokalen Terminal fort | `claude --teleport` |

137| `--teammate-mode` | Legen Sie fest, wie [Agent-Team](/docs/de/agent-teams)-Teamkollegen angezeigt werden: `in-process` (Standard), `auto`, `tmux`, oder `iterm2` (hinzugefügt in v2.1.186). Überschreibt die [`teammateMode`](/docs/de/settings-reference#teammatemode)-Einstellung für diese Sitzung. Siehe [Anzeigemodus wählen](/docs/de/agent-teams#choose-a-display-mode) | `claude --teammate-mode auto` |137| `--teammate-mode` | Legen Sie fest, wie [Agent-Team](/docs/de/agent-teams)-Teamkollegen angezeigt werden: `in-process` (Standard), `auto`, `tmux`, oder `iterm2`. Überschreibt die [`teammateMode`](/docs/de/settings-reference#teammatemode)-Einstellung für diese Sitzung. Siehe [Anzeigemodus wählen](/docs/de/agent-teams#choose-a-display-mode) | `claude --teammate-mode auto` |

138| `--tmux` | Erstellen Sie eine Tmux-Sitzung für den Worktree. Erfordert `--worktree`. Verwendet native iTerm2-Bereiche, wenn verfügbar; übergeben Sie `--tmux=classic` für traditionelles Tmux | `claude -w feature-auth --tmux` |138| `--tmux` | Erstellen Sie eine Tmux-Sitzung für den Worktree. Erfordert `--worktree`. Verwendet native iTerm2-Bereiche, wenn verfügbar; übergeben Sie `--tmux=classic` für traditionelles Tmux | `claude -w feature-auth --tmux` |

139| `--tools` | Beschränken Sie, welche integrierten Tools Claude verwenden kann. Verwenden Sie `""`, um alle zu deaktivieren, `"default"` für den Standard-Satz, oder Tool-Namen wie `"Bash,Edit,Read"`. Auf macOS, Linux und WSL lässt der Standard-Satz `Glob` und `Grep` weg, wie unter [Glob-Tool-Verhalten](/docs/de/tools-reference#glob-tool-behavior) beschrieben. Wenn Sie eines der [Task-Tracking-Tools](/docs/de/tools-reference#task-tool-availability) hier benennen, aktiviert Claude Code die Sitzung auch dafür. Die Flagge beeinflusst MCP-Tools nicht; um diese auch zu verweigern, verwenden Sie `--disallowedTools "mcp__*"`. Eine Liste, die [`EndConversation`](/docs/de/tools-reference#endconversation-tool-behavior) auslässt, entfernt es nicht; `""` entfernt es nur, wenn keine MCP-Tools verbleiben | `claude --tools "Bash,Edit,Read"` |139| `--tools` | Beschränken Sie, welche integrierten Tools Claude verwenden kann. Verwenden Sie `""`, um alle zu deaktivieren, `"default"` für den Standard-Satz, oder Tool-Namen wie `"Bash,Edit,Read"`. Auf macOS, Linux und WSL lässt der Standard-Satz `Glob` und `Grep` weg, wie unter [Glob-Tool-Verhalten](/docs/de/tools-reference#glob-tool-behavior) beschrieben. Wenn Sie eines der [Task-Tracking-Tools](/docs/de/tools-reference#task-tool-availability) hier benennen, aktiviert Claude Code die Sitzung auch dafür. Die Flagge beeinflusst MCP-Tools nicht; um diese auch zu verweigern, verwenden Sie `--disallowedTools "mcp__*"`. Eine Liste, die [`EndConversation`](/docs/de/tools-reference#endconversation-tool-behavior) auslässt, entfernt es nicht; `""` entfernt es nur, wenn keine MCP-Tools verbleiben | `claude --tools "Bash,Edit,Read"` |

140| `--verbose` | Aktivieren Sie ausführliches Logging, zeigt vollständige Turn-by-Turn-Ausgabe. Überschreibt die [`viewMode`](/docs/de/settings-reference#viewmode)-Einstellung für diese Sitzung | `claude --verbose` |140| `--verbose` | Aktivieren Sie ausführliches Logging, zeigt vollständige Turn-by-Turn-Ausgabe. Überschreibt die [`viewMode`](/docs/de/settings-reference#viewmode)-Einstellung für diese Sitzung | `claude --verbose` |

Details

300| Die `.mcp.json` MCP-Server Ihres Repos | Ja, in einer Sitzung mit einem Repository | Teil des Klons, gefunden aus dem Arbeitsverzeichnis der Sitzung |300| Die `.mcp.json` MCP-Server Ihres Repos | Ja, in einer Sitzung mit einem Repository | Teil des Klons, gefunden aus dem Arbeitsverzeichnis der Sitzung |

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

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

303| Plugins und Marketplaces, die in der `.claude/settings.json` Ihres Repos deklariert sind | Nein | Eine Cloud-Sitzung installiert nicht die Plugins, die ein Repository unter [`enabledPlugins`](/docs/de/settings-reference#enabledplugins) aktiviert, einschließlich solcher aus den Marketplaces, die es unter [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces) auflistet. Aktivieren Sie das Plugin stattdessen für Ihr claude.ai-Konto, damit Claude Code es als [synced plugin](/docs/de/plugins-reference#synced-plugins) lädt |303| Plugins und Marketplaces, die in der `.claude/settings.json` Ihres Repos deklariert sind | Nein | Eine Cloud-Sitzung installiert nicht die Plugins, die ein Repository unter [`enabledPlugins`](/docs/de/settings-reference#enabledplugins) aktiviert, einschließlich solcher aus den Marketplaces, die es unter [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces) auflistet |

304| Die [Server-verwalteten Einstellungen](/docs/de/server-managed-settings) Ihrer Organisation | Ja | Abgerufen von Anthropic-Servern, wenn die Sitzung startet. Siehe [Surface coverage](/docs/de/model-config#surface-coverage) für die Durchsetzung von `availableModels` in Cloud-Sitzungen. Einstellungen, die auf Ihrem Gerät über MDM oder verwaltete Einstellungsdateien bereitgestellt werden, gelten nicht, da die Sitzung auf einer von Anthropic verwalteten VM läuft; in einer [selbstgehosteten Umgebung](/docs/de/self-hosted-environments) lesen Sitzungen auch die verwaltete Einstellungsdatei im Runner-Image, pro [wie Claude Code verwaltete Quellen kombiniert](/docs/de/managed-settings#how-claude-code-combines-managed-sources) |304| Die [Server-verwalteten Einstellungen](/docs/de/server-managed-settings) Ihrer Organisation | Ja | Abgerufen von Anthropic-Servern, wenn die Sitzung startet. Siehe [Surface coverage](/docs/de/model-config#surface-coverage) für die Durchsetzung von `availableModels` in Cloud-Sitzungen. Einstellungen, die auf Ihrem Gerät über MDM oder verwaltete Einstellungsdateien bereitgestellt werden, gelten nicht, da die Sitzung auf einer von Anthropic verwalteten VM läuft; in einer [selbstgehosteten Umgebung](/docs/de/self-hosted-environments) lesen Sitzungen auch die verwaltete Einstellungsdatei im Runner-Image, pro [wie Claude Code verwaltete Quellen kombiniert](/docs/de/managed-settings#how-claude-code-combines-managed-sources) |

305| Ihre Benutzer `~/.claude/CLAUDE.md` | Nein | Lebt auf Ihrem Computer, nicht im Repo |305| Ihre Benutzer `~/.claude/CLAUDE.md` | Nein | Lebt auf Ihrem Computer, nicht im Repo |

306| Ihre Benutzer `~/.claude/skills/`, `~/.claude/agents/`, `~/.claude/commands/` | Nein | Leben auf Ihrem Computer, nicht im Repo. Committen Sie sie stattdessen in das Verzeichnis `.claude/` des Repos. Cloud-Sitzungen laden automatisch Skills, die Sie auf claude.ai aktivieren |306| Ihre Benutzer `~/.claude/skills/`, `~/.claude/agents/`, `~/.claude/commands/` | Nein | Leben auf Ihrem Computer, nicht im Repo. Committen Sie sie stattdessen in das Verzeichnis `.claude/` des Repos. Cloud-Sitzungen laden automatisch Skills, die Sie auf claude.ai aktivieren |

307| Plugins, die nur in Ihren Benutzereinstellungen aktiviert sind | Nein | Benutzer-scoped `enabledPlugins` lebt in `~/.claude/settings.json` auf Ihrem Computer. Aktivieren Sie sie stattdessen für Ihr claude.ai-Konto, damit Claude Code sie als [synced plugins](/docs/de/plugins-reference#synced-plugins) lädt |307| Plugins, die nur in Ihren Benutzereinstellungen aktiviert sind | Nein | Benutzer-scoped `enabledPlugins` lebt in `~/.claude/settings.json` auf Ihrem Computer |

308| MCP-Server, die Sie mit `claude mcp add` im Standard-lokalen Bereich oder Benutzerbereich hinzugefügt haben | Nein | Diese schreiben in `~/.claude.json` auf Ihrem Computer, nicht im Repo. Fügen Sie den Server mit `claude mcp add --scope project` hinzu, das die [`.mcp.json`](/docs/de/mcp#project-scope) des Repos schreibt, und committen Sie diese Datei. Eine Sitzung mit einem Repository lädt sie |308| MCP-Server, die Sie mit `claude mcp add` im Standard-lokalen Bereich oder Benutzerbereich hinzugefügt haben | Nein | Diese schreiben in `~/.claude.json` auf Ihrem Computer, nicht im Repo. Fügen Sie den Server mit `claude mcp add --scope project` hinzu, das die [`.mcp.json`](/docs/de/mcp#project-scope) des Repos schreibt, und committen Sie diese Datei. Eine Sitzung mit einem Repository lädt sie |

309| Transport-Variablen in der `.claude/settings.json` `env`-Block Ihres Repos, wie `NODE_EXTRA_CA_CERTS` und die [mTLS-Client-Zertifikat-Variablen](/docs/de/network-config#mtls-authentication) | Nein | Die Hosting-Umgebung verwaltet die API-Verbindung der Sitzung, daher ignoriert Claude Code diese Schlüssel und notiert jeden ignorierten Schlüssel im Debug-Log der Sitzung |309| Transport-Variablen in der `.claude/settings.json` `env`-Block Ihres Repos, wie `NODE_EXTRA_CA_CERTS` und die [mTLS-Client-Zertifikat-Variablen](/docs/de/network-config#mtls-authentication) | Nein | Die Hosting-Umgebung verwaltet die API-Verbindung der Sitzung, daher ignoriert Claude Code diese Schlüssel und notiert jeden ignorierten Schlüssel im Debug-Log der Sitzung |

310| API-Schlüssel und Tokens für Services, die Claude aufruft | Auf Pro- und Max-Plänen, als [API-Anmeldedaten](#add-api-credentials) | Sie fügen den Schlüssel einmal auf der Umgebung hinzu und der Agent-Proxy fügt ihn an Anfragen für die Hosts an, die Sie auflisten. Ein Schlüssel, den der Agent-Proxy [nicht anhängen kann](#requests-that-never-get-the-credential), oder ein beliebiger Schlüssel auf einem Team- oder Enterprise-Plan, bleibt in einer Umgebungsvariable |310| API-Schlüssel und Tokens für Services, die Claude aufruft | Auf Pro- und Max-Plänen, als [API-Anmeldedaten](#add-api-credentials) | Sie fügen den Schlüssel einmal auf der Umgebung hinzu und der Agent-Proxy fügt ihn an Anfragen für die Hosts an, die Sie auflisten. Ein Schlüssel, den der Agent-Proxy [nicht anhängen kann](#requests-that-never-get-the-credential), oder ein beliebiger Schlüssel auf einem Team- oder Enterprise-Plan, bleibt in einer Umgebungsvariable |

commands.md +4 −4

Details

61| `/autocompact [auto\|<tokens>]` | Legen Sie das Auto-Compact-Fenster fest: wie voll das Kontextfenster wird, bevor Claude Code automatisch komprimiert. Übergeben Sie eine Größe wie `500k` oder `auto`, um zum für Ihr Modell optimierten Fenster zurückzukehren. Claude Code speichert den Wert in den Benutzereinstellungen und wendet ihn auf die aktuelle Sitzung an. Siehe [Auto-Compact-Fenster einstellen](/docs/de/model-config#set-the-auto-compact-window) für akzeptierte Werte und was es überschreibt. Ohne Argument öffnet sich ein Dialog, der das aktuelle Fenster anzeigt. Erfordert Claude Code v2.1.221 oder später |61| `/autocompact [auto\|<tokens>]` | Legen Sie das Auto-Compact-Fenster fest: wie voll das Kontextfenster wird, bevor Claude Code automatisch komprimiert. Übergeben Sie eine Größe wie `500k` oder `auto`, um zum für Ihr Modell optimierten Fenster zurückzukehren. Claude Code speichert den Wert in den Benutzereinstellungen und wendet ihn auf die aktuelle Sitzung an. Siehe [Auto-Compact-Fenster einstellen](/docs/de/model-config#set-the-auto-compact-window) für akzeptierte Werte und was es überschreibt. Ohne Argument öffnet sich ein Dialog, der das aktuelle Fenster anzeigt. Erfordert Claude Code v2.1.221 oder später |

62| `/autofix-pr [prompt]` | Starten Sie eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web#auto-fix-pull-requests), die den PR des aktuellen Branches überwacht und Fixes pusht, wenn CI fehlschlägt oder Reviewer Kommentare hinterlassen. Erkennt den offenen PR aus Ihrem ausgecheckten Branch mit `gh pr view`; um einen anderen PR zu überwachen, checken Sie zuerst seinen Branch aus. Standardmäßig wird der Cloud-Sitzung mitgeteilt, jeden CI-Fehler und Review-Kommentar zu beheben; übergeben Sie einen Prompt, um ihr andere Anweisungen zu geben, z. B. `/autofix-pr only fix lint and type errors`. Erfordert die `gh`-CLI und Zugriff auf [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) |62| `/autofix-pr [prompt]` | Starten Sie eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web#auto-fix-pull-requests), die den PR des aktuellen Branches überwacht und Fixes pusht, wenn CI fehlschlägt oder Reviewer Kommentare hinterlassen. Erkennt den offenen PR aus Ihrem ausgecheckten Branch mit `gh pr view`; um einen anderen PR zu überwachen, checken Sie zuerst seinen Branch aus. Standardmäßig wird der Cloud-Sitzung mitgeteilt, jeden CI-Fehler und Review-Kommentar zu beheben; übergeben Sie einen Prompt, um ihr andere Anweisungen zu geben, z. B. `/autofix-pr only fix lint and type errors`. Erfordert die `gh`-CLI und Zugriff auf [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) |

63| `/background [prompt]` | Trennen Sie die aktuelle Sitzung, um als [Hintergrund-Agent](/docs/de/agent-view) zu laufen und dieses Terminal freizugeben. Übergeben Sie einen Prompt, um eine weitere Anweisung zu senden, bevor Sie trennen. Überwachen Sie die Sitzung mit `claude agents`. Um die Konversation in eine neue Hintergrund-Sitzung zu kopieren, während diese weiterläuft, verwenden Sie `/fork`. Alias: `/bg` |63| `/background [prompt]` | Trennen Sie die aktuelle Sitzung, um als [Hintergrund-Agent](/docs/de/agent-view) zu laufen und dieses Terminal freizugeben. Übergeben Sie einen Prompt, um eine weitere Anweisung zu senden, bevor Sie trennen. Überwachen Sie die Sitzung mit `claude agents`. Um die Konversation in eine neue Hintergrund-Sitzung zu kopieren, während diese weiterläuft, verwenden Sie `/fork`. Alias: `/bg` |

64| `/batch <instruction>` | **[Skill](/docs/de/skills#bundled-skills).** Orchestrieren Sie großflächige Änderungen über eine Codebasis parallel. Recherchiert die Codebasis, zerlegt die Arbeit in 5 bis 30 unabhängige Einheiten und präsentiert einen Plan. Nach Genehmigung startet es einen [Hintergrund-Subagenten](/docs/de/sub-agents#run-subagents-in-foreground-or-background) pro Einheit in einem isolierten [Git-Worktree](/docs/de/worktrees). Jeder Subagent implementiert seine Einheit, führt Tests aus und öffnet einen Pull Request. Erfordert ein Git-Repository. Beispiel: `/batch migrate src/ from JavaScript to TypeScript` |64| `/batch <instruction>` | **[Skill](/docs/de/skills#bundled-skills).** Orchestrieren Sie großflächige Änderungen über eine Codebasis parallel. Recherchiert die Codebasis, zerlegt die Arbeit in 5 bis 30 unabhängige Einheiten und präsentiert einen Plan. Nach Genehmigung startet es einen [Hintergrund-Subagenten](/docs/de/sub-agents#run-subagents-in-foreground-or-background) pro Einheit in einem isolierten [Worktree](/docs/de/worktrees). Jeder Subagent implementiert seine Einheit, führt Tests aus und veröffentlicht seine Änderung. Erfordert ein Git-Repository oder einen [`WorktreeCreate`-Hook](/docs/de/worktrees#non-git-version-control), der die Worktrees erstellt. Außerhalb eines Git-Repositorys erfordert `/batch` Claude Code v2.1.281 oder später. Beispiel: `/batch migrate src/ from JavaScript to TypeScript` |

65| `/branch [name]` | Erstellen Sie einen Branch der aktuellen Konversation an diesem Punkt, damit Sie eine andere Richtung versuchen können, ohne die Konversation zu verlieren. Wechselt Sie in den Branch und bewahrt das Original, zu dem Sie mit `/resume` zurückkehren können. Um eine Kopie stattdessen als separate [Hintergrund-Sitzung](/docs/de/agent-view) auszuführen, verwenden Sie `/fork`; um eine Seitenaufgabe an einen [Subagenten](/docs/de/sub-agents) zu übergeben, der in diese Konversation zurückberichtet, verwenden Sie `/subtask` |65| `/branch [name]` | Erstellen Sie einen Branch der aktuellen Konversation an diesem Punkt, damit Sie eine andere Richtung versuchen können, ohne die Konversation zu verlieren. Wechselt Sie in den Branch und bewahrt das Original, zu dem Sie mit `/resume` zurückkehren können. Um eine Kopie stattdessen als separate [Hintergrund-Sitzung](/docs/de/agent-view) auszuführen, verwenden Sie `/fork`; um eine Seitenaufgabe an einen [Subagenten](/docs/de/sub-agents) zu übergeben, der in diese Konversation zurückberichtet, verwenden Sie `/subtask` |

66| `/btw [question]` | Stellen Sie eine [Seitenfrage](/docs/de/interactive-mode#side-questions-with-%2Fbtw) zur aktuellen Sitzung, ohne sie zur Konversation hinzuzufügen. Wenn Sie `/btw` ohne eine Frage ausführen, zeigt Claude Code Ihre letzte Seitenfrage an, damit Sie frühere Antworten durchsuchen können; wenn Sie noch keine gestellt haben, druckt Claude Code eine Verwendungszeile. Vor v2.1.212 erforderte `/btw` eine Frage |66| `/btw [question]` | Stellen Sie eine [Seitenfrage](/docs/de/interactive-mode#side-questions-with-%2Fbtw) zur aktuellen Sitzung, ohne sie zur Konversation hinzuzufügen. Wenn Sie `/btw` ohne eine Frage ausführen, zeigt Claude Code Ihre letzte Seitenfrage an, damit Sie frühere Antworten durchsuchen können; wenn Sie noch keine gestellt haben, druckt Claude Code eine Verwendungszeile. Vor v2.1.212 erforderte `/btw` eine Frage |

67| `/bug [report]` | Melden Sie einen Fehler oder teilen Sie Ihre Konversation. Sie wählen, wie viel Sitzungsverlauf einzubeziehen ist, und bestätigen auf einem Zustimmungsbildschirm, bevor etwas gesendet wird. Wenn Sie bei Anthropic auf einer First-Party-Verbindung angemeldet sind, geht der Bericht an Anthropic; bei einem Drittanbieter oder ohne Anthropic-Anmeldedaten schreibt Claude Code den Bericht in ein [lokales Archiv unter `~/.claude/feedback-bundles/`](/docs/de/data-usage#telemetry-services), das Sie selbst weiterleiten. In der [VS Code-Erweiterung](/docs/de/vs-code#use-the-prompt-box) öffnet `/bug` stattdessen den eigenen Feedback-Dialog der Erweiterung; erfordert Claude Code v2.1.229 oder später. Wenn Sie ihn ausführen, während Claude antwortet, öffnet Claude Code den Dialog sofort. Vor v2.1.232 stellte Claude Code den Befehl in die Warteschlange, bis die Runde beendet war. Alias: `/share`. Vor v2.1.212 waren `/bug` und `/share` Aliase von `/feedback` |67| `/bug [report]` | Melden Sie einen Fehler oder teilen Sie Ihre Konversation. Sie wählen, wie viel Sitzungsverlauf einzubeziehen ist, und bestätigen auf einem Zustimmungsbildschirm, bevor etwas gesendet wird. Wenn Sie bei Anthropic auf einer First-Party-Verbindung angemeldet sind, geht der Bericht an Anthropic; bei einem Drittanbieter oder ohne Anthropic-Anmeldedaten schreibt Claude Code den Bericht in ein [lokales Archiv unter `~/.claude/feedback-bundles/`](/docs/de/data-usage#telemetry-services), das Sie selbst weiterleiten. In der [VS Code-Erweiterung](/docs/de/vs-code#use-the-prompt-box) öffnet `/bug` stattdessen den eigenen Feedback-Dialog der Erweiterung; erfordert Claude Code v2.1.229 oder später. Wenn Sie ihn ausführen, während Claude antwortet, öffnet Claude Code den Dialog sofort. Vor v2.1.232 stellte Claude Code den Befehl in die Warteschlange, bis die Runde beendet war. Alias: `/share`. Vor v2.1.212 waren `/bug` und `/share` Aliase von `/feedback` |

68| `/cd <path>` | Verschieben Sie diese Sitzung in ein neues Arbeitsverzeichnis und behalten Sie die Konversation. Geben Sie einen teilweisen Pfad ein, um passende Verzeichnisvorschläge zu sehen; drücken Sie `Tab`, um einen zu akzeptieren. Die Vorschläge erfordern Claude Code v2.1.206 oder später. Für das, was Claude Code aus dem neuen Verzeichnis sofort anwendet, wenn Sie sich verschieben, und wie sich `/cd` von `/add-dir` unterscheidet, siehe [Sitzung in ein anderes Verzeichnis verschieben](/docs/de/permissions#move-the-session-to-another-directory) |68| `/cd <path>` | Verschieben Sie diese Sitzung in ein neues Arbeitsverzeichnis und behalten Sie die Konversation. Geben Sie einen teilweisen Pfad ein, um passende Verzeichnisvorschläge zu sehen; drücken Sie `Tab`, um einen zu akzeptieren. Die Vorschläge erfordern Claude Code v2.1.206 oder später. Für das, was Claude Code aus dem neuen Verzeichnis sofort anwendet, wenn Sie sich verschieben, und wie sich `/cd` von `/add-dir` unterscheidet, siehe [Sitzung in ein anderes Verzeichnis verschieben](/docs/de/permissions#move-the-session-to-another-directory) |

69| `/chrome` | Konfigurieren Sie [Claude in Chrome](/docs/de/chrome)-Einstellungen |69| `/chrome` | Konfigurieren Sie [Claude in Chrome](/docs/de/chrome)-Einstellungen |

70| `/claude-api [migrate\|upgrade\|managed-agents-onboard\|prompt-audit\|cost-optimize\|build-eval\|hillclimb]` | **[Skill](/docs/de/skills#bundled-skills).** Laden Sie [Claude API](https://platform.claude.com/docs/en/api/overview)- und [Managed Agents](https://platform.claude.com/docs/en/managed-agents/overview)-Referenzmaterial für die Sprache Ihres Projekts. Wird auch automatisch aktiviert, wenn Ihr Code `anthropic` oder `@anthropic-ai/sdk` importiert. Führen Sie `migrate` aus, um vorhandenen Claude API-Code auf ein neueres Modell zu aktualisieren. Führen Sie `upgrade` aus, um die Anthropic SDK-Abhängigkeit Ihres Projekts über eine Hauptversion zu verschieben, derzeit das Python-Paket `anthropic` von 0.x zu 1.x. Führen Sie `managed-agents-onboard` für eine Anleitung aus, die einen neuen Managed Agent erstellt. Führen Sie `prompt-audit` aus, um Anweisungen zu kennzeichnen, die für ältere Modelle in Ihren Prompts, Skills und Tool-Beschreibungen geschrieben wurden, und schlagen Sie Fixes als Diff vor. Führen Sie `cost-optimize` aus, um zu profilieren, wohin die Claude API-Ausgaben Ihres Projekts gehen, und schlagen Sie Einsparungen aus Optionen wie Prompt-Caching, Trimmen unnötiger Input- und Output-Token, Batch-Verarbeitung, Aufwand und Modellwahl vor, eine Änderung nach der anderen. Führen Sie `build-eval` aus, um einen Eval-Satz für Ihre Claude-gestützte App zu erstellen, und `hillclimb`, um die App iterativ gegen einen vorhandenen Eval zu verbessern. Der Subbefehl `prompt-audit` erfordert Claude Code v2.1.221 oder später, `upgrade` erfordert v2.1.236 oder später, `cost-optimize` erfordert v2.1.247 oder später, und `build-eval` und `hillclimb` erfordern v2.1.259 oder später |70| `/claude-api [migrate\|upgrade\|managed-agents-onboard\|prompt-audit\|cost-optimize\|build-eval\|hillclimb]` | **[Skill](/docs/de/skills#bundled-skills).** Laden Sie [Claude API](https://platform.claude.com/docs/en/api/overview)- und [Managed Agents](https://platform.claude.com/docs/en/managed-agents/overview)-Referenzmaterial für die Sprache Ihres Projekts. Wird auch automatisch aktiviert, wenn Ihr Code `anthropic` oder `@anthropic-ai/sdk` importiert. Führen Sie `migrate` aus, um vorhandenen Claude API-Code auf ein neueres Modell zu aktualisieren. Führen Sie `upgrade` aus, um die Anthropic SDK-Abhängigkeit Ihres Projekts über eine Hauptversion zu verschieben, derzeit das Python-Paket `anthropic` von 0.x zu 1.x. Führen Sie `managed-agents-onboard` für eine Anleitung aus, die einen neuen Managed Agent erstellt. Führen Sie `prompt-audit` aus, um Anweisungen zu kennzeichnen, die für ältere Modelle in Ihren Prompts, Skills und Tool-Beschreibungen geschrieben wurden, und schlagen Sie Fixes als Diff vor. Führen Sie `cost-optimize` aus, um zu profilieren, wohin die Claude API-Ausgaben Ihres Projekts gehen, und schlagen Sie Einsparungen aus Optionen wie Prompt-Caching, Trimmen unnötiger Input- und Output-Token, Batch-Verarbeitung, Aufwand und Modellwahl vor, eine Änderung nach der anderen. Führen Sie `build-eval` aus, um einen Eval-Satz für Ihre Claude-gestützte App zu erstellen, und `hillclimb`, um die App iterativ gegen einen vorhandenen Eval zu verbessern. Der Subbefehl `prompt-audit` erfordert Claude Code v2.1.221 oder später, `upgrade` erfordert v2.1.236 oder später, `cost-optimize` erfordert v2.1.247 oder später, und `build-eval` und `hillclimb` erfordern v2.1.259 oder später |

71| `/clear [name]` | Starten Sie eine neue Konversation mit leerem Kontext. Übergeben Sie einen Namen, um die vorherige Konversation in der `/resume`-Auswahl zu kennzeichnen. Um Kontext freizugeben und gleichzeitig die gleiche Konversation fortzusetzen, verwenden Sie stattdessen `/compact`. Setzen Sie die vorherige Konversation mit `/resume` fort, oder stellen Sie sie in demselben Claude Code-Prozess wieder her, aus [dem Rewind-Menü-Eintrag der vorherigen Sitzung](/docs/de/checkpointing#rewind-past-a-cleared-conversation). Der Rewind-Eintrag erfordert Claude Code v2.1.191 oder später. Aliase: `/reset`, `/new` |71| `/clear [name]` | Starten Sie eine neue Konversation mit leerem Kontext. Übergeben Sie einen Namen, um die vorherige Konversation in der `/resume`-Auswahl zu kennzeichnen. Um Kontext freizugeben und gleichzeitig die gleiche Konversation fortzusetzen, verwenden Sie stattdessen `/compact`. Setzen Sie die vorherige Konversation mit `/resume` fort, oder stellen Sie sie in demselben Claude Code-Prozess wieder her, aus [dem Rewind-Menü-Eintrag der vorherigen Sitzung](/docs/de/checkpointing#rewind-past-a-cleared-conversation). Aliase: `/reset`, `/new` |

72| `/code-review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [pr#\|branch\|path]` | **[Skill](/docs/de/skills#bundled-skills).** Überprüfen Sie den aktuellen Diff oder eine PR-Nummer, einen Branch oder einen Pfad, den Sie übergeben, auf Korrektheitsfehler. Je nach Ihrem Modell und Aufwandsebene deckt die Überprüfung auch Bereinigungsmöglichkeiten ab. Übergeben Sie `--fix`, um Erkenntnisse anzuwenden, `--comment`, um sie auf dem GitHub PR oder GitLab Merge Request zu posten, oder `ultra`, um eine tiefe [Cloud-Überprüfung](/docs/de/ultrareview) auszuführen. Das Posten auf einem GitLab Merge Request erfordert Claude Code v2.1.257 oder später. Mit `ultra` auf einem `github.com`-PR-Ziel übergeben Sie `--post`, um [das Posten der fertigen Erkenntnisse zum PR](/docs/de/ultrareview#post-findings-to-the-pull-request) im Launch-Dialog vorzuwählen; `--post` erfordert Claude Code v2.1.227 oder später. Siehe [Diff lokal überprüfen](/docs/de/code-review#review-a-diff-locally) für die Aufwandsebenen, Zielbestimmung und wie es sich auf `/simplify` bezieht. Alias: `/review` |72| `/code-review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [pr#\|branch\|path]` | **[Skill](/docs/de/skills#bundled-skills).** Überprüfen Sie den aktuellen Diff oder eine PR-Nummer, einen Branch oder einen Pfad, den Sie übergeben, auf Korrektheitsfehler. Je nach Ihrem Modell und Aufwandsebene deckt die Überprüfung auch Bereinigungsmöglichkeiten ab. Übergeben Sie `--fix`, um Erkenntnisse anzuwenden, `--comment`, um sie auf dem GitHub PR oder GitLab Merge Request zu posten, oder `ultra`, um eine tiefe [Cloud-Überprüfung](/docs/de/ultrareview) auszuführen. Das Posten auf einem GitLab Merge Request erfordert Claude Code v2.1.257 oder später. Mit `ultra` auf einem `github.com`-PR-Ziel übergeben Sie `--post`, um [das Posten der fertigen Erkenntnisse zum PR](/docs/de/ultrareview#post-findings-to-the-pull-request) im Launch-Dialog vorzuwählen; `--post` erfordert Claude Code v2.1.227 oder später. Siehe [Diff lokal überprüfen](/docs/de/code-review#review-a-diff-locally) für die Aufwandsebenen, Zielbestimmung und wie es sich auf `/simplify` bezieht. Alias: `/review` |

73| `/color [color\|default]` | Legen Sie die Farbe der Eingabeaufforderungsleiste für die aktuelle Sitzung fest. Verfügbare Farben: `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `cyan`. Verwenden Sie `default`, um zurückzusetzen, oder führen Sie ohne Argument aus, um eine zufällige Farbe zu wählen. Wenn [Remote Control](/docs/de/remote-control) verbunden ist, wird die Farbe mit claude.ai/code synchronisiert. Auch im nicht-interaktiven Modus (`-p`) verfügbar; erfordert Claude Code v2.1.205 oder später |73| `/color [color\|default]` | Legen Sie die Farbe der Eingabeaufforderungsleiste für die aktuelle Sitzung fest. Verfügbare Farben: `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `cyan`. Verwenden Sie `default`, um zurückzusetzen, oder führen Sie ohne Argument aus, um eine zufällige Farbe zu wählen. Wenn [Remote Control](/docs/de/remote-control) verbunden ist, wird die Farbe mit claude.ai/code synchronisiert. Auch im nicht-interaktiven Modus (`-p`) verfügbar; erfordert Claude Code v2.1.205 oder später |

74| `/compact [instructions]` | Geben Sie Kontext frei, indem Sie die bisherige Konversation zusammenfassen. Übergeben Sie optional Fokusanweisungen für die Zusammenfassung. Siehe [wie Komprimierung Regeln, Skills und Memory-Dateien handhabt](/docs/de/context-window#what-survives-compaction) |74| `/compact [instructions]` | Geben Sie Kontext frei, indem Sie die bisherige Konversation zusammenfassen. Übergeben Sie optional Fokusanweisungen für die Zusammenfassung. Siehe [wie Komprimierung Regeln, Skills und Memory-Dateien handhabt](/docs/de/context-window#what-survives-compaction) |


116| `/passes` | Teilen Sie eine kostenlose Woche Claude Code mit Freunden. Nur sichtbar, wenn Ihr Konto berechtigt ist |116| `/passes` | Teilen Sie eine kostenlose Woche Claude Code mit Freunden. Nur sichtbar, wenn Ihr Konto berechtigt ist |

117| `/permissions` | Verwalten Sie Zulassen-, Fragen- und Ablehnen-Regeln für Tool-Berechtigungen. Öffnet einen interaktiven Dialog, in dem Sie Regeln nach Umfang anzeigen, Regeln hinzufügen oder entfernen, Arbeitsverzeichnisse verwalten und [kürzliche Auto-Modus-Ablehnungen](/docs/de/auto-mode-config#review-denials) überprüfen können. Sie können auch [Auto-Modus-Klassifizierer-Regeln](/docs/de/auto-mode-config#edit-rules-from-permissions) aus der Registerkarte **Auto-Modus** des Dialogs anzeigen und bearbeiten. Wenn Sie ihn ausführen, während Claude antwortet, öffnet Claude Code den Dialog sofort und wendet Ihre Änderungen ab Claudes nächstem Tool-Aufruf in derselben Runde an. Vor v2.1.234 stellte Claude Code den Befehl in die Warteschlange, bis die Runde beendet war. Alias: `/allowed-tools` |117| `/permissions` | Verwalten Sie Zulassen-, Fragen- und Ablehnen-Regeln für Tool-Berechtigungen. Öffnet einen interaktiven Dialog, in dem Sie Regeln nach Umfang anzeigen, Regeln hinzufügen oder entfernen, Arbeitsverzeichnisse verwalten und [kürzliche Auto-Modus-Ablehnungen](/docs/de/auto-mode-config#review-denials) überprüfen können. Sie können auch [Auto-Modus-Klassifizierer-Regeln](/docs/de/auto-mode-config#edit-rules-from-permissions) aus der Registerkarte **Auto-Modus** des Dialogs anzeigen und bearbeiten. Wenn Sie ihn ausführen, während Claude antwortet, öffnet Claude Code den Dialog sofort und wendet Ihre Änderungen ab Claudes nächstem Tool-Aufruf in derselben Runde an. Vor v2.1.234 stellte Claude Code den Befehl in die Warteschlange, bis die Runde beendet war. Alias: `/allowed-tools` |

118| `/plan [description]` | Geben Sie den Plan-Modus direkt aus der Eingabeaufforderung ein. Übergeben Sie eine optionale Beschreibung, um den Plan-Modus einzugeben und sofort mit dieser Aufgabe zu beginnen, z. B. `/plan fix the auth bug` |118| `/plan [description]` | Geben Sie den Plan-Modus direkt aus der Eingabeaufforderung ein. Übergeben Sie eine optionale Beschreibung, um den Plan-Modus einzugeben und sofort mit dieser Aufgabe zu beginnen, z. B. `/plan fix the auth bug` |

119| `/plugin [subcommand]` | Verwalten Sie Claude Code [Plugins](/docs/de/plugins). Führen Sie ohne Argument aus, um das Plugin-Menü zu öffnen, oder übergeben Sie einen Subbefehl wie `list`, `install`, `enable` oder `disable`, um direkt zu handeln. Claude Code kann ein Plugin während der Installation aktivieren; die [Installationszusammenfassung](/docs/de/discover-plugins#install-plugins) teilt Ihnen mit, ob es das tat oder ob Sie `/reload-plugins` ausführen sollten |119| `/plugin [subcommand]` | Verwalten Sie Claude Code [Plugins](/docs/de/plugins/overview). Führen Sie ohne Argument aus, um das Plugin-Menü zu öffnen, oder übergeben Sie einen Subbefehl wie `list`, `install`, `enable` oder `disable`, um direkt zu handeln. Claude Code kann ein Plugin während der Installation aktivieren; die [Installationszusammenfassung](/docs/de/plugins/install#install-a-plugin) teilt Ihnen mit, ob es das tat oder ob Sie `/reload-plugins` ausführen sollten |

120| `/powerup` | Entdecken Sie Claude Code-Funktionen durch schnelle interaktive Lektionen mit animierten Demos |120| `/powerup` | Entdecken Sie Claude Code-Funktionen durch schnelle interaktive Lektionen mit animierten Demos |

121| `/pr-comments [PR]` | Entfernt in v2.1.91. Bitten Sie Claude direkt, Pull-Request-Kommentare anzuzeigen. In früheren Versionen ruft und zeigt Kommentare aus einem GitHub Pull Request ab; erkennt automatisch den PR für den aktuellen Branch oder übergeben Sie eine PR-URL oder -Nummer. Erfordert die `gh`-CLI |121| `/pr-comments [PR]` | Entfernt in v2.1.91. Bitten Sie Claude direkt, Pull-Request-Kommentare anzuzeigen. In früheren Versionen ruft und zeigt Kommentare aus einem GitHub Pull Request ab; erkennt automatisch den PR für den aktuellen Branch oder übergeben Sie eine PR-URL oder -Nummer. Erfordert die `gh`-CLI |

122| `/privacy-settings` | Sehen Sie sich Ihre Datenschutzeinstellungen an und aktualisieren Sie sie. Nur verfügbar für Pro- und Max-Plan-Abonnenten |122| `/privacy-settings` | Sehen Sie sich Ihre Datenschutzeinstellungen an und aktualisieren Sie sie. Nur verfügbar für Pro- und Max-Plan-Abonnenten |


124| `/rate-limit-options` | Zeigen Sie Möglichkeiten, weiterzuarbeiten, wenn ein claude.ai-Nutzungslimit eine Anfrage blockiert: warten und [automatisch fortfahren, wenn das Limit zurückgesetzt wird](/docs/de/interactive-mode#wait-for-a-usage-limit-to-reset), [Nutzungsguthaben](/docs/de/costs#add-usage-credits-to-your-subscription) hinzufügen oder Ihren Plan upgraden. Claude Code kann dieses Menü auch von selbst öffnen, wenn Sie ein Limit an Ihrem eigenen Terminal erreichen. Siehe [Automatisches Fortfahren ausschalten](/docs/de/interactive-mode#turn-automatic-continue-off). Erfordert ein claude.ai-Abonnement. Wird nicht im Befehlsmenü angezeigt; geben Sie es vollständig ein. Die Warte- und Fortfahren-Zeilen erfordern Claude Code v2.1.234 oder später |124| `/rate-limit-options` | Zeigen Sie Möglichkeiten, weiterzuarbeiten, wenn ein claude.ai-Nutzungslimit eine Anfrage blockiert: warten und [automatisch fortfahren, wenn das Limit zurückgesetzt wird](/docs/de/interactive-mode#wait-for-a-usage-limit-to-reset), [Nutzungsguthaben](/docs/de/costs#add-usage-credits-to-your-subscription) hinzufügen oder Ihren Plan upgraden. Claude Code kann dieses Menü auch von selbst öffnen, wenn Sie ein Limit an Ihrem eigenen Terminal erreichen. Siehe [Automatisches Fortfahren ausschalten](/docs/de/interactive-mode#turn-automatic-continue-off). Erfordert ein claude.ai-Abonnement. Wird nicht im Befehlsmenü angezeigt; geben Sie es vollständig ein. Die Warte- und Fortfahren-Zeilen erfordern Claude Code v2.1.234 oder später |

125| `/recap` | Generieren Sie eine einzeilige Zusammenfassung der aktuellen Sitzung auf Anfrage. Siehe [Sitzungs-Recap](/docs/de/interactive-mode#session-recap) für das automatische Recap, das angezeigt wird, nachdem Sie weg waren |125| `/recap` | Generieren Sie eine einzeilige Zusammenfassung der aktuellen Sitzung auf Anfrage. Siehe [Sitzungs-Recap](/docs/de/interactive-mode#session-recap) für das automatische Recap, das angezeigt wird, nachdem Sie weg waren |

126| `/release-notes` | Sehen Sie sich das Changelog in einem interaktiven Versions-Picker an. Wählen Sie eine bestimmte Version aus, um ihre Release Notes zu sehen, oder wählen Sie, um alle Versionen anzuzeigen. Die Notizen erscheinen in Ihrem Transkript, ohne in die Konversation einzutreten, die Claude sieht |126| `/release-notes` | Sehen Sie sich das Changelog in einem interaktiven Versions-Picker an. Wählen Sie eine bestimmte Version aus, um ihre Release Notes zu sehen, oder wählen Sie, um alle Versionen anzuzeigen. Die Notizen erscheinen in Ihrem Transkript, ohne in die Konversation einzutreten, die Claude sieht |

127| `/reload-plugins [--force]` | Laden Sie alle aktiven [Plugins](/docs/de/plugins) neu, um ausstehende Änderungen anzuwenden, ohne neu zu starten. Meldet Anzahlen für jede neu geladene Komponente und kennzeichnet alle Ladefehler. Wenn das Neuladen ändern würde, welche MCP-Tools geladen werden und den Prompt-Cache ungültig machen würde, warnt der Befehl und überspringt, es sei denn, Sie übergeben `--force`. Auch im nicht-interaktiven Modus (`-p`), dem Agent SDK und der Desktop-App verfügbar, wo es nur bei direkt in die Sitzung eingegebener Eingabe ausgeführt wird und Plugin-MCP-Server-Änderungen nicht anwendet; erfordert Claude Code v2.1.260 oder später. Siehe [Plugin-Änderungen ohne Neustart anwenden](/docs/de/discover-plugins#apply-plugin-changes-without-restarting) |127| `/reload-plugins [--force]` | Laden Sie alle aktiven [Plugins](/docs/de/plugins/overview) neu, um ausstehende Änderungen anzuwenden, ohne neu zu starten. Meldet Anzahlen für jede neu geladene Komponente und kennzeichnet alle Ladefehler. Wenn das Neuladen ändern würde, welche MCP-Tools geladen werden und den Prompt-Cache ungültig machen würde, warnt der Befehl und überspringt, es sei denn, Sie übergeben `--force`. Auch im nicht-interaktiven Modus (`-p`), dem Agent SDK und der Desktop-App verfügbar, wo es nur bei direkt in die Sitzung eingegebener Eingabe ausgeführt wird und Plugin-MCP-Server-Änderungen nicht anwendet; erfordert Claude Code v2.1.260 oder später. Siehe [Plugin-Änderungen ohne Neustart anwenden](/docs/de/plugins/cli-reference#reload-plugins) |

128| `/reload-skills` | Scannen Sie [Skill](/docs/de/skills)- und Befehlsverzeichnisse erneut, damit Skills, die während der Sitzung auf der Festplatte hinzugefügt oder geändert wurden, ohne Neustart verfügbar werden. Meldet, wie viele Skills verfügbar sind und wie viele hinzugefügt oder entfernt wurden |128| `/reload-skills` | Scannen Sie [Skill](/docs/de/skills)- und Befehlsverzeichnisse erneut, damit Skills, die während der Sitzung auf der Festplatte hinzugefügt oder geändert wurden, ohne Neustart verfügbar werden. Meldet, wie viele Skills verfügbar sind und wie viele hinzugefügt oder entfernt wurden |

129| `/remote-control` | Machen Sie diese Sitzung für [Remote Control](/docs/de/remote-control) von claude.ai verfügbar. Das Ausführen während der Abmeldung druckt, dass Remote Control ein claude.ai-Abonnement erfordert, und teilt Ihnen mit, wie Sie sich anmelden; vor v2.1.206 meldete es `Unknown command: /remote-control`. Alias: `/rc` |129| `/remote-control` | Machen Sie diese Sitzung für [Remote Control](/docs/de/remote-control) von claude.ai verfügbar. Das Ausführen während der Abmeldung druckt, dass Remote Control ein claude.ai-Abonnement erfordert, und teilt Ihnen mit, wie Sie sich anmelden; vor v2.1.206 meldete es `Unknown command: /remote-control`. Alias: `/rc` |

130| `/remote-env` | Wählen Sie die Standard-[Cloud-Umgebung](/docs/de/cloud-environments#select-an-environment-from-the-cli) für Cloud-Sitzungen, die Sie von der CLI aus starten |130| `/remote-env` | Wählen Sie die Standard-[Cloud-Umgebung](/docs/de/cloud-environments#select-an-environment-from-the-cli) für Cloud-Sitzungen, die Sie von der CLI aus starten |

Details

110 110 

111 * Seien Sie spezifisch bei dem, was Sie suchen111 * Seien Sie spezifisch bei dem, was Sie suchen

112 * Verwenden Sie Domänensprache aus dem Projekt112 * Verwenden Sie Domänensprache aus dem Projekt

113 * Installieren Sie ein [Code-Intelligence-Plugin](/docs/de/discover-plugins#code-intelligence) für Ihre Sprache, um Claude präzise 'Go to Definition"- und „Find References"-Navigation zu geben113 * Installieren Sie ein [Code-Intelligence-Plugin](/docs/de/plugins/code-intelligence) für Ihre Sprache, um Claude präzise „Go to Definition"- und „Find References"-Navigation zu geben

114</Tip>114</Tip>

115 115 

116***116***

costs.md +1 −1

Details

290 Installieren Sie Code-Intelligence-Plugins für typisierte Sprachen290 Installieren Sie Code-Intelligence-Plugins für typisierte Sprachen

291</h3>291</h3>

292 292 

293[Code-Intelligence-Plugins](/docs/de/discover-plugins#code-intelligence) geben Claude präzise Symbol-Navigation statt textbasierter Suche, wodurch unnötige Dateileser beim Erkunden unbekannten Codes reduziert werden. Ein einzelner „Gehe zu Definition"-Aufruf ersetzt, was sonst ein Grep gefolgt vom Lesen mehrerer Kandidatendateien sein könnte. Installierte Sprachserver melden auch Typfehler automatisch nach Bearbeitungen, sodass Claude Fehler erkennt, ohne einen Compiler auszuführen.293[Code-Intelligence-Plugins](/docs/de/plugins/code-intelligence) geben Claude präzise Symbol-Navigation statt textbasierter Suche, wodurch unnötige Dateileser beim Erkunden unbekannten Codes reduziert werden. Ein einzelner „Gehe zu Definition"-Aufruf ersetzt, was sonst ein Grep gefolgt vom Lesen mehrerer Kandidatendateien sein könnte. Installierte Sprachserver melden auch Typfehler automatisch nach Bearbeitungen, sodass Claude Fehler erkennt, ohne einen Compiler auszuführen.

294 294 

295<h3 id="offload-processing-to-hooks-and-skills">295<h3 id="offload-processing-to-hooks-and-skills">

296 Verlagern Sie die Verarbeitung auf Hooks und Skills296 Verlagern Sie die Verarbeitung auf Hooks und Skills

Details

109| Hook wird nie ausgelöst | `matcher` ist ein JSON-Array statt einer Zeichenkette | Verwenden Sie eine einzelne Zeichenkette mit `\|`, um mehrere Tools zu entsprechen, z. B. `"Edit\|Write"`. Siehe [Matcher-Muster](/docs/de/hooks#matcher-patterns). |109| Hook wird nie ausgelöst | `matcher` ist ein JSON-Array statt einer Zeichenkette | Verwenden Sie eine einzelne Zeichenkette mit `\|`, um mehrere Tools zu entsprechen, z. B. `"Edit\|Write"`. Siehe [Matcher-Muster](/docs/de/hooks#matcher-patterns). |

110| Hook wird nie ausgelöst | `matcher` verwendet `,` als Trennzeichen in einer Version vor v2.1.191 | Claude Code v2.1.191 oder später behandelt `,` als Listentrennzeichen wie `\|`. Frühere Versionen bewerten ein Komma als Literalzeichen, daher entspricht `"Edit,Write"` nichts. Verwenden Sie stattdessen `\|`, oder aktualisieren Sie Claude Code. |110| Hook wird nie ausgelöst | `matcher` verwendet `,` als Trennzeichen in einer Version vor v2.1.191 | Claude Code v2.1.191 oder später behandelt `,` als Listentrennzeichen wie `\|`. Frühere Versionen bewerten ein Komma als Literalzeichen, daher entspricht `"Edit,Write"` nichts. Verwenden Sie stattdessen `\|`, oder aktualisieren Sie Claude Code. |

111| Hook wird nie ausgelöst | `matcher`-Wert ist Kleinbuchstaben, z. B. `"bash"` | Matching ist Groß-/Kleinschreibung-empfindlich. Tool-Namen werden großgeschrieben: `Bash`, `Edit`, `Write`, `Read`. |111| Hook wird nie ausgelöst | `matcher`-Wert ist Kleinbuchstaben, z. B. `"bash"` | Matching ist Groß-/Kleinschreibung-empfindlich. Tool-Namen werden großgeschrieben: `Bash`, `Edit`, `Write`, `Read`. |

112| Hook wird nie ausgelöst | Hooks befinden sich in einer eigenständigen Datei statt in `settings.json` | Es gibt keine eigenständige Hooks-Datei für Projekt- oder Benutzerkonfiguration. Definieren Sie Hooks unter dem Schlüssel `"hooks"` in `settings.json`. Nur [Plugins](/docs/de/plugins-reference#hooks) laden eine separate `hooks/hooks.json`. Siehe [Hook-Konfiguration](/docs/de/hooks). |112| Hook wird nie ausgelöst | Hooks befinden sich in einer eigenständigen Datei statt in `settings.json` | Es gibt keine eigenständige Hooks-Datei für Projekt- oder Benutzerkonfiguration. Definieren Sie Hooks unter dem Schlüssel `"hooks"` in `settings.json`. Nur [Plugins](/docs/de/plugins/components#hooks) laden eine separate `hooks/hooks.json`. Siehe [Hook-Konfiguration](/docs/de/hooks). |

113| Berechtigungen, Hooks oder global gesetzte Umgebungsvariablen werden ignoriert | Konfiguration wurde zu `~/.claude.json` hinzugefügt | `~/.claude.json` enthält App-Status und UI-Umschalter. `permissions`, `hooks` und `env` gehören zu `~/.claude/settings.json`. Dies sind zwei verschiedene Dateien. |113| Berechtigungen, Hooks oder global gesetzte Umgebungsvariablen werden ignoriert | Konfiguration wurde zu `~/.claude.json` hinzugefügt | `~/.claude.json` enthält App-Status und UI-Umschalter. `permissions`, `hooks` und `env` gehören zu `~/.claude/settings.json`. Dies sind zwei verschiedene Dateien. |

114| Ein `settings.json`-Wert scheint ignoriert zu werden | Derselbe Schlüssel ist in `settings.local.json` gesetzt | `settings.local.json` überschreibt `settings.json`, und beide überschreiben `~/.claude/settings.json`. Siehe [Einstellungspriorität](/docs/de/settings#settings-precedence). |114| Ein `settings.json`-Wert scheint ignoriert zu werden | Derselbe Schlüssel ist in `settings.local.json` gesetzt | `settings.local.json` überschreibt `settings.json`, und beide überschreiben `~/.claude/settings.json`. Siehe [Einstellungspriorität](/docs/de/settings#settings-precedence). |

115| Skill erscheint nicht in `/skills` | Skill-Datei befindet sich unter `.claude/skills/name.md` statt in einem Ordner | Verwenden Sie einen Ordner mit `SKILL.md` darin: `.claude/skills/name/SKILL.md`. |115| Skill erscheint nicht in `/skills` | Skill-Datei befindet sich unter `.claude/skills/name.md` statt in einem Ordner | Verwenden Sie einen Ordner mit `SKILL.md` darin: `.claude/skills/name/SKILL.md`. |

desktop.md +6 −6

Details

472 472 

473Verbinden Sie externe Dienste, fügen Sie wiederverwendbare Workflows hinzu, passen Sie Claudes Verhalten an und konfigurieren Sie Vorschauserver. Um Connectors, Skills und Plugins an einem Ort zu verwalten, klicken Sie auf **Anpassen** in der Seitenleiste. Die [Cowork](https://claude.com/product/cowork)-Registerkarte in der Desktop-App bezieht ihre Skills, Plugins und Connectors aus dieser Anpassungskonfiguration, die über Ihr claude.ai-Konto synchronisiert wird, nicht aus dem CLI-Verzeichnis `~/.claude`.473Verbinden Sie externe Dienste, fügen Sie wiederverwendbare Workflows hinzu, passen Sie Claudes Verhalten an und konfigurieren Sie Vorschauserver. Um Connectors, Skills und Plugins an einem Ort zu verwalten, klicken Sie auf **Anpassen** in der Seitenleiste. Die [Cowork](https://claude.com/product/cowork)-Registerkarte in der Desktop-App bezieht ihre Skills, Plugins und Connectors aus dieser Anpassungskonfiguration, die über Ihr claude.ai-Konto synchronisiert wird, nicht aus dem CLI-Verzeichnis `~/.claude`.

474 474 

475Claude Code lädt auch die Skills und Plugins, die für Ihr claude.ai-Konto aktiviert sind, in Terminalsitzungen, in denen Sie sich mit demselben Konto anmelden. Siehe [Skills synchronisiert von claude.ai](/docs/de/skills#how-synced-skills-behave) und [Plugins synchronisiert von claude.ai](/docs/de/plugins-reference#synced-plugins).475Claude Code lädt auch die Skills und Plugins, die für Ihr claude.ai-Konto aktiviert sind, in Terminalsitzungen, in denen Sie sich mit demselben Konto anmelden. Siehe [Skills synchronisiert von claude.ai](/docs/de/skills#how-synced-skills-behave) und [Plugins synchronisiert von claude.ai](/docs/de/plugins/loading#synced-plugins).

476 476 

477<h3 id="connect-external-tools">477<h3 id="connect-external-tools">

478 Externe Tools verbinden478 Externe Tools verbinden


490 Skills verwenden490 Skills verwenden

491</h3>491</h3>

492 492 

493[Skills](/docs/de/skills) erweitern, was Claude tun kann. Claude lädt sie automatisch, wenn sie relevant sind, oder Sie können eine direkt aufrufen: Geben Sie `/` im Eingabefeld ein oder klicken Sie auf die Schaltfläche **+** und wählen Sie **Slash-Befehle** aus, um zu sehen, was verfügbar ist. Dies umfasst [integrierte Befehle](/docs/de/commands), Ihre [benutzerdefinierten Skills](/docs/de/skills#create-your-first-skill), Projekt-Skills aus Ihrer Codebasis und Skills aus allen [installierten Plugins](/docs/de/plugins). Wählen Sie einen aus und er wird im Eingabefeld hervorgehoben angezeigt. Geben Sie Ihre Aufgabe danach ein und senden Sie wie gewohnt.493[Skills](/docs/de/skills) erweitern, was Claude tun kann. Claude lädt sie automatisch, wenn sie relevant sind, oder Sie können eine direkt aufrufen: Geben Sie `/` im Eingabefeld ein oder klicken Sie auf die Schaltfläche **+** und wählen Sie **Slash-Befehle** aus, um zu sehen, was verfügbar ist. Dies umfasst [integrierte Befehle](/docs/de/commands), Ihre [benutzerdefinierten Skills](/docs/de/skills#create-your-first-skill), Projekt-Skills aus Ihrer Codebasis und Skills aus allen [installierten Plugins](/docs/de/plugins/install). Wählen Sie einen aus und er wird im Eingabefeld hervorgehoben angezeigt. Geben Sie Ihre Aufgabe danach ein und senden Sie wie gewohnt.

494 494 

495Sie können einen Befehl senden, während Claude arbeitet, genauso wie jede andere Nachricht, und die Sitzung kehrt in den Leerlauf zurück, sobald der Zug beendet ist. Vor v2.1.206 konnte ein während des Zugs gesendeter Befehl die Sitzung als laufend anzeigen lassen und Nachrichten, die Sie danach sendeten, wurden nicht zugestellt.495Sie können einen Befehl senden, während Claude arbeitet, genauso wie jede andere Nachricht, und die Sitzung kehrt in den Leerlauf zurück, sobald der Zug beendet ist. Vor v2.1.206 konnte ein während des Zugs gesendeter Befehl die Sitzung als laufend anzeigen lassen und Nachrichten, die Sie danach sendeten, wurden nicht zugestellt.

496 496 


502 Plugins installieren502 Plugins installieren

503</h3>503</h3>

504 504 

505[Plugins](/docs/de/plugins) sind wiederverwendbare Pakete, die Skills, Agents, Hooks, MCP-Server und LSP-Konfigurationen zu Claude Code hinzufügen. Sie können Plugins aus der Desktop-App installieren, ohne das Terminal zu verwenden.505[Plugins](/docs/de/plugins/overview) sind wiederverwendbare Pakete, die Skills, Agents, Hooks, MCP-Server und LSP-Konfigurationen zu Claude Code hinzufügen. Sie können Plugins aus der Desktop-App installieren, ohne das Terminal zu verwenden.

506 506 

507Für lokale und [SSH](#ssh-sessions)-Sitzungen klicken Sie auf die Schaltfläche **+** neben dem Eingabefeld und wählen Sie **Plugins** aus, um Ihre installierten Plugins und deren Skills zu sehen. Um ein Plugin hinzuzufügen, wählen Sie **Plugin hinzufügen** aus dem Untermenü, um den Plugin-Browser zu öffnen, der verfügbare Plugins aus Ihren konfigurierten [Marketplaces](/docs/de/plugin-marketplaces) einschließlich des offiziellen Anthropic-Marketplace anzeigt. Wählen Sie **Plugins verwalten** aus, um Plugins zu aktivieren, zu deaktivieren oder zu deinstallieren.507Für lokale und [SSH](#ssh-sessions)-Sitzungen klicken Sie auf die Schaltfläche **+** neben dem Eingabefeld und wählen Sie **Plugins** aus, um Ihre installierten Plugins und deren Skills zu sehen. Um ein Plugin hinzuzufügen, wählen Sie **Plugin hinzufügen** aus dem Untermenü, um den Plugin-Browser zu öffnen, der verfügbare Plugins aus Ihren konfigurierten [Marketplaces](/docs/de/plugins/overview) einschließlich des offiziellen Anthropic-Marketplace anzeigt. Wählen Sie **Plugins verwalten** aus, um Plugins zu aktivieren, zu deaktivieren oder zu deinstallieren.

508 508 

509Sie können Plugins auf Ihr Benutzerkonto, ein bestimmtes Projekt oder nur lokal beschränken. Wenn Ihre Organisation Plugins zentral verwaltet, sind diese Plugins in Desktop-Sitzungen auf die gleiche Weise verfügbar wie in der CLI.509Sie können Plugins auf Ihr Benutzerkonto, ein bestimmtes Projekt oder nur lokal beschränken. Wenn Ihre Organisation Plugins zentral verwaltet, sind diese Plugins in Desktop-Sitzungen auf die gleiche Weise verfügbar wie in der CLI.

510 510 

511Der Plugin-Browser ist in Cloud-Sitzungen nicht verfügbar, und Plugins, die Sie aus der Desktop-App installieren, sind nicht für Cloud-Sitzungen verfügbar. Eine Cloud-Sitzung installiert auch keine Plugins, die das Repository unter `.claude/settings.json` deklariert, wie [Was wird aus Ihrer Einrichtung übernommen](/docs/de/cloud-environments#what-carries-over-from-your-setup) erklärt. Um ein Plugin in einer Cloud-Sitzung zu verwenden, aktivieren Sie es für Ihr claude.ai-Konto, damit Claude Code es als [synchronisiertes Plugin](/docs/de/plugins-reference#synced-plugins) lädt. Plugins sind in WSL-Sitzungen nicht verfügbar. Für die vollständige Plugin-Referenz einschließlich der Erstellung eigener Plugins siehe [Plugins](/docs/de/plugins).511Der Plugin-Browser ist in Cloud-Sitzungen nicht verfügbar, und Plugins, die Sie aus der Desktop-App installieren, sind nicht für Cloud-Sitzungen verfügbar. Eine Cloud-Sitzung installiert auch keine Plugins, die das Repository unter `.claude/settings.json` deklariert, wie [Was wird aus Ihrer Einrichtung übernommen](/docs/de/cloud-environments#what-carries-over-from-your-setup) erklärt. Plugins sind in WSL-Sitzungen nicht verfügbar. Für die vollständige Plugin-Referenz einschließlich der Erstellung eigener Plugins siehe [Plugins](/docs/de/plugins/overview).

512 512 

513<h3 id="configure-preview-servers">513<h3 id="configure-preview-servers">

514 Vorschauserver konfigurieren514 Vorschauserver konfigurieren


1023| Berechtigungsmodi | Alle Modi einschließlich `dontAsk` | Manuell, Bearbeitungen akzeptieren, Plan und Auto. Bypass-Berechtigungen erscheinen im Moduswahlschalter, sobald aktiviert: über den Einstellungsschalter auf Pro- und Max-Plänen oder über die Organisationsrichtlinie auf Team- und Enterprise-Plänen |1023| Berechtigungsmodi | Alle Modi einschließlich `dontAsk` | Manuell, Bearbeitungen akzeptieren, Plan und Auto. Bypass-Berechtigungen erscheinen im Moduswahlschalter, sobald aktiviert: über den Einstellungsschalter auf Pro- und Max-Plänen oder über die Organisationsrichtlinie auf Team- und Enterprise-Plänen |

1024| [Drittanbieter-Provider](/docs/de/third-party-integrations) | Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry | Anthropic's API standardmäßig. Für Gateway-Routing siehe [Desktop-App mit einem Gateway verbinden](/docs/de/llm-gateway-connect#desktop-app). Um die Code-Registerkarte auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder einem selbstgehosteten LLM-Gateway auszuführen, siehe [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview). |1024| [Drittanbieter-Provider](/docs/de/third-party-integrations) | Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry | Anthropic's API standardmäßig. Für Gateway-Routing siehe [Desktop-App mit einem Gateway verbinden](/docs/de/llm-gateway-connect#desktop-app). Um die Code-Registerkarte auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder einem selbstgehosteten LLM-Gateway auszuführen, siehe [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview). |

1025| [MCP-Server](/docs/de/mcp) | In Einstellungsdateien konfigurieren | Konnektoren-UI für lokale und SSH-Sitzungen oder Einstellungsdateien |1025| [MCP-Server](/docs/de/mcp) | In Einstellungsdateien konfigurieren | Konnektoren-UI für lokale und SSH-Sitzungen oder Einstellungsdateien |

1026| [Plugins](/docs/de/plugins) | `/plugin`-Befehl | Plugin-Manager-UI |1026| [Plugins](/docs/de/plugins/overview) | `/plugin`-Befehl | Plugin-Manager-UI |

1027| @mention-Dateien | Textbasiert | Mit Autovervollständigung; lokale und SSH-Sitzungen nur |1027| @mention-Dateien | Textbasiert | Mit Autovervollständigung; lokale und SSH-Sitzungen nur |

1028| Dateianhänge | Nicht verfügbar | Bilder, PDFs |1028| Dateianhänge | Nicht verfügbar | Bilder, PDFs |

1029| Sitzungsisolation | [`--worktree`](/docs/de/cli-reference)-Flag | **worktree**-Option beim Starten einer Sitzung |1029| Sitzungsisolation | [`--worktree`](/docs/de/cli-reference)-Flag | **worktree**-Option beim Starten einer Sitzung |

discover-plugins.md +0 −651 deleted

File Deleted View Diff

1> ## Documentation Index

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

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

4 

5# Entdecken und installieren Sie vorgefertigte Plugins über Marktplätze

6 

7> Finden und installieren Sie Plugins aus Marktplätzen, um Claude Code mit neuen Befähigungen, Agenten und Funktionen zu erweitern.

8 

9Plugins erweitern Claude Code mit Befähigungen, Agenten, Hooks und MCP-Servern. Plugin-Marktplätze sind Kataloge, die Ihnen helfen, diese Erweiterungen zu entdecken und zu installieren, ohne sie selbst zu erstellen.

10 

11Sie können Plugins auch auf claude.ai aktivieren, für sich selbst oder über Ihre Organisation. Claude Code synchronisiert diese in Ihre Sitzungen ohne eine Marktplatz-Installation, wie [Plugins, die von claude.ai synchronisiert werden](/docs/de/plugins-reference#synced-plugins) beschreibt.

12 

13Möchten Sie Ihren eigenen Marktplatz erstellen und verteilen? Siehe [Erstellen und verteilen Sie einen Plugin-Marktplatz](/docs/de/plugin-marketplaces).

14 

15<h2 id="how-marketplaces-work">

16 Wie Marktplätze funktionieren

17</h2>

18 

19Ein Marktplatz ist ein Katalog von Plugins, die jemand anderes erstellt und geteilt hat. Die Verwendung eines Marktplatzes ist ein zweistufiger Prozess:

20 

21<Steps>

22 <Step title="Fügen Sie den Marktplatz hinzu">

23 Dies registriert den Katalog bei Claude Code, damit Sie durchsuchen können, was verfügbar ist. Es werden noch keine Plugins installiert.

24 </Step>

25 

26 <Step title="Installieren Sie einzelne Plugins">

27 Durchsuchen Sie den Katalog und installieren Sie die Plugins, die Sie möchten.

28 </Step>

29</Steps>

30 

31<h2 id="official-anthropic-marketplace">

32 Offizieller Anthropic-Marktplatz

33</h2>

34 

35Claude Code fügt den offiziellen Anthropic-Marktplatz (`claude-plugins-official`) automatisch beim ersten interaktiven Start hinzu. Falls Claude Code ihn nicht hinzufügen kann, beispielsweise weil Ihr Netzwerk den Download blockiert oder eine [Marktplatz-Richtlinie](/docs/de/plugin-marketplaces#managed-marketplace-restrictions) einen früheren Versuch blockiert hat, fügen Sie ihn selbst mit `/plugin marketplace add anthropics/claude-plugins-official` hinzu.

36 

37Um zu sehen, was verfügbar ist, führen Sie `/plugin` aus und gehen Sie zur Registerkarte **Discover**, oder sehen Sie sich den Katalog unter [claude.com/plugins](https://claude.com/plugins) an.

38 

39Um ein Plugin aus dem offiziellen Marktplatz zu installieren, verwenden Sie `/plugin install <name>@claude-plugins-official`. Um beispielsweise die GitHub-Integration zu installieren:

40 

41```shell theme={null}

42/plugin install github@claude-plugins-official

43```

44 

45`/plugin` öffnet ein interaktives Panel in der Terminal-CLI. Falls Claude meldet, dass `/plugin` in dieser Umgebung nicht verfügbar ist, installieren Sie das Plugin auf andere Weise:

46 

47* **Claude-Desktop-App**: Verwenden Sie den [Plugin-Browser](/docs/de/desktop#install-plugins).

48* **VS Code-Erweiterung**: Installieren Sie aus dem [Dialog **Plugins verwalten**](/docs/de/vs-code#manage-plugins).

49* **Cloud-Sitzungen**: Aktivieren Sie das Plugin für Ihr claude.ai-Konto, damit Claude Code es als [synchronisiertes Plugin](/docs/de/plugins-reference#synced-plugins) lädt.

50 

51Falls die Installation fehlschlägt, vergleichen Sie die Meldung, die Claude Code meldet:

52 

53* `Marketplace "claude-plugins-official" not found`: Fügen Sie den Marktplatz mit `/plugin marketplace add anthropics/claude-plugins-official` hinzu, und versuchen Sie dann die Installation erneut.

54* Das Plugin wird [im Marktplatz nicht gefunden](#install-plugins): Überprüfen Sie den Plugin-Namen.

55 

56<Note>

57 Der offizielle Marktplatz wird von Anthropic kuratiert, und die Aufnahme liegt im Ermessen von Anthropic. Die In-App-Einreichungsformulare fügen Plugins zum [Community-Marktplatz](#community-marketplace) hinzu, nicht zum offiziellen. Um Plugins unabhängig zu verteilen, [erstellen Sie Ihren eigenen Marktplatz](/docs/de/plugin-marketplaces) und teilen Sie ihn mit Benutzern.

58</Note>

59 

60Der offizielle Marktplatz umfasst mehrere Plugin-Kategorien:

61 

62<h3 id="code-intelligence">

63 Code-Intelligenz

64</h3>

65 

66Code-Intelligenz-Plugins aktivieren das integrierte LSP-Tool von Claude Code und geben Claude die Möglichkeit, zu Definitionen zu springen, Referenzen zu finden und Typfehler unmittelbar nach Bearbeitungen zu sehen. Diese Plugins konfigurieren [Language Server Protocol](https://microsoft.github.io/language-server-protocol/)-Verbindungen, die gleiche Technologie, die die Code-Intelligenz von VS Code antreibt. In [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) startet Claude Code keine Plugin-Sprachserver, daher erhält Claude dort nicht das LSP-Tool.

67 

68Installieren Sie die Sprachserver-Binärdatei aus der folgenden Tabelle, bevor Sie diese Plugins verwenden; das Plugin installiert sie nicht für Sie. Falls Sie bereits einen Sprachserver installiert haben, kann Claude Sie auffordern, das entsprechende Plugin zu installieren, wenn Sie ein Projekt öffnen.

69 

70| Sprache | Plugin | Erforderliche Binärdatei |

71| :--------- | :------------------ | :--------------------------- |

72| C/C++ | `clangd-lsp` | `clangd` |

73| C# | `csharp-lsp` | `csharp-ls` |

74| Go | `gopls-lsp` | `gopls` |

75| Java | `jdtls-lsp` | `jdtls` |

76| Kotlin | `kotlin-lsp` | `kotlin-language-server` |

77| Lua | `lua-lsp` | `lua-language-server` |

78| PHP | `php-lsp` | `intelephense` |

79| Python | `pyright-lsp` | `pyright-langserver` |

80| Rust | `rust-analyzer-lsp` | `rust-analyzer` |

81| Swift | `swift-lsp` | `sourcekit-lsp` |

82| TypeScript | `typescript-lsp` | `typescript-language-server` |

83 

84Sie können auch [Ihr eigenes LSP-Plugin erstellen](/docs/de/plugins-reference#lsp-servers) für andere Sprachen.

85 

86<Note>

87 Falls Sie nach der Installation eines Plugins `Executable not found in $PATH` in der Registerkarte `/plugin` Errors sehen, installieren Sie die Binärdatei, die die Tabelle [Code-Intelligenz](#code-intelligence) für dieses Plugin auflistet.

88</Note>

89 

90<h4 id="what-claude-gains-from-code-intelligence-plugins">

91 Was Claude durch Code-Intelligenz-Plugins gewinnt

92</h4>

93 

94Sobald ein Code-Intelligenz-Plugin installiert ist und seine Sprachserver-Binärdatei verfügbar ist, erhält Claude zwei Funktionen:

95 

96* **Automatische Diagnose**: Nach jeder Dateibearbeitung, die Claude vornimmt, meldet der Sprachserver Fehler und Warnungen zurück, sodass Claude Typfehler, fehlende Importe und Syntaxprobleme sieht, ohne einen Compiler oder Linter auszuführen. Falls Claude einen Fehler einführt, bemerkt es ihn und behebt ihn in derselben Runde.

97* **Code-Navigation**: Claude kann den Sprachserver verwenden, um zu Definitionen zu springen, Referenzen zu finden, Typinformationen beim Hovern zu erhalten, Symbole aufzulisten, Implementierungen zu finden und Call-Hierarchien zu verfolgen. Diese Operationen geben Claude eine präzisere Navigation als grep-basierte Suche, obwohl die Verfügbarkeit je nach Sprache und Umgebung variieren kann.

98 

99Sie müssen die Diagnose nicht über die Installation des Plugins hinaus konfigurieren. Um sie selbst zu lesen, drücken Sie **Ctrl+O**, wenn Claude Code einen Indikator wie **Found 3 new diagnostic issues in 2 files** anzeigt.

100 

101Falls Sie auf Probleme stoßen, siehe [Code-Intelligenz-Fehlerbehebung](#code-intelligence-issues).

102 

103<h3 id="external-integrations">

104 Externe Integrationen

105</h3>

106 

107Diese Plugins bündeln vorkonfigurierte [MCP-Server](/docs/de/mcp), sodass Sie Claude mit externen Diensten verbinden können, ohne manuelle Einrichtung:

108 

109* **Versionskontrolle**: `github`, `gitlab`

110* **Projektmanagement**: `atlassian` (Jira/Confluence), `asana`, `linear`, `notion`

111* **Design**: `figma`

112* **Infrastruktur**: `vercel`, `firebase`, `supabase`

113* **Kommunikation**: `slack`

114* **Überwachung**: `sentry`

115 

116<h3 id="automatic-security-review">

117 Automatische Sicherheitsüberprüfung

118</h3>

119 

120Das Plugin `security-guidance` überprüft jede Änderung, die Claude vornimmt, auf häufige Sicherheitslücken und weist Claude an, das Gefundene in derselben Sitzung zu beheben. Siehe [Sicherheitsprobleme erfassen, während Claude Code schreibt](/docs/de/security-guidance) für das, was es überprüft und wie Sie projektspezifische Regeln hinzufügen.

121 

122<h3 id="development-workflows">

123 Entwicklungs-Workflows

124</h3>

125 

126Plugins, die Skills und Agents für häufige Entwicklungsaufgaben hinzufügen:

127 

128* **commit-commands**: Git-Commit-Workflows einschließlich Commit, Push und PR-Erstellung

129* **pr-review-toolkit**: spezialisierte Agents für die Überprüfung von Pull Requests

130* **agent-sdk-dev**: Tools zum Erstellen mit dem Claude Agent SDK

131* **plugin-dev**: Toolkit zum Erstellen Ihrer eigenen Plugins

132 

133<h3 id="output-styles">

134 Ausgabestile

135</h3>

136 

137Passen Sie an, wie Claude antwortet:

138 

139* **explanatory-output-style**: pädagogische Einblicke in Implementierungsentscheidungen

140* **learning-output-style**: interaktiver Lernmodus zum Aufbau von Fähigkeiten

141 

142<h2 id="community-marketplace">

143 Community-Marktplatz

144</h2>

145 

146Der Community-Marktplatz unter [`anthropics/claude-plugins-community`](https://github.com/anthropics/claude-plugins-community) hostet Plugins von Drittanbietern, die Anthropics automatisierte Validierung und Sicherheitsprüfung bestanden haben. Jedes Plugin ist an einen bestimmten Commit-SHA im Katalog gebunden. Im Gegensatz zum offiziellen Marktplatz fügen Sie ihn manuell hinzu:

147 

148```shell theme={null}

149/plugin marketplace add anthropics/claude-plugins-community

150```

151 

152Installieren Sie dann Plugins von ihm mit dem Marktplatznamen `claude-community`:

153 

154```shell theme={null}

155/plugin install <plugin-name>@claude-community

156```

157 

158Um Ihr eigenes Plugin zum Community-Marktplatz einzureichen, siehe [Reichen Sie Ihr Plugin beim Community-Marktplatz ein](/docs/de/plugins#submit-your-plugin-to-the-community-marketplace) im Leitfaden zum Erstellen von Plugins.

159 

160<h2 id="try-it-add-the-demo-marketplace">

161 Probieren Sie es aus: Fügen Sie den Demo-Marktplatz hinzu

162</h2>

163 

164Anthropic verwaltet auch einen [Demo-Plugins-Marktplatz](https://github.com/anthropics/claude-code/tree/main/plugins) (`claude-code-plugins`) mit Beispiel-Plugins, die zeigen, was mit dem Plugin-System möglich ist. Im Gegensatz zum offiziellen Marktplatz müssen Sie diesen manuell hinzufügen.

165 

166<Steps>

167 <Step title="Fügen Sie den Marktplatz hinzu">

168 Führen Sie in Claude Code den Befehl `plugin marketplace add` für den Marktplatz `anthropics/claude-code` aus:

169 

170 ```shell theme={null}

171 /plugin marketplace add anthropics/claude-code

172 ```

173 

174 Dies lädt den Marktplatz-Katalog herunter und macht seine Plugins für Sie verfügbar.

175 </Step>

176 

177 <Step title="Durchsuchen Sie verfügbare Plugins">

178 Führen Sie `/plugin` aus, um den Plugin-Manager zu öffnen. Dies öffnet eine Schnittstelle mit Registerkarten, die Sie mit **Tab** durchlaufen können, oder **Shift+Tab**, um rückwärts zu gehen:

179 

180 * **Discover**: Durchsuchen Sie verfügbare Plugins aus allen Ihren Marktplätzen

181 * **Installed**: Zeigen Sie Ihre installierten Plugins an und verwalten Sie sie

182 * **Marketplaces**: Fügen Sie Marktplätze hinzu, entfernen Sie sie oder aktualisieren Sie sie

183 * **Errors**: Zeigen Sie alle Plugin-Ladefehler an

184 * **Stats**: Sehen Sie [, was jeder Ihrer Skills an Kontext kostet und wie oft er verwendet wird](/docs/de/skills#find-unused-skills), in Sitzungen, in denen `/skill-doctor` verfügbar ist

185 

186 Gehen Sie zur Registerkarte **Discover**, um Plugins aus dem Marktplatz zu sehen, den Sie gerade hinzugefügt haben. Wenn Ihr Administrator den Marktplatz über die verwaltete Einstellung [`pluginSuggestionMarketplaces`](/docs/de/settings-reference#pluginsuggestionmarketplaces) auf die Whitelist gesetzt hat, werden Plugins, die für Ihr aktuelles Arbeitsverzeichnis relevant sind, oben mit einer Bezeichnung **suggested for this directory** angeheftet.

187 </Step>

188 

189 <Step title="Installieren Sie ein Plugin">

190 Wählen Sie ein Plugin aus, um seine Details anzuzeigen. Der Detailbereich zeigt, was das Plugin enthält und was es kostet:

191 

192 * Eine **Context cost**-Schätzung, damit Sie sehen können, wie viele Token das Plugin zu Ihrem [Kontextfenster](/docs/de/features-overview#understand-context-costs) bei jedem Durchgang hinzufügt

193 * Das **Last updated**-Datum des Plugins

194 * Ein **Will install**-Bereich, der die Befehle, Agenten, Skills, Hooks und MCP- und LSP-Server des Plugins auflistet, damit Sie genau überprüfen können, was es hinzufügt, bevor Sie es installieren

195 

196 Nicht jedes Plugin stellt die Daten hinter diesen Feldern bereit. Für Plugins aus lokalen oder benutzerdefinierten Marktplätzen werden möglicherweise die Zeilen **Context cost** und **Last updated** nicht angezeigt, und der Bereich **Will install** zeigt möglicherweise stattdessen **Components will be discovered at installation** an.

197 

198 Wählen Sie einen Installationsbereich:

199 

200 * **User scope**: Installieren Sie für sich selbst in allen Projekten

201 * **Project scope**: Installieren Sie für alle Mitarbeiter in diesem Repository

202 * **Local scope**: Installieren Sie für sich selbst nur in diesem Repository

203 

204 Wählen Sie beispielsweise **commit-commands** (ein Plugin, das Git-Workflow-Skills hinzufügt) und installieren Sie es in Ihrem Benutzerbereich.

205 

206 Sie können auch direkt über die Befehlszeile installieren:

207 

208 ```shell theme={null}

209 /plugin install commit-commands@claude-code-plugins

210 ```

211 

212 Siehe [Einstellungsdateien](/docs/de/settings#where-settings-live), um mehr über Bereiche zu erfahren.

213 </Step>

214 

215 <Step title="Verwenden Sie Ihr neues Plugin">

216 Wenn die Installationszusammenfassung `Run /reload-plugins to activate.` meldet, führt Claude Code dann dieses Neuladen für Sie aus. Wenn das Neuladen warnt, dass Ihre nächste Nachricht das Gespräch erneut lesen würde, führen Sie `/reload-plugins --force` aus, um das Plugin zu aktivieren.

217 

218 Plugin-Skills werden nach dem Plugin-Namen benannt, daher bietet **commit-commands** Skills wie `/commit-commands:commit`.

219 

220 Probieren Sie es aus, indem Sie eine Änderung an einer Datei vornehmen und ausführen:

221 

222 ```shell theme={null}

223 /commit-commands:commit

224 ```

225 

226 Dies stellt Ihre Änderungen bereit, generiert eine Commit-Nachricht und erstellt den Commit.

227 

228 Jedes Plugin funktioniert anders. Überprüfen Sie die Details des Plugins in der Registerkarte **Discover**, um zu sehen, welche Befehle und Skills es bietet, oder besuchen Sie seine Homepage für Anleitung zur Verwendung.

229 </Step>

230</Steps>

231 

232<h2 id="add-marketplaces">

233 Marktplätze hinzufügen

234</h2>

235 

236Verwenden Sie den Befehl `/plugin marketplace add`, um Marktplätze aus verschiedenen Quellen hinzuzufügen.

237 

238<Tip>

239 **Verknüpfungen**: Sie können `/plugin market` anstelle von `/plugin marketplace` verwenden und `rm` anstelle von `remove`.

240</Tip>

241 

242* **GitHub-Repositories**: Format `owner/repo` (z. B. `anthropics/claude-code`)

243* **Git-URLs**: Beliebige Git-Repository-URL (GitLab, Bitbucket, selbstgehostet)

244* **Lokale Pfade**: Verzeichnisse oder direkte Pfade zu `marketplace.json`-Dateien

245* **Remote-URLs**: Direkte URLs zu gehosteten `marketplace.json`-Dateien

246* **claude.ai**: Marktplätze, die auf claude.ai für Ihr Konto gehostet werden, z. B. die Plugin-Bibliothek Ihrer Organisation, die Sie [nach Name auf der Registerkarte **Marktplätze** oder in Ihrer Shell hinzufügen](#add-from-claude-ai), anstatt nach Quelle

247 

248<h3 id="add-from-github">

249 Hinzufügen von GitHub

250</h3>

251 

252Fügen Sie ein GitHub-Repository hinzu, das eine `.claude-plugin/marketplace.json`-Datei enthält, indem Sie das Format `owner/repo` verwenden – wobei `owner` der GitHub-Benutzername oder die Organisation und `repo` der Repository-Name ist.

253 

254Beispielsweise bezieht sich `anthropics/claude-code` auf das Repository `claude-code`, das sich im Besitz von `anthropics` befindet:

255 

256```shell theme={null}

257/plugin marketplace add anthropics/claude-code

258```

259 

260<h3 id="add-from-other-git-hosts">

261 Hinzufügen von anderen Git-Hosts

262</h3>

263 

264Fügen Sie ein Git-Marketplace-Repository hinzu, indem Sie die vollständige URL angeben. Für eine `https://`-URL hängt es vom Host ab, ob das Suffix `.git` einzufügen ist:

265 

266* **`github.com` und `gitlab.com`**: Claude Code erkennt eine Repository-URL mit oder ohne das Suffix `.git` und klont sie. Das Hinzufügen einer `gitlab.com`-URL ohne das Suffix erfordert Claude Code v2.1.232 oder später. Vor v2.1.232 behandelte Claude Code sie als direkten Link zu einer gehosteten `marketplace.json`-Datei.

267* **Azure DevOps**: Lassen Sie das Suffix weg. Claude Code klont jede URL, deren Pfad `/_git/` enthält. Wenn Sie `.git` an einen `/_git/`-Pfad anhängen, schlägt das Klonen fehl.

268* **Alle anderen Hosts, einschließlich selbstverwalteter GitLab-Server**: Fügen Sie das Suffix `.git` ein, damit Claude Code das Repository klont, anstatt die URL als direkten Link zu einer gehosteten `marketplace.json`-Datei zu behandeln. Für einen Host, dessen Klon-URLs das Suffix nicht tragen, wie AWS CodeCommit, fügen Sie den Marktplatz stattdessen als Git-Eintrag in [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces) hinzu. Claude Code klont einen Git-Eintrag unabhängig davon, ob die URL mit `.git` endet oder nicht.

269 

270Claude Code klont auch eine `gitlab.com`-URL mit verschachtelten Untergruppen, wie `https://gitlab.com/group/subgroup/project`.

271 

272Fügen Sie das Präfix `https://` ein. Claude Code v2.1.196 und später lehnen einen Host ab, der ohne Präfix eingegeben wird, z. B. `gitlab.com/company/plugins.git`, als ungültige GitHub-`owner/repo`-Kurzform ab, und die Fehlermeldung weist Sie an, das Präfix hinzuzufügen. Frühere Versionen interpretieren es fälschlicherweise als GitHub-Repository-Pfad und schlagen beim Klonen fehl.

273 

274Mit HTTPS:

275 

276```shell theme={null}

277/plugin marketplace add https://gitlab.com/company/plugins.git

278```

279 

280Mit SSH:

281 

282```shell theme={null}

283/plugin marketplace add git@gitlab.com:company/plugins.git

284```

285 

286Claude Code klont eine SSH-Adresse unabhängig davon, ob sie mit `.git` endet oder nicht.

287 

288Um einen bestimmten Branch oder Tag hinzuzufügen, hängen Sie `#` gefolgt von der Referenz an:

289 

290```shell theme={null}

291/plugin marketplace add https://gitlab.com/company/plugins.git#v1.0.0

292```

293 

294<h3 id="add-from-local-paths">

295 Hinzufügen von lokalen Pfaden

296</h3>

297 

298Fügen Sie ein lokales Verzeichnis hinzu, das eine `.claude-plugin/marketplace.json`-Datei enthält:

299 

300```shell theme={null}

301/plugin marketplace add ./my-marketplace

302```

303 

304Sie können auch einen direkten Pfad zu einer `marketplace.json`-Datei hinzufügen:

305 

306```shell theme={null}

307/plugin marketplace add ./path/to/marketplace.json

308```

309 

310<h3 id="add-from-remote-urls">

311 Hinzufügen von Remote-URLs

312</h3>

313 

314Fügen Sie eine Remote-`marketplace.json`-Datei über URL hinzu:

315 

316```shell theme={null}

317/plugin marketplace add https://example.com/marketplace.json

318```

319 

320<Note>

321 URL-basierte Marktplätze haben einige Einschränkungen im Vergleich zu Git-basierten Marktplätzen. Wenn beim Installieren von Plugins Fehler auftreten, siehe [Fehlerbehebung](/docs/de/plugin-marketplaces#plugins-with-relative-paths-fail-in-url-based-marketplaces).

322</Note>

323 

324<h3 id="add-from-claude-ai">

325 Hinzufügen von claude.ai

326</h3>

327 

328In Terminal-Sitzungen, in denen [Plugins von Ihrem claude.ai-Konto synchronisiert werden](/docs/de/plugins-reference#synced-plugins), kann claude.ai auch Marktplätze für Sie auflisten, z. B. die Plugin-Bibliothek Ihrer Organisation und Ihre eigenen claude.ai-Uploads. `claude plugin marketplace list` gibt sie in einem Abschnitt `From claude.ai:` aus, und die Registerkarte `/plugin` **Marktplätze** listet sie auf. Wählen Sie einen dort aus, um ihn hinzuzufügen. Das Hinzufügen eines Marktplatzes von claude.ai erfordert Claude Code v2.1.273 oder später.

329 

330Um einen von Ihrer Shell aus hinzuzufügen, führen Sie `claude plugin marketplace add` mit dem Flag `--claudeai` und dem in der Liste angezeigten Namen aus:

331 

332```bash theme={null}

333claude plugin marketplace add --claudeai claudeai-organization-library

334```

335 

336Claude Code registriert den Marktplatz unter einem lokalen Namen, der mit `claudeai-` beginnt und vom Namen abgeleitet ist, unter dem claude.ai ihn auflistet: Ein Marktplatz, der als „Organization library" aufgelistet ist, wird als `claudeai-organization-library` registriert. Installieren Sie seine Plugins unter diesem Namen, z. B. mit `claude plugin install <plugin>@claudeai-organization-library`.

337 

338Wenn Sie sich abmelden oder mit einem anderen Konto anmelden, bleibt der Marktplatz konfiguriert, zeigt aber keine Plugins an, und die Plugins, die Sie bereits von ihm installiert haben, werden weiterhin geladen.

339 

340Der Abschnitt `From claude.ai:` kann auch Git-basierte Marktplätze auflisten, die über claude.ai freigegeben werden. Sie fügen diese mit dem gewöhnlichen Befehl `marketplace add` hinzu und verwenden die Quelle, die die Liste ausgibt.

341 

342<h2 id="install-plugins">

343 Installieren Sie Plugins

344</h2>

345 

346Nachdem Sie Marktplätze hinzugefügt haben, können Sie ein Plugin nach Name installieren. Für einen Marktplatz, den Sie noch nicht hinzugefügt haben, können Sie stattdessen [ihn hinzufügen und in einem Befehl installieren](#add-a-marketplace-and-install-in-one-command).

347 

348Um nach Name zu installieren:

349 

350```shell theme={null}

351/plugin install plugin-name@marketplace-name

352```

353 

354Der Befehl öffnet die Details dieses Plugins, wo Sie einen [Installationsbereich](/docs/de/settings#where-settings-live) wählen. Sie sehen die gleichen Optionen, wenn Sie `/plugin` ausführen, zur Registerkarte **Discover** gehen und **Enter** auf einem Plugin drücken:

355 

356* **User scope**: Installieren Sie für sich selbst in allen Projekten

357* **Project scope**: Installieren Sie für alle Mitarbeiter in diesem Repository, was das Plugin zu `.claude/settings.json` hinzufügt

358* **Local scope**: Installieren Sie für sich selbst nur in diesem Repository, nicht mit Mitarbeitern geteilt

359 

360Um ohne einen interaktiven Schritt zu installieren, verwenden Sie den [`claude plugin install`](/docs/de/plugins-reference#plugin-install) Shell-Befehl, der im Benutzerbereich installiert, es sei denn, Sie übergeben `--scope`. Für ein Plugin mit einer [`command`-Quelle](/docs/de/plugin-marketplaces#how-users-accept-the-command) übergeben Sie `--yes`, um den angezeigten Befehl zu akzeptieren.

361 

362Sie können auch Plugins mit **managed**-Bereich sehen. Diese werden von Administratoren über [verwaltete Einstellungen](/docs/de/managed-settings) installiert und können nicht geändert werden.

363 

364Claude Code sucht das Plugin in seiner lokalen Kopie des Marktplatzkatalogs. Wie Sie das Plugin benennen, bestimmt, ob Claude Code diese Kopie zuerst aktualisiert:

365 

366* **Mit einem Marktplatznamen**: Wenn Sie `plugin-name@marketplace-name` installieren, aktualisiert Claude Code in einer Sitzung oder mit `claude plugin install` diesen Marktplatz vor der Suche. Claude Code führt die Aktualisierung auch aus, wenn Sie [Auto-Update](#configure-auto-updates) für den Marktplatz deaktiviert haben oder `DISABLE_AUTOUPDATER` gesetzt haben. Vor v2.1.232 aktualisierte Claude Code den Marktplatz vor der Suche nicht. Claude Code überspringt diese Aktualisierung, wenn:

367 * Der Marktplatz nicht [von GitHub, einem anderen Git-Host, einer Remote-URL](#add-marketplaces) oder [claude.ai](#add-from-claude-ai) hinzugefügt wurde.

368 * Ein [Seed-Verzeichnis](/docs/de/plugin-marketplaces#pre-populate-plugins-for-containers) den Marktplatz bereitstellt.

369 * Claude Code den Marktplatz in den letzten 30 Sekunden aktualisiert hat.

370 * Sie [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/de/env-vars) gesetzt haben.

371 * [Verwaltete Einstellungen](/docs/de/plugin-marketplaces#managed-marketplace-restrictions) blockieren den Marktplatz. In diesem Fall weigert sich Claude Code auch, die Installation durchzuführen.

372* **Nur Plugin-Name**: Wenn Sie `/plugin install plugin-name` in einer Sitzung ausführen, aktualisiert Claude Code nur die Marktplätze, die es auch [im Hintergrund aktualisiert](#configure-auto-updates), und nur nach einer fehlgeschlagenen Suche. Wenn Sie `claude plugin install plugin-name` ausführen, liest Claude Code die zwischengespeicherten Kataloge ohne Aktualisierung. Um ein Plugin zu installieren, das nach Ihrer letzten Aktualisierung veröffentlicht wurde, führen Sie `/plugin marketplace update <marketplace-name>` in einer Sitzung oder [`claude plugin marketplace update <marketplace-name>`](/docs/de/plugin-marketplaces#plugin-marketplace-update) in Ihrer Shell aus und versuchen Sie dann die Installation erneut.

373 

374Wenn die Aktualisierung vor einer benannten Installation fehlschlägt, beispielsweise weil Sie offline sind, sucht Claude Code das Plugin trotzdem im zwischengespeicherten Katalog. `claude plugin install` meldet `marketplace not refreshed` in seiner Erfolgsmeldung, und `/plugin install` zeigt den Fehler über den Plugin-Details oder in seiner Nicht-gefunden-Meldung.

375 

376Wenn Sie von der `/plugin`-Schnittstelle aus installieren, teilt Ihnen die Installationszusammenfassung mit, ob das Plugin in Ihrer aktuellen Sitzung aktiv ist:

377 

378* `Plugin is now active.`: Claude Code hat das Plugin als Teil der Installation aktiviert.

379* `Run /reload-plugins to activate.`: Das Plugin ist noch nicht aktiv, da die Aktivierung [den Prompt-Cache ungültig machen würde](/docs/de/prompt-caching#enabling-or-disabling-a-plugin) oder da der Aktivierungsversuch fehlgeschlagen ist. Claude Code führt dann `/reload-plugins` für Sie aus. Wenn diese Neuladen vor dem Prompt-Cache warnt, führen Sie `/reload-plugins --force` aus, um [das Plugin trotzdem zu aktivieren](#apply-plugin-changes-without-restarting).

380* Wenn das Plugin nicht geladen wird, meldet die Zusammenfassung den Fehler und die Registerkarte `/plugin` **Errors** zeigt die Details.

381 

382Vor v2.1.221 trat keine Installation in der aktuellen Sitzung in Kraft, bis Sie `/reload-plugins` ausführten oder neu starteten.

383 

384Der Shell-Befehl `claude plugin install` wird nicht in einer Sitzung ausgeführt, daher lädt Claude Code die Plugins, die er installiert, beim nächsten Start von Claude Code oder wenn Sie `/reload-plugins` in einer bereits offenen Sitzung ausführen.

385 

386<Warning>

387 Stellen Sie sicher, dass Sie einem Plugin vertrauen, bevor Sie es installieren. Anthropic kontrolliert nicht, welche MCP-Server, Dateien oder andere Software in Plugins enthalten sind, und kann nicht überprüfen, dass sie wie beabsichtigt funktionieren. Überprüfen Sie die Homepage jedes Plugins für weitere Informationen.

388</Warning>

389 

390<h3 id="add-a-marketplace-and-install-in-one-command">

391 Fügen Sie einen Marktplatz hinzu und installieren Sie in einem Befehl

392</h3>

393 

394Um ein Plugin von einem Marktplatz zu installieren, den Sie noch nicht hinzugefügt haben, benennen Sie die Marktplatzquelle mit `--marketplace`. Erfordert Claude Code v2.1.275 oder später.

395 

396```shell theme={null}

397/plugin install quality-review-plugin --marketplace your-org/plugins

398```

399 

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

401 

402Claude Code zeigt die aufgelöste Quelle an und fragt Sie zur Bestätigung, bevor Sie den Marktplatz hinzufügen. Das Ablehnen bricht die Installation ab und fügt nichts hinzu. Sobald der Marktplatz hinzugefügt ist, öffnen sich die Plugin-Details und Sie wählen einen [Installationsbereich](/docs/de/settings#where-settings-live). Wenn die Quelle einem Marktplatz entspricht, den Sie bereits hinzugefügt haben, überspringt Claude Code die Bestätigung und öffnet die Plugin-Details in diesem Marktplatz.

403 

404<h2 id="manage-installed-plugins">

405 Verwalten Sie installierte Plugins

406</h2>

407 

408Führen Sie `/plugin` aus und gehen Sie zur Registerkarte **Installed**, um Ihre Plugins anzuzeigen, zu aktivieren, zu deaktivieren oder zu deinstallieren. Die Liste ist nach Bereich gruppiert und sortiert, sodass Sie zuerst Probleme sehen: Plugins mit Ladefehlern oder ungelösten Abhängigkeiten erscheinen oben, gefolgt von Ihren Favoriten, mit deaktivierten Plugins, die hinter einem eingeklappten Header am unteren Rand verborgen sind.

409 

410Aus der Liste können Sie:

411 

412* `f` drücken, um das ausgewählte Plugin zu favorisieren oder zu entfavorisieren

413* eingeben, um nach Plugin-Name oder Beschreibung zu filtern

414* Enter drücken, um die Detailansicht eines Plugins zu öffnen und es zu aktivieren, zu deaktivieren oder zu deinstallieren

415 

416Claude Code listet auch die [Plugins auf, die von Ihrem claude.ai-Konto synchronisiert wurden](/docs/de/plugins-reference#synced-plugins) in der Registerkarte **Installed**, mit `synced` als ihrer Quelle. Sie können diese dort aktivieren oder deaktivieren, es sei denn, Ihre Organisation hat sie als erforderlich gekennzeichnet. Um eines zu entfernen, deaktivieren Sie es auf claude.ai. Synchronisierte Plugins erscheinen in Terminal-Sitzungen auf Claude Code v2.1.273 oder später.

417 

418Wenn Sie ein Plugin deinstallieren, das die `.claude/settings.json` eines Projekts aktiviert, fragt Claude Code, welchen Bereich Sie meinen: Deaktivieren Sie es nur für sich selbst, was einen Override in Ihre `.claude/settings.local.json` schreibt und das Plugin für das Projekt installiert lässt, oder deinstallieren Sie es für alle, was es aus der gemeinsamen `.claude/settings.json` entfernt.

419 

420Die Detailansicht zeigt die Komponenten, die das Plugin bereitstellt: Befehle, Skills, Agenten, Hooks, MCP-Server und LSP-Server. Das gleiche Inventar ist über die Befehlszeile mit `claude plugin details` verfügbar.

421 

422Claude Code listet auch Marketplace-Plugins auf, die Sie selbst installiert haben, aber in mindestens zwei Wochen über einen Zeitraum von mindestens 10 Sitzungen nicht verwendet haben, unter einem Header **Not used recently** in der Registerkarte **Installed**. Die Detailansicht zeigt eine Zeile **Last used** für jedes Plugin. Verwenden Sie diese, um Plugins zu finden, die immer noch Startup- und Kontextkosten verursachen, obwohl Sie sie nicht mehr verwenden, und deaktivieren oder deinstallieren Sie diese dann.

423 

424Zwei Arten von Plugins werden niemals als ungenutzt aufgelistet:

425 

426* Plugins, die Ihre Organisation verwaltet oder die Sie mit `--plugin-dir` laden

427* Plugins, die ein Theme, einen Output-Stil, einen Monitor oder einen Workflow bereitstellen, da diese Wert ohne eine zu verfolgbare Invocation liefern

428 

429Der Header **Not used recently** und die Zeile **Last used** sind beide verborgen, wenn Ihre Organisation Marketplaces mit [`strictKnownMarketplaces`](/docs/de/settings-reference#strictknownmarketplaces) einschränkt.

430 

431Ein [Language Server](/docs/de/plugins#add-lsp-servers-to-your-plugin) eines Plugins zählt als verwendet, wenn er Diagnostiken liefert oder eine Code-Navigationsanfrage beantwortet, sodass ein LSP-Plugin, dessen Server in Ihren Sitzungen aktiv ist, nicht als ungenutzt aufgelistet wird. Vor v2.1.203 konnte die Language-Server-Aktivität nicht als Verwendung gezählt werden, sodass Plugins, die einen LSP-Server bereitstellen, vollständig von der Gruppe ausgenommen waren, genauso wie Theme- und Output-Style-Plugins es immer noch sind.

432 

433Die erste Sitzung in einer Version, die Language-Server-Aktivität zählt, setzt auch den Verwendungsdatensatz jedes LSP-Plugins zurück, das noch keine Verwendung aufgezeichnet hatte, sodass Claude Code ein Plugin, das Sie früher installiert haben, nicht als ungenutzt beurteilt, basierend auf Daten, die aufgezeichnet wurden, bevor seine Server-Aktivität verfolgt wurde.

434 

435Wenn Sie ein Plugin installieren, das Abhängigkeiten deklariert, listet die Installationsausgabe auf, welche Abhängigkeiten zusammen mit ihm automatisch installiert wurden.

436 

437Sie können Plugins auch mit direkten Befehlen verwalten:

438 

439* Wenn Sie `/plugin disable`, `/plugin enable` oder `/plugin uninstall` ausführen, öffnet Claude Code das Plugin-Panel, um die Änderung anzuwenden, und lässt es offen. Drücken Sie **Esc**, um das Panel zu schließen, bevor Sie einen anderen Befehl eingeben. [Wenden Sie Plugin-Änderungen an, ohne neu zu starten](#apply-plugin-changes-without-restarting) beschreibt, wann die Änderung in Ihrer Sitzung wirksam wird.

440* Verwenden Sie für Scripting stattdessen die `claude plugin` Shell-Befehle, die das Panel nicht öffnen.

441 

442Installierte Plugins auflisten, ohne das Menü zu öffnen:

443 

444```shell theme={null}

445/plugin list

446```

447 

448Übergeben Sie `--enabled` oder `--disabled`, um nur Plugins in diesem Zustand anzuzeigen.

449 

450Deaktivieren Sie ein Plugin, ohne es zu deinstallieren:

451 

452```shell theme={null}

453/plugin disable plugin-name@marketplace-name

454```

455 

456Aktivieren Sie ein deaktiviertes Plugin erneut:

457 

458```shell theme={null}

459/plugin enable plugin-name@marketplace-name

460```

461 

462In diesen Bezeichnern ist `plugin-name` der `name` des Plugins im [Marketplace-Eintrag](/docs/de/plugin-marketplaces#plugin-entries), der sich vom `name` in der eigenen `plugin.json` des Plugins unterscheiden kann.

463 

464Ab Claude Code v2.1.195 funktionieren **Enable** und **Disable** in der `/plugin`-Schnittstelle für Plugins, deren zwei Namen unterschiedlich sind, und `/plugin enable` und `/plugin disable` akzeptieren beide Namen. Wenn Sie ein solches Plugin in einer früheren Version deaktivieren, meldet Claude Code `already disabled` und lässt es aktiviert.

465 

466Entfernen Sie ein Plugin vollständig:

467 

468```shell theme={null}

469/plugin uninstall plugin-name@marketplace-name

470```

471 

472Die Option `--scope` ermöglicht es Ihnen, einen bestimmten Bereich mit CLI-Befehlen anzusteuern:

473 

474```shell theme={null}

475claude plugin install formatter@your-org --scope project

476claude plugin uninstall formatter@your-org --scope project

477```

478 

479<h3 id="apply-plugin-changes-without-restarting">

480 Wenden Sie Plugin-Änderungen an, ohne neu zu starten

481</h3>

482 

483Wenn Sie das Menü `/plugin` schließen, führt Claude Code `/reload-plugins` für Sie aus, um die Änderungen anzuwenden, die Sie darin vorgenommen haben, wie das Installieren, Aktivieren, Deaktivieren und Deinstallieren von Plugins. Wenn das Neuladen den [Prompt-Cache invalidieren würde](/docs/de/prompt-caching#enabling-or-disabling-a-plugin), warnt es und lässt die Änderungen stattdessen ausstehend; führen Sie `/reload-plugins --force` aus, um sie trotzdem anzuwenden. Wenn Claude noch antwortet, wenn Sie das Menü schließen, wird das Neuladen ausgeführt, nachdem die Antwort beendet ist.

484 

485Für Plugin-Änderungen, die außerhalb des Menüs stattfinden, führen Sie `/reload-plugins` selbst aus. Diese Änderungen umfassen:

486 

487* Ein `claude plugin` Befehl, den Sie in einem anderen Terminal ausgeführt haben

488* Bearbeitungen an einem Plugin, das Sie mit [`--plugin-dir`](/docs/de/plugins#test-your-plugins-locally) geladen haben, während Sie es entwickeln

489* Ein Plugin [Auto-Update](#configure-auto-updates), dessen Benachrichtigung Sie auffordert, neu zu laden

490* Eine [Synchronisierung von Ihrem claude.ai-Konto](/docs/de/plugins-reference#synced-plugins), die ein Plugin hinzugefügt, aktualisiert oder entfernt hat und eine Benachrichtigung angezeigt hat, die Sie auffordert, neu zu laden

491* Eine Änderung in einem [`--plugin-dir` Ordner](/docs/de/plugins#test-your-plugins-locally), die Claude Code hielt, weil das Anwenden den Prompt-Cache invalidieren würde

492 

493Vor v2.1.268 blieben Plugins, die Sie im Menü aktiviert, deaktiviert oder deinstalliert haben, und Installationen, die während der Installation nicht aktiviert wurden, ausstehend, bis Sie `/reload-plugins` ausgeführt haben.

494 

495`/reload-plugins` wird auch in Sitzungen ohne interaktives Terminal ausgeführt, wie die Desktop-App, das Agent SDK und [nicht-interaktiver Modus](/docs/de/headless) mit `-p`. Erfordert Claude Code v2.1.260 oder später. Zwei Limits gelten in diesen Sitzungen:

496 

497* Der Befehl wird nur ausgeführt, wenn Sie ihn direkt in die Sitzung eingeben, wie in der `-p` Eingabeaufforderung oder dem Eingabefeld der Desktop-App. Wenn Sie ihn stattdessen über eine Remote-Verbindung senden, wie [Remote Control](/docs/de/remote-control) oder eine weitergeleitet Chat-Nachricht, lehnt der Befehl ab, ohne etwas neu zu laden.

498* Das Neuladen verbindet oder trennt keine Plugin-MCP-Server. Diese Änderungen treten in Ihrer nächsten Sitzung in Kraft.

499 

500Claude Code lädt alle aktiven Plugins neu und zeigt Zählungen für Plugins, Skills, Agenten, Hooks, Plugin-MCP-Server und Plugin-LSP-Server an, wobei die Plugin-MCP-Server-Zählung in einer Sitzung ohne interaktives Terminal weggelassen wird. In der Skills-Zählung bezieht Claude Code jeden Skill ein, den ein Plugin bereitstellt: sowohl seine `commands/`-Einträge als auch seine `SKILL.md`-Skills. Vor v2.1.246 zählte Claude Code nur `commands/`-Einträge, sodass es einen Plugin-`SKILL.md`-Skill neu laden konnte und immer noch `0 skills` in der Zusammenfassung meldete.

501 

502Das Neuladen hat Tokenkosten bei der nächsten Anfrage: Neu geladene Komponenten kündigen sich in Inhalten an, die zum Gespräch hinzugefügt werden, während der vorhandene Verlauf weiterhin aus dem Prompt-Cache gelesen wird. Ein Plugin, das MCP-Server bereitstellt, kostet mehr, wenn seine Tools nicht durch [Tool-Suche](/docs/de/mcp#scale-with-mcp-tool-search) aufgeschoben werden: Die Änderung invalidiert den Cache und die nächste Anfrage liest das gesamte Gespräch erneut. Siehe [Aktivieren oder Deaktivieren eines Plugins](/docs/de/prompt-caching#enabling-or-disabling-a-plugin) für Details.

503 

504<h2 id="manage-marketplaces">

505 Marktplätze verwalten

506</h2>

507 

508Sie können Marktplätze über die interaktive `/plugin`-Schnittstelle oder mit CLI-Befehlen verwalten.

509 

510<h3 id="use-the-interactive-interface">

511 Verwenden Sie die interaktive Schnittstelle

512</h3>

513 

514Führen Sie `/plugin` aus und gehen Sie zur Registerkarte **Marketplaces**, um:

515 

516* Alle Ihre hinzugefügten Marktplätze mit ihren Quellen und Status anzuzeigen

517* Neue Marktplätze hinzuzufügen

518* Marktplatz-Auflistungen aktualisieren, um die neuesten Plugins abzurufen

519* Marktplätze zu entfernen, die Sie nicht mehr benötigen

520 

521<h3 id="use-cli-commands">

522 Verwenden Sie CLI-Befehle

523</h3>

524 

525Sie können Marktplätze auch mit direkten Befehlen verwalten.

526 

527Listet alle konfigurierten Marktplätze auf:

528 

529```shell theme={null}

530/plugin marketplace list

531```

532 

533Aktualisieren Sie Plugin-Auflistungen von einem Marktplatz:

534 

535```shell theme={null}

536/plugin marketplace update marketplace-name

537```

538 

539Entfernen Sie einen Marktplatz:

540 

541```shell theme={null}

542/plugin marketplace remove marketplace-name

543```

544 

545<Warning>

546 Das Entfernen eines Marktplatzes deinstalliert alle Plugins, die Sie von ihm installiert haben.

547</Warning>

548 

549<h3 id="configure-auto-updates">

550 Konfigurieren Sie automatische Updates

551</h3>

552 

553Claude Code kann Marktplätze und ihre installierten Plugins im Hintergrund nach dem Start automatisch aktualisieren. Wenn die automatische Aktualisierung für einen Marktplatz aktiviert ist, aktualisiert Claude Code die Marktplatzdaten und aktualisiert installierte Plugins auf ihre neuesten Versionen auf der Festplatte.

554 

555Claude Code prüft nach dem Start Ihrer Sitzung auf Marktplatz- und Plugin-Updates mit einer zufälligen Verzögerung von bis zu zehn Minuten, sodass die laufende Sitzung weiterhin die Versionen verwendet, die beim Start geladen wurden. Wenn Plugins aktualisiert wurden, sehen Sie eine Benachrichtigung, die Sie auffordert, `/reload-plugins` auszuführen, oder die neuen Versionen werden beim nächsten Start geladen.

556 

557Die automatische Aktualisierung lässt auch ein Plugin aus, dessen Marktplatz-Eintrag einen `headersHelper` deklariert: Claude Code [führt den Befehl weder aus noch lädt die Archivdatei herunter](/docs/de/plugin-marketplaces#installs-and-updates-that-refuse-the-command-instead-of-asking) auf diesem Pfad; dieser Abschnitt sagt, wann Claude Code das Plugin in der Registerkarte `/plugin` Errors auflistet, damit Sie es aus seiner eigenen Ansicht aktualisieren können.

558 

559Claude Code aktualisiert Plugins, die eine [`command`-Quelle](/docs/de/plugin-marketplaces#command-sources) haben, nach einem separaten Zeitplan von der Marktplatz-Auto-Update-Einstellung und von `DISABLE_AUTOUPDATER`. Stattdessen [führt es den Befehl einmal pro Sitzung erneut aus](/docs/de/plugin-marketplaces#when-claude-code-re-runs-the-command) und installiert die Ausgabe als neue Plugin-Version, wenn sich sein [Hash](/docs/de/plugins-reference#version-management) geändert hat.

560 

561Schalten Sie die automatische Aktualisierung für einzelne Marktplätze über die Benutzeroberfläche um:

562 

5631. Führen Sie `/plugin` aus, um den Plugin-Manager zu öffnen

5642. Wählen Sie **Marketplaces**

5653. Wählen Sie einen Marktplatz aus der Liste

5664. Wählen Sie **Enable auto-update** oder **Disable auto-update**

567 

568`claude-plugins-official`, die meisten anderen offiziellen Anthropic-Marktplätze und [Marktplätze, die von claude.ai hinzugefügt wurden](#add-from-claude-ai) haben die automatische Aktualisierung standardmäßig aktiviert. Marktplätze von Drittanbietern und lokale Entwicklungsmarktplätze haben die automatische Aktualisierung standardmäßig deaktiviert.

569 

570Administratoren können auch `"autoUpdate": true` für jeden [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces)-Eintrag in verwalteten Einstellungen festlegen, um die automatische Aktualisierung für einen Organisationsmarktplatz zu aktivieren, ohne dass jeder Benutzer diese umschalten muss.

571 

572Um automatische Updates für Claude Code und für Plugins, die von Marktplätzen abgerufen werden, zu deaktivieren, setzen Sie die Umgebungsvariable `DISABLE_AUTOUPDATER`. Plugins mit einer [`command`-Quelle](/docs/de/plugin-marketplaces#command-sources) folgen ihrer eigenen einmaligen Auflösung pro Sitzung. Siehe [Auto-Updates](/docs/de/setup#auto-updates) für Details.

573 

574Um Plugin-Auto-Updates aktiviert zu halten und gleichzeitig Claude Code-Auto-Updates zu deaktivieren, setzen Sie `FORCE_AUTOUPDATE_PLUGINS=1` zusammen mit `DISABLE_AUTOUPDATER`:

575 

576```bash theme={null}

577export DISABLE_AUTOUPDATER=1

578export FORCE_AUTOUPDATE_PLUGINS=1

579```

580 

581<h2 id="configure-team-marketplaces">

582 Konfigurieren Sie Team-Marktplätze

583</h2>

584 

585Team-Administratoren können die automatische Marktplatz-Installation für Projekte einrichten, indem sie Marktplatz-Konfiguration zu `.claude/settings.json` hinzufügen. Sobald ein Team-Mitglied dem Repository-Ordner [vertraut](/docs/de/permissions#what-runs-before-you-trust-a-folder), fügt Claude Code diese Marktplätze ohne weitere Aufforderung hinzu.

586 

587Ab Claude Code v2.1.195 installiert das Hinzufügen des Marktplatzes keine Plugins, die aus einer externen Quelle stammen, auf einem beliebigen Pfad, der Plugins lädt. Ein Plugin, das nur die `.claude/settings.json` des Projekts aktiviert und das aus einer externen Quelle wie einem GitHub-Repository oder npm-Paket stammt, wird nicht geladen, bis das Team-Mitglied es installiert. Bis dahin meldet Claude Code das Plugin als nicht installiert und zeigt den Befehl `claude plugin install` an, der ausgeführt werden soll.

588 

589Fügen Sie `extraKnownMarketplaces` zu Ihrer Projekt-`.claude/settings.json` hinzu:

590 

591```json theme={null}

592{

593 "extraKnownMarketplaces": {

594 "my-team-tools": {

595 "source": {

596 "source": "github",

597 "repo": "your-org/claude-plugins"

598 }

599 }

600 }

601}

602```

603 

604Für vollständige Konfigurationsoptionen einschließlich `extraKnownMarketplaces` und `enabledPlugins` siehe [Plugin-Einstellungen](/docs/de/settings-reference#plugin-settings).

605 

606<h2 id="security">

607 Sicherheit

608</h2>

609 

610Plugins und Marktplätze sind hochgradig vertrauenswürdige Komponenten, die beliebigen Code auf Ihrem Computer mit Ihren Benutzerrechten ausführen können. Installieren Sie nur Plugins und fügen Sie Marktplätze aus Quellen hinzu, denen Sie vertrauen. Organisationen können einschränken, welche Marktplätze Benutzer hinzufügen dürfen, indem sie [verwaltete Marktplatz-Einschränkungen](/docs/de/plugin-marketplaces#managed-marketplace-restrictions) verwenden.

611 

612<h2 id="troubleshooting">

613 Fehlerbehebung

614</h2>

615 

616<h3 id="/plugin-command-not-recognized">

617 /plugin-Befehl nicht erkannt

618</h3>

619 

620Wenn Sie „unknown command" sehen oder der `/plugin`-Befehl nicht angezeigt wird:

621 

6221. **Überprüfen Sie Ihre Version**: Führen Sie `claude --version` aus, um zu sehen, was installiert ist.

6232. **Aktualisieren Sie Claude Code**:

624 * **Homebrew**: `brew upgrade claude-code` oder `brew upgrade claude-code@latest`, wenn Sie diesen Cask installiert haben

625 * **npm**: `npm install -g @anthropic-ai/claude-code@latest`

626 * **Native Installer**: Führen Sie den Installationsbefehl von [Setup](/docs/de/setup) erneut aus

6273. **Starten Sie Claude Code neu**: Starten Sie nach dem Update Ihr Terminal neu und führen Sie `claude` erneut aus.

628 

629<h3 id="common-issues">

630 Häufige Probleme

631</h3>

632 

633Wenn Plugin-Befähigungen nicht angezeigt werden, löschen Sie den Cache mit `rm -rf ~/.claude/plugins/cache`, starten Sie Claude Code neu und installieren Sie das Plugin erneut.

634 

635Für detaillierte Fehlerbehebung mit Lösungen siehe [Fehlerbehebung](/docs/de/plugin-marketplaces#troubleshooting) im Marktplatz-Leitfaden. Für Debugging-Tools siehe [Debugging- und Entwicklungstools](/docs/de/plugins-reference#debugging-and-development-tools).

636 

637<h3 id="code-intelligence-issues">

638 Code-Intelligenz-Probleme

639</h3>

640 

641* **Language Server startet nicht**: Überprüfen Sie, dass die Binärdatei installiert ist und in Ihrem `$PATH` verfügbar ist. Überprüfen Sie die Registerkarte `/plugin` Errors für Details.

642* **Hohe Speichernutzung**: Language Server wie `rust-analyzer` und `pyright` können bei großen Projekten erhebliche Speichermengen verbrauchen. Wenn Sie Speicherprobleme haben, deaktivieren Sie das Plugin mit `/plugin disable <plugin-name>` und verlassen Sie sich stattdessen auf Claudes integrierte Suchtools.

643* **Falsch positive Diagnosen in Monorepos**: Language Server können ungelöste Importfehler für interne Pakete melden, wenn der Arbeitsbereich nicht richtig konfiguriert ist. Diese beeinflussen nicht Claudes Fähigkeit, Code zu bearbeiten.

644 

645<h2 id="next-steps">

646 Nächste Schritte

647</h2>

648 

649* **Erstellen Sie Ihre eigenen Plugins**: Siehe [Plugins](/docs/de/plugins), um Befähigungen, Agenten und Hooks zu erstellen

650* **Erstellen Sie einen Marktplatz**: Siehe [Erstellen Sie einen Plugin-Marktplatz](/docs/de/plugin-marketplaces), um Plugins an Ihr Team oder Ihre Community zu verteilen

651* **Technische Referenz**: Siehe [Plugins-Referenz](/docs/de/plugins-reference) für vollständige Spezifikationen

env-vars.md +244 −242

Details

114 114 

115In einer Einstellungsdatei können Sie eine Variable setzen, aber Sie können sie nicht entfernen. Um eine Variable zu überschreiben, die Sie nicht aufheben können, z. B. eine veraltete `CLAUDE_CODE_USE_VERTEX`, die von einem Shell-Profil exportiert wird, das Sie nicht kontrollieren, setzen Sie sie im `env`-Block auf eine leere Zeichenkette: `"CLAUDE_CODE_USE_VERTEX": ""`. Claude Code behandelt den leeren Wert als nicht gesetzt für die Anbieterauswahl. Unterprozesse erben weiterhin den leeren Wert.115In einer Einstellungsdatei können Sie eine Variable setzen, aber Sie können sie nicht entfernen. Um eine Variable zu überschreiben, die Sie nicht aufheben können, z. B. eine veraltete `CLAUDE_CODE_USE_VERTEX`, die von einem Shell-Profil exportiert wird, das Sie nicht kontrollieren, setzen Sie sie im `env`-Block auf eine leere Zeichenkette: `"CLAUDE_CODE_USE_VERTEX": ""`. Claude Code behandelt den leeren Wert als nicht gesetzt für die Anbieterauswahl. Unterprozesse erben weiterhin den leeren Wert.

116 116 

117Zwischen Einstellungsdateien folgen `env`-Werte dem [Einstellungsvorrang](/docs/de/settings#settings-precedence), sodass ein verwalteter Einstellungseintrag dieselbe Variable in Benutzer- oder Projekteinstellungen überschreibt.117Zwischen Einstellungsdateien folgen `env`-Werte dem [Einstellungsvorrang](/docs/de/settings#settings-precedence), sodass ein verwalteter Einstellungseintrag dieselbe Variable in Benutzer- oder Projekteinstellungen überschreibt. Projekt- und lokale Einstellungen können einige Variablen nicht setzen, z. B. `CLAUDE_CONFIG_DIR` und die OpenTelemetry-Exporter-Variablen. [Variablen, die Claude Code in `env` ignoriert](/docs/de/settings-reference#variables-claude-code-ignores-in-env) listet sie auf, zusammen mit den OpenTelemetry-Ausschaltungswerten, die weiterhin gelten.

118 118 

119Wie eine Umgebungsvariable mit CLI-Flags und In-Session-Befehlen interagiert, variiert je nach Funktion: `--model` und `/model` überschreiben `ANTHROPIC_MODEL`, während `CLAUDE_CODE_EFFORT_LEVEL` `--effort` und `/effort` überschreibt. Wenn eine Variable mit einer anderen Konfigurationsquelle interagiert, gibt ihre Zeile in der Liste [Variablen](#variables) den Vorrang an oder verlinkt auf die Seite, die ihn dokumentiert.119Wie eine Umgebungsvariable mit CLI-Flags und In-Session-Befehlen interagiert, variiert je nach Funktion: `--model` und `/model` überschreiben `ANTHROPIC_MODEL`, während `CLAUDE_CODE_EFFORT_LEVEL` `--effort` und `/effort` überschreibt. Wenn eine Variable mit einer anderen Konfigurationsquelle interagiert, gibt ihre Zeile in der Liste [Variablen](#variables) den Vorrang an oder verlinkt auf die Seite, die ihn dokumentiert.

120 120 


124 Variablen124 Variablen

125</h2>125</h2>

126 126 

127Numerische Variablen wie Timeouts, Token-Budgets und Wiederholungsanzahlen akzeptieren wissenschaftliche Notation und Zifferntrennzeichen zusätzlich zu einfachen Ziffern, außer wo in der Zeile einer Variablen angegeben ist, dass sie nur einfache Ziffern akzeptiert. Zum Beispiel liest Claude Code `2e3` als 2000 und `64_000` als 64000. Vor v2.1.211 konnten diese Schreibweisen stillschweigend einen viel kleineren Wert setzen, wie `1e6` das Timeout auf 1 setzen.127Numerische Variablen wie Timeouts, Token-Budgets und Wiederholungsanzahlen akzeptieren wissenschaftliche Notation und Ziffern-Trennzeichen-Schreibweisen zusätzlich zu einfachen Ziffern, außer wo die Zeile einer Variablen anmerkt, dass sie nur einfache Ziffern akzeptiert. Zum Beispiel liest Claude Code `2e3` als 2000 und `64_000` als 64000. Vor v2.1.211 konnten diese Schreibweisen stillschweigend einen viel kleineren Wert setzen, wie `1e6` das Timeout auf 1 setzen.

128 128 

129<Note>129<Note>

130 Für Variablen, die ein Verhalten ein- oder ausschalten, setzen Sie `1` oder `true`, um es einzuschalten, und `0` oder `false`, um es auszuschalten, in beliebiger Schreibweise.130 Für Variablen, die ein Verhalten ein- oder ausschalten, setzen Sie `1` oder `true`, um es einzuschalten, und `0` oder `false`, um es auszuschalten, in beliebiger Groß-/Kleinschreibung.

131 131 

132 Einige Variablen lesen nur, ob Sie sie überhaupt setzen, daher schaltet jeder nicht-leere Wert einschließlich `0` das Verhalten ein, und Sie schalten das Verhalten aus, indem Sie die Variable nicht setzen oder auf einen leeren Wert setzen. Diese Variablen funktionieren so:132 Einige Variablen lesen nur, ob Sie sie überhaupt gesetzt haben, daher schaltet jeder nicht-leere Wert einschließlich `0` das Verhalten ein, und Sie schalten das Verhalten aus, indem Sie die Variable nicht setzen oder auf einen leeren Wert setzen. Diese Variablen funktionieren auf diese Weise:

133 133 

134 * `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`134 * `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`

135 * `DISABLE_TELEMETRY`135 * `DISABLE_TELEMETRY`


138 * `FALLBACK_FOR_ALL_PRIMARY_MODELS`138 * `FALLBACK_FOR_ALL_PRIMARY_MODELS`

139 * `IS_DEMO`139 * `IS_DEMO`

140 140 

141 Eine andere Variable hat ihre eigene Regel: `FORCE_HYPERLINK` liest eine Zahl, daher schaltet nur `0` sie aus. Jede Zeile einer Variablen gibt auch ihre eigene Regel an.141 Eine andere Variable hat ihre eigene Regel: `FORCE_HYPERLINK` liest eine Zahl, daher schaltet nur `0` sie aus. Jede Variablenzeile gibt auch ihre eigene Regel an.

142</Note>142</Note>

143 143 

144| Variable | Zweck |144| Variable | Zweck |

145| :------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |145| :------------------------------------------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

146| `ANTHROPIC_API_KEY` | API-Schlüssel, der als `X-Api-Key`-Header gesendet wird. Wenn gesetzt, wird dieser Schlüssel anstelle Ihres Claude Pro-, Max-, Team- oder Enterprise-Abonnements verwendet, auch wenn Sie angemeldet sind. Im nicht-interaktiven Modus (`-p`) wird der Schlüssel immer verwendet, wenn er vorhanden ist. Im interaktiven Modus werden Sie aufgefordert, den Schlüssel einmalig zu genehmigen, bevor er Ihr Abonnement überschreibt. Um stattdessen Ihr Abonnement zu verwenden, führen Sie `unset ANTHROPIC_API_KEY` aus |146| `ANTHROPIC_API_KEY` | API-Schlüssel, der als `X-Api-Key`-Header gesendet wird. Wenn gesetzt, wird dieser Schlüssel statt Ihres Claude Pro-, Max-, Team- oder Enterprise-Abonnements verwendet, auch wenn Sie angemeldet sind. Im nicht-interaktiven Modus (`-p`) wird der Schlüssel immer verwendet, wenn vorhanden. Im interaktiven Modus werden Sie aufgefordert, den Schlüssel einmalig zu genehmigen, bevor er Ihr Abonnement überschreibt. Um stattdessen Ihr Abonnement zu verwenden, führen Sie `unset ANTHROPIC_API_KEY` aus |

147| `ANTHROPIC_AUTH_TOKEN` | Benutzerdefinierter Wert für den `Authorization`-Header (der Wert, den Sie hier setzen, wird mit `Bearer ` vorangestellt) |147| `ANTHROPIC_AUTH_TOKEN` | Benutzerdefinierter Wert für den `Authorization`-Header (der Wert, den Sie hier setzen, wird mit `Bearer ` vorangestellt) |

148| `ANTHROPIC_AWS_API_KEY` | Workspace-API-Schlüssel für [Claude Platform on AWS](/docs/de/claude-platform-on-aws), generiert in der AWS-Konsole. Wird als `x-api-key` gesendet und hat Vorrang vor AWS SigV4 |148| `ANTHROPIC_AWS_API_KEY` | Workspace-API-Schlüssel für [Claude Platform on AWS](/docs/de/claude-platform-on-aws), generiert in der AWS-Konsole. Wird als `x-api-key` gesendet und hat Vorrang vor AWS SigV4 |

149| `ANTHROPIC_AWS_BASE_URL` | Überschreiben Sie die [Claude Platform on AWS](/docs/de/claude-platform-on-aws)-Endpunkt-URL. Verwenden Sie für benutzerdefinierte Regionen oder beim Routing durch ein [LLM-Gateway](/docs/de/llm-gateway). Standardmäßig `https://aws-external-anthropic.{region}.api.aws`. Claude Code löst die Region mit der [gleichen Priorität wie auf Amazon Bedrock](/docs/de/amazon-bedrock#3-configure-claude-code) auf |149| `ANTHROPIC_AWS_BASE_URL` | Überschreiben Sie die [Claude Platform on AWS](/docs/de/claude-platform-on-aws) Endpunkt-URL. Verwenden Sie für benutzerdefinierte Regionen oder beim Routing durch ein [LLM-Gateway](/docs/de/llm-gateway). Standard ist `https://aws-external-anthropic.{region}.api.aws`. Claude Code löst die Region mit der [gleichen Priorität wie auf Amazon Bedrock](/docs/de/amazon-bedrock#3-configure-claude-code) auf |

150| `ANTHROPIC_AWS_WORKSPACE_ID` | Erforderlich für [Claude Platform on AWS](/docs/de/claude-platform-on-aws). Wird bei jeder Anfrage als `anthropic-workspace-id`-Header gesendet |150| `ANTHROPIC_AWS_WORKSPACE_ID` | Erforderlich für [Claude Platform on AWS](/docs/de/claude-platform-on-aws). Wird bei jeder Anfrage als `anthropic-workspace-id`-Header gesendet |

151| `ANTHROPIC_BASE_URL` | Überschreiben Sie den API-Endpunkt, um Anfragen durch einen Proxy oder ein Gateway zu leiten. Wenn auf einen Nicht-First-Party-Host gesetzt, ist [MCP-Tool-Suche](/docs/de/mcp#scale-with-mcp-tool-search) standardmäßig deaktiviert. Setzen Sie `ENABLE_TOOL_SEARCH=true`, wenn Ihr Proxy `tool_reference`-Blöcke weiterleitet. Ab v2.1.196 ist [Remote Control](/docs/de/remote-control#requirements) deaktiviert, wenn dies auf einen anderen Host als `api.anthropic.com` verweist, was seinem Verhalten auf Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry entspricht |151| `ANTHROPIC_BASE_URL` | Überschreiben Sie den API-Endpunkt, um Anfragen durch einen Proxy oder ein Gateway zu leiten. Wenn auf einen Host eines Drittanbieters gesetzt, ist [MCP-Tool-Suche](/docs/de/mcp#scale-with-mcp-tool-search) standardmäßig deaktiviert. Setzen Sie `ENABLE_TOOL_SEARCH=true`, wenn Ihr Proxy `tool_reference`-Blöcke weiterleitet. Ab v2.1.196 ist [Remote Control](/docs/de/remote-control#requirements) deaktiviert, wenn dies auf einen anderen Host als `api.anthropic.com` zeigt, was seinem Verhalten auf Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry entspricht |

152| `ANTHROPIC_BEDROCK_BASE_URL` | Überschreiben Sie die Amazon Bedrock-Endpunkt-URL. Verwenden Sie für benutzerdefinierte Amazon Bedrock-Endpunkte oder beim Routing durch ein [LLM-Gateway](/docs/de/llm-gateway). Siehe [Amazon Bedrock](/docs/de/amazon-bedrock) |152| `ANTHROPIC_BEDROCK_BASE_URL` | Überschreiben Sie die Amazon Bedrock Endpunkt-URL. Verwenden Sie für benutzerdefinierte Amazon Bedrock-Endpunkte oder beim Routing durch ein [LLM-Gateway](/docs/de/llm-gateway). Siehe [Amazon Bedrock](/docs/de/amazon-bedrock) |

153| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | Überschreiben Sie die Amazon Bedrock Mantle-Endpunkt-URL. Siehe [Mantle-Endpunkt](/docs/de/amazon-bedrock#use-the-mantle-endpoint) |153| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | Überschreiben Sie die Amazon Bedrock Mantle Endpunkt-URL. Siehe [Mantle-Endpunkt](/docs/de/amazon-bedrock#use-the-mantle-endpoint) |

154| `ANTHROPIC_BEDROCK_REGION_PREFIX` | Präfix für regionsübergreifendes Inferenzprofil (`us`, `eu`, `apac`, `jp`, `au` oder `global`), das Claude Code zuerst versucht, anstelle des aus der AWS-Region abgeleiteten. Wird in AWS GovCloud-Regionen ignoriert. Erfordert Claude Code v2.1.224 oder später. Siehe [Amazon Bedrock](/docs/de/amazon-bedrock#cross-region-inference-profile-prefixes) |154| `ANTHROPIC_BEDROCK_REGION_PREFIX` | Präfix für regionsübergreifendes Inferenzprofil (`us`, `eu`, `apac`, `jp`, `au` oder `global`), das Claude Code zuerst versucht, anstelle eines aus der AWS-Region abgeleiteten. Wird in AWS GovCloud-Regionen ignoriert. Erfordert Claude Code v2.1.224 oder später. Siehe [Amazon Bedrock](/docs/de/amazon-bedrock#cross-region-inference-profile-prefixes) |

155| `ANTHROPIC_BEDROCK_SERVICE_TIER` | Amazon Bedrock [Service-Tier](https://docs.aws.amazon.com/bedrock/latest/userguide/service-tiers-inference.html) (`default`, `flex` oder `priority`). Wird als `X-Amzn-Bedrock-Service-Tier`-Header gesendet. Siehe [Amazon Bedrock](/docs/de/amazon-bedrock#service-tiers) |155| `ANTHROPIC_BEDROCK_SERVICE_TIER` | Amazon Bedrock [Service-Tier](https://docs.aws.amazon.com/bedrock/latest/userguide/service-tiers-inference.html) (`default`, `flex` oder `priority`). Wird als `X-Amzn-Bedrock-Service-Tier`-Header gesendet. Siehe [Amazon Bedrock](/docs/de/amazon-bedrock#service-tiers) |

156| `ANTHROPIC_BETAS` | Komma-getrennte Liste zusätzlicher `anthropic-beta`-Header-Werte, die in API-Anfragen eingebunden werden sollen. Claude Code sendet bereits die Beta-Header, die es benötigt; verwenden Sie dies, um sich für ein [Anthropic API Beta](https://platform.claude.com/docs/en/api/beta-headers) anzumelden, bevor Claude Code native Unterstützung hinzufügt. Im Gegensatz zur [`--betas`-Flag](/docs/de/cli-reference#cli-flags), die API-Schlüssel-Authentifizierung erfordert, funktioniert diese Variable mit allen Authentifizierungsmethoden einschließlich Claude.ai-Abonnement |156| `ANTHROPIC_BETAS` | Komma-getrennte Liste zusätzlicher `anthropic-beta`-Header-Werte, die in API-Anfragen eingebunden werden. Claude Code sendet bereits die Beta-Header, die es benötigt; verwenden Sie dies, um sich für ein [Anthropic API Beta](https://platform.claude.com/docs/en/api/beta-headers) anzumelden, bevor Claude Code native Unterstützung hinzufügt. Im Gegensatz zum [`--betas`-Flag](/docs/de/cli-reference#cli-flags), das API-Schlüssel-Authentifizierung erfordert, funktioniert diese Variable mit allen Authentifizierungsmethoden einschließlich Claude.ai-Abonnement |

157| `ANTHROPIC_CUSTOM_HEADERS` | Benutzerdefinierte Header, die zu Anfragen hinzugefügt werden sollen (`Name: Value`-Format, zeilengetrennt für mehrere Header). Wenn ein Name oder Wert ein Zeichen enthält, das ein HTTP-Header nicht tragen kann, wie ein gekrümmtes Anführungszeichen oder ein Leerzeichen mit Nullbreite, schlägt die Anfrage mit einem Fehler fehl, der das Paar nach Position identifiziert. Erfordert Claude Code v2.1.227 oder später. [Ungültiger Request-Header-Wert](/docs/de/errors#invalid-request-header-value) listet den genauen Zeichensatz auf und wo die Überprüfung läuft. Ein Wert, der einen Credential-, Org- oder Tenant-, Routing- oder API-Verhaltens-Header setzt, wie `Authorization` oder `Host`, zählt als [Einstellung, die Genehmigung benötigt](/docs/de/server-managed-settings#environment-variables-and-the-approval-dialog), wenn Server-verwaltete Einstellungen sie liefern. Aus Projekt- oder lokalen Einstellungen folgt ein solcher Wert den [Regeln für wann `env`-Werte gelten](/docs/de/settings-reference#when-claude-code-applies-env-values) |157| `ANTHROPIC_CUSTOM_HEADERS` | Benutzerdefinierte Header, die zu Anfragen hinzugefügt werden (Format `Name: Value`, zeilengetrennt für mehrere Header). Wenn ein Name oder Wert ein Zeichen enthält, das ein HTTP-Header nicht tragen kann, wie ein gekrümmtes Anführungszeichen oder ein Leerzeichen mit Nullbreite, schlägt die Anfrage mit einem Fehler fehl, der das Paar nach Position identifiziert. Erfordert Claude Code v2.1.227 oder später. [Ungültiger Request-Header-Wert](/docs/de/errors#invalid-request-header-value) listet den genauen Zeichensatz auf und wo die Prüfung läuft. Ein Wert, der einen Credential-, Org- oder Tenant-, Routing- oder API-Verhaltens-Header setzt, wie `Authorization` oder `Host`, zählt als [Einstellung, die Genehmigung benötigt](/docs/de/server-managed-settings#environment-variables-and-the-approval-dialog), wenn Server-verwaltete Einstellungen sie liefern. Aus Projekt- oder lokalen Einstellungen folgt ein solcher Wert den [Regeln für wann `env`-Werte gelten](/docs/de/settings-reference#when-claude-code-applies-env-values) |

158| `ANTHROPIC_CUSTOM_MODEL_OPTION` | Modell-ID, die als benutzerdefinierter Eintrag in der `/model`-Auswahl hinzugefügt werden soll. Verwenden Sie dies, um ein nicht-standardisiertes oder Gateway-spezifisches Modell auswählbar zu machen, ohne integrierte Aliase zu ersetzen. Siehe [Modellkonfiguration](/docs/de/model-config#add-a-custom-model-option) |158| `ANTHROPIC_CUSTOM_MODEL_OPTION` | Modell-ID, die als benutzerdefinierter Eintrag in der `/model`-Auswahl hinzugefügt werden soll. Verwenden Sie dies, um ein nicht-standardisiertes oder Gateway-spezifisches Modell auswählbar zu machen, ohne integrierte Aliase zu ersetzen. Siehe [Modellkonfiguration](/docs/de/model-config#add-a-custom-model-option) |

159| `ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION` | Anzeigebeschreibung für den benutzerdefinierten Modelleintrag in der `/model`-Auswahl. Standardmäßig `Custom model (<model-id>)`, wenn nicht gesetzt |159| `ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION` | Anzeigebeschreibung für den benutzerdefinierten Modelleintrag in der `/model`-Auswahl. Standard ist `Custom model (<model-id>)`, wenn nicht gesetzt |

160| `ANTHROPIC_CUSTOM_MODEL_OPTION_NAME` | Anzeigename für den benutzerdefinierten Modelleintrag in der `/model`-Auswahl. Wenn nicht gesetzt, zeigt der Eintrag den Namen des Modells an, wenn Claude Code die [ID erkennt](/docs/de/model-config#customize-pinned-model-display-and-capabilities), und die Modell-ID andernfalls |160| `ANTHROPIC_CUSTOM_MODEL_OPTION_NAME` | Anzeigename für den benutzerdefinierten Modelleintrag in der `/model`-Auswahl. Wenn nicht gesetzt, zeigt der Eintrag den Namen des Modells an, wenn Claude Code die ID [erkennt](/docs/de/model-config#customize-pinned-model-display-and-capabilities), und die Modell-ID andernfalls |

161| `ANTHROPIC_CUSTOM_MODEL_OPTION_SUPPORTED_CAPABILITIES` | Komma-getrennte Liste von [Fähigkeiten](/docs/de/model-config#customize-pinned-model-display-and-capabilities), die das benutzerdefinierte Modell unterstützt, zum Beispiel `effort,thinking`. Siehe [Modellkonfiguration](/docs/de/model-config#customize-pinned-model-display-and-capabilities) |161| `ANTHROPIC_CUSTOM_MODEL_OPTION_SUPPORTED_CAPABILITIES` | Komma-getrennte Liste von [Fähigkeiten](/docs/de/model-config#customize-pinned-model-display-and-capabilities), die das benutzerdefinierte Modell unterstützt, zum Beispiel `effort,thinking`. Siehe [Modellkonfiguration](/docs/de/model-config#customize-pinned-model-display-and-capabilities) |

162| `ANTHROPIC_DEFAULT_FABLE_MODEL` | Modell-ID, zu der der `fable`-Alias aufgelöst wird, und die ID, die Claude Code als Fable-Modell für [automatisches Modell-Fallback](/docs/de/model-config#automatic-model-fallback) bei Drittanbieter-Providern erkennt. Siehe [Modellkonfiguration](/docs/de/model-config#environment-variables) |162| `ANTHROPIC_DEFAULT_FABLE_MODEL` | Modell-ID, zu der der `fable`-Alias aufgelöst wird, und die ID, die Claude Code als Fable-Modell für [automatisches Modell-Fallback](/docs/de/model-config#automatic-model-fallback) bei Drittanbieter-Providern erkennt. Siehe [Modellkonfiguration](/docs/de/model-config#environment-variables) |

163| `ANTHROPIC_DEFAULT_FABLE_MODEL_DESCRIPTION` | Anzeigebeschreibung für das angeheftete Fable-Modell in der `/model`-Auswahl. Wenn nicht gesetzt, zeigt die Zeile eine Standardbeschreibung, die mit `Custom Fable model` beginnt. Siehe [Modellkonfiguration](/docs/de/model-config#customize-pinned-model-display-and-capabilities) |163| `ANTHROPIC_DEFAULT_FABLE_MODEL_DESCRIPTION` | Anzeigebeschreibung für das angeheftete Fable-Modell in der `/model`-Auswahl. Wenn nicht gesetzt, zeigt die Zeile eine Standardbeschreibung, die mit `Custom Fable model` beginnt. Siehe [Modellkonfiguration](/docs/de/model-config#customize-pinned-model-display-and-capabilities) |


176| `ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION` | Anzeigebeschreibung für das angeheftete Sonnet-Modell in der `/model`-Auswahl. Wenn nicht gesetzt, zeigt die Zeile eine Standardbeschreibung, die mit `Custom Sonnet model` beginnt. Siehe [Modellkonfiguration](/docs/de/model-config#customize-pinned-model-display-and-capabilities) |176| `ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION` | Anzeigebeschreibung für das angeheftete Sonnet-Modell in der `/model`-Auswahl. Wenn nicht gesetzt, zeigt die Zeile eine Standardbeschreibung, die mit `Custom Sonnet model` beginnt. Siehe [Modellkonfiguration](/docs/de/model-config#customize-pinned-model-display-and-capabilities) |

177| `ANTHROPIC_DEFAULT_SONNET_MODEL_NAME` | Anzeigename für das angeheftete Sonnet-Modell in der `/model`-Auswahl. Wenn nicht gesetzt, zeigt die Zeile den Namen des Modells an, wenn Claude Code die angeheftete ID erkennt, und die angeheftete ID andernfalls. Siehe [Modellkonfiguration](/docs/de/model-config#customize-pinned-model-display-and-capabilities) |177| `ANTHROPIC_DEFAULT_SONNET_MODEL_NAME` | Anzeigename für das angeheftete Sonnet-Modell in der `/model`-Auswahl. Wenn nicht gesetzt, zeigt die Zeile den Namen des Modells an, wenn Claude Code die angeheftete ID erkennt, und die angeheftete ID andernfalls. Siehe [Modellkonfiguration](/docs/de/model-config#customize-pinned-model-display-and-capabilities) |

178| `ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES` | Komma-getrennte Liste von [Fähigkeiten](/docs/de/model-config#customize-pinned-model-display-and-capabilities), die das angeheftete Sonnet-Modell unterstützt, zum Beispiel `effort,thinking`. Siehe [Modellkonfiguration](/docs/de/model-config#customize-pinned-model-display-and-capabilities) |178| `ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES` | Komma-getrennte Liste von [Fähigkeiten](/docs/de/model-config#customize-pinned-model-display-and-capabilities), die das angeheftete Sonnet-Modell unterstützt, zum Beispiel `effort,thinking`. Siehe [Modellkonfiguration](/docs/de/model-config#customize-pinned-model-display-and-capabilities) |

179| `ANTHROPIC_FEDERATION_RULE_ID` | Föderations-Regel-ID für [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Wenn Sie sie zusammen mit `ANTHROPIC_ORGANIZATION_ID` setzen, wählt Claude Code Föderations-Credentials aus, die über Ihrem `/login`-Credential rangieren. Siehe [Authentifizierungspriorität](/docs/de/authentication#authentication-precedence) |179| `ANTHROPIC_FEDERATION_RULE_ID` | Föderations-Regel-ID für [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Wenn Sie es zusammen mit `ANTHROPIC_ORGANIZATION_ID` setzen, wählt Claude Code Föderations-Anmeldedaten aus, die über Ihre `/login`-Anmeldedaten rangieren. Siehe [Authentifizierungspriorität](/docs/de/authentication#authentication-precedence) |

180| `ANTHROPIC_FOUNDRY_API_KEY` | API-Schlüssel für Microsoft Foundry-Authentifizierung (siehe [Microsoft Foundry](/docs/de/microsoft-foundry)) |180| `ANTHROPIC_FOUNDRY_API_KEY` | API-Schlüssel für Microsoft Foundry-Authentifizierung (siehe [Microsoft Foundry](/docs/de/microsoft-foundry)) |

181| `ANTHROPIC_FOUNDRY_AUTH_TOKEN` | Bearer-Token für Microsoft Foundry-Authentifizierung, wie ein Microsoft Entra-Zugriffstoken. Claude Code sendet es als `Authorization: Bearer`-Header. Hat Vorrang vor `ANTHROPIC_FOUNDRY_API_KEY` und vor der Azure-Standard-Credential-Kette. Siehe [Microsoft Foundry](/docs/de/microsoft-foundry). Erfordert Claude Code v2.1.203 oder später |181| `ANTHROPIC_FOUNDRY_AUTH_TOKEN` | Bearer-Token für Microsoft Foundry-Authentifizierung, wie ein Microsoft Entra-Zugriffstoken. Claude Code sendet es als `Authorization: Bearer`-Header. Hat Vorrang vor `ANTHROPIC_FOUNDRY_API_KEY` und vor der Azure-Standard-Anmeldedaten-Kette. Siehe [Microsoft Foundry](/docs/de/microsoft-foundry). Erfordert Claude Code v2.1.203 oder später |

182| `ANTHROPIC_FOUNDRY_BASE_URL` | Vollständige Basis-URL für die Microsoft Foundry-Ressource (zum Beispiel `https://my-resource.services.ai.azure.com/anthropic`). Alternative zu `ANTHROPIC_FOUNDRY_RESOURCE` (siehe [Microsoft Foundry](/docs/de/microsoft-foundry)) |182| `ANTHROPIC_FOUNDRY_BASE_URL` | Vollständige Basis-URL für die Microsoft Foundry-Ressource (zum Beispiel `https://my-resource.services.ai.azure.com/anthropic`). Alternative zu `ANTHROPIC_FOUNDRY_RESOURCE` (siehe [Microsoft Foundry](/docs/de/microsoft-foundry)) |

183| `ANTHROPIC_FOUNDRY_RESOURCE` | Microsoft Foundry-Ressourcenname (zum Beispiel `my-resource`). Erforderlich, wenn `ANTHROPIC_FOUNDRY_BASE_URL` nicht gesetzt ist (siehe [Microsoft Foundry](/docs/de/microsoft-foundry)) |183| `ANTHROPIC_FOUNDRY_RESOURCE` | Microsoft Foundry-Ressourcenname (zum Beispiel `my-resource`). Erforderlich, wenn `ANTHROPIC_FOUNDRY_BASE_URL` nicht gesetzt ist (siehe [Microsoft Foundry](/docs/de/microsoft-foundry)) |

184| `ANTHROPIC_MODEL` | Name der zu verwendenden Modelleinstellung (siehe [Modellkonfiguration](/docs/de/model-config#environment-variables)) |184| `ANTHROPIC_MODEL` | Name der zu verwendenden Modelleinstellung (siehe [Modellkonfiguration](/docs/de/model-config#environment-variables)) |

185| `ANTHROPIC_ORGANIZATION_ID` | Organisations-ID für [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Setzen Sie sie zusammen mit `ANTHROPIC_FEDERATION_RULE_ID`. Siehe [Authentifizierungspriorität](/docs/de/authentication#authentication-precedence) |185| `ANTHROPIC_ORGANIZATION_ID` | Organisations-ID für [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Setzen Sie es zusammen mit `ANTHROPIC_FEDERATION_RULE_ID`. Siehe [Authentifizierungspriorität](/docs/de/authentication#authentication-precedence) |

186| `ANTHROPIC_PROFILE` | Name des Anthropic-Profils, mit dem authentifiziert werden soll, wie eines, das von [`ant auth login`](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/authentication) erstellt wurde, oder durch [Anmeldung bei einem Console-Konto ohne API-Schlüssel](/docs/de/authentication#sign-in-without-an-api-key). Siehe [Authentifizierungspriorität](/docs/de/authentication#authentication-precedence) |186| `ANTHROPIC_PROFILE` | Name des Anthropic-Profils, mit dem authentifiziert werden soll, wie eines, das von [`ant auth login`](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/authentication) erstellt wurde, oder durch [Anmeldung bei einem Console-Konto ohne API-Schlüssel](/docs/de/authentication#sign-in-without-an-api-key). Siehe [Authentifizierungspriorität](/docs/de/authentication#authentication-precedence) |

187| `ANTHROPIC_SMALL_FAST_MODEL` | \[VERALTET] Name des [Haiku-Klasse-Modells für Hintergrundaufgaben](/docs/de/costs) |187| `ANTHROPIC_SMALL_FAST_MODEL` | \[VERALTET] Name von [Haiku-Klasse-Modell für Hintergrundaufgaben](/docs/de/costs) |

188| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Überschreiben Sie die AWS-Region für das Haiku-Klasse-Modell bei Verwendung von Amazon Bedrock oder Amazon Bedrock Mantle. Bei Amazon Bedrock hat dies nur Auswirkungen, wenn `ANTHROPIC_DEFAULT_HAIKU_MODEL` oder das veraltete `ANTHROPIC_SMALL_FAST_MODEL` auch gesetzt ist, da Amazon Bedrock andernfalls Hintergrundaufgaben auf dem [Standard-Sonnet-Modell oder dem primären Modell](/docs/de/amazon-bedrock#4-pin-model-versions) in der Sitzungsregion ausführt |188| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Überschreiben Sie die AWS-Region für das Haiku-Klasse-Modell bei Verwendung von Amazon Bedrock oder Amazon Bedrock Mantle. Bei Amazon Bedrock hat dies nur Auswirkungen, wenn `ANTHROPIC_DEFAULT_HAIKU_MODEL` oder das veraltete `ANTHROPIC_SMALL_FAST_MODEL` auch gesetzt ist, da Amazon Bedrock andernfalls Hintergrundaufgaben auf dem [Standard-Sonnet-Modell oder dem primären Modell](/docs/de/amazon-bedrock#4-pin-model-versions) in der Sitzungsregion ausführt |

189| `ANTHROPIC_VERTEX_BASE_URL` | Überschreiben Sie die Google Cloud's Agent Platform-Endpunkt-URL. Verwenden Sie für benutzerdefinierte Google Cloud's Agent Platform-Endpunkte oder beim Routing durch ein [LLM-Gateway](/docs/de/llm-gateway). Siehe [Google Cloud's Agent Platform](/docs/de/google-vertex-ai) |189| `ANTHROPIC_VERTEX_BASE_URL` | Überschreiben Sie die Google Cloud's Agent Platform Endpunkt-URL. Verwenden Sie für benutzerdefinierte Google Cloud's Agent Platform-Endpunkte oder beim Routing durch ein [LLM-Gateway](/docs/de/llm-gateway). Siehe [Google Cloud's Agent Platform](/docs/de/google-vertex-ai) |

190| `ANTHROPIC_VERTEX_PROJECT_ID` | GCP-Projekt-ID, an die Google Cloud's Agent Platform-Anfragen adressiert werden. Siehe [GCP-Credentials konfigurieren](/docs/de/google-vertex-ai#3-configure-gcp-credentials) |190| `ANTHROPIC_VERTEX_PROJECT_ID` | GCP-Projekt-ID, an die Google Cloud's Agent Platform-Anfragen adressiert werden. Siehe [GCP-Anmeldedaten konfigurieren](/docs/de/google-vertex-ai#3-configure-gcp-credentials) |

191| `ANTHROPIC_WORKSPACE_ID` | Workspace-ID für [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Setzen Sie dies, wenn Ihre Föderations-Regel auf mehr als einen Workspace begrenzt ist, damit der Token-Austausch weiß, welcher Workspace das Ziel ist |191| `ANTHROPIC_WORKSPACE_ID` | Workspace-ID für [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Setzen Sie dies, wenn Ihre Föderations-Regel auf mehr als einen Workspace begrenzt ist, damit der Token-Austausch weiß, welcher Workspace das Ziel ist |

192| `API_FORCE_IDLE_TIMEOUT` | Überschreiben Sie das 5-Minuten-Body-Idle-Timeout, das eine Streaming-Modell-Antwort abbricht, wenn keine Bytes ankommen. Setzen Sie auf `0`, um das Timeout auszuschalten, zum Beispiel wenn ein langsames [Gateway](/docs/de/llm-gateway) oder lokales Modell länger als 5 Minuten zwischen Chunks pausiert, oder `1`, um es für jeden Provider zu behalten. Wenn nicht gesetzt, ist das Timeout bei Providern außer der direkten Anthropic API und [Claude Platform on AWS](/docs/de/claude-platform-on-aws) aktiv. Die [Stream-Watchdogs](/docs/de/network-config#streaming-idle-watchdogs) laufen unabhängig davon und brechen eine lange stille Pause ab, auch wenn Sie hier `0` setzen |192| `API_FORCE_IDLE_TIMEOUT` | Überschreiben Sie das 5-Minuten-Body-Idle-Timeout, das eine Streaming-Modell-Antwort abbricht, wenn keine Bytes ankommen. Setzen Sie auf `0`, um das Timeout auszuschalten, zum Beispiel wenn ein langsames [Gateway](/docs/de/llm-gateway) oder lokales Modell länger als 5 Minuten zwischen Chunks pausiert, oder `1`, um es für jeden Provider einzuschalten. Wenn nicht gesetzt, ist das Timeout bei Providern außer der direkten Anthropic API und [Claude Platform on AWS](/docs/de/claude-platform-on-aws) aktiv. Die [Stream-Watchdogs](/docs/de/network-config#streaming-idle-watchdogs) laufen unabhängig davon und brechen eine lange stille Pause ab, auch wenn Sie hier `0` setzen |

193| `API_TIMEOUT_MS` | Timeout für API-Anfragen in Millisekunden (Standard: 600000 oder 10 Minuten; Maximum: 2147483647). Erhöhen Sie dies, wenn Anfragen bei langsamen Netzwerken oder beim Routing durch einen Proxy timeout. Werte über dem Maximum führen zu Überläufen des zugrunde liegenden Timers und verursachen sofortige Anfragefehler |193| `API_TIMEOUT_MS` | Timeout für API-Anfragen in Millisekunden (Standard: 600000 oder 10 Minuten; Maximum: 2147483647). Erhöhen Sie dies, wenn Anfragen bei langsamen Netzwerken oder beim Routing durch einen Proxy timeout. Werte über dem Maximum führen zu Überläufen des zugrunde liegenden Timers und verursachen, dass Anfragen sofort fehlschlagen |

194| `AWS_BEARER_TOKEN_BEDROCK` | Amazon Bedrock API-Schlüssel für Authentifizierung (siehe [Amazon Bedrock API-Schlüssel](https://aws.amazon.com/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/)) |194| `AWS_BEARER_TOKEN_BEDROCK` | Amazon Bedrock API-Schlüssel für Authentifizierung (siehe [Amazon Bedrock API-Schlüssel](https://aws.amazon.com/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/)) |

195| `BASH_DEFAULT_TIMEOUT_MS` | Standard-Timeout für lang laufende Bash-Befehle (Standard: 120000 oder 2 Minuten) |195| `BASH_DEFAULT_TIMEOUT_MS` | Standard-Timeout für lang laufende Bash-Befehle (Standard: 120000 oder 2 Minuten) |

196| `BASH_MAX_OUTPUT_LENGTH` | Maximale Anzahl von Zeichen der Bash-Ausgabe, die Claude Code in das Ergebnis eines Befehls zurückliest (Standard: 30000; Maximum: 150000). Wenn Sie die [`bashOutputMaxChars`](/docs/de/settings-reference#bashoutputmaxchars)-Einstellung setzen, ignoriert Claude Code diese Variable. Siehe [Ausgabebegrenzungen](/docs/de/tools-reference#output-limits) |196| `BASH_MAX_OUTPUT_LENGTH` | Maximale Anzahl von Zeichen der Bash-Ausgabe, die Claude Code in das Ergebnis eines Befehls zurückliest (Standard: 30000; Maximum: 150000). Wenn Sie die [`bashOutputMaxChars`](/docs/de/settings-reference#bashoutputmaxchars)-Einstellung setzen, ignoriert Claude Code diese Variable. Siehe [Ausgabebegrenzungen](/docs/de/tools-reference#output-limits) |

197| `BASH_MAX_TIMEOUT_MS` | Maximales Timeout, das das Modell für lang laufende Bash-Befehle setzen kann (Standard: 600000 oder 10 Minuten). Die effektive Obergrenze ist die größere von dieser und `BASH_DEFAULT_TIMEOUT_MS` |197| `BASH_MAX_TIMEOUT_MS` | Maximales Timeout, das das Modell für lang laufende Bash-Befehle setzen kann (Standard: 600000 oder 10 Minuten). Die effektive Obergrenze ist die größere von dieser und `BASH_DEFAULT_TIMEOUT_MS` |

198| `BETA_TRACING_ENDPOINT` | OTLP-Endpunkt für [detailliertes Beta-Tracing](/docs/de/monitoring-usage#traces-beta): mit `ENABLE_BETA_TRACING_DETAILED=1` gehen Logs und Traces dorthin anstatt zu den konfigurierten Exportern. Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert |198| `BETA_TRACING_ENDPOINT` | OTLP-Endpunkt für [detailliertes Beta-Tracing](/docs/de/monitoring-usage#traces-beta): mit `ENABLE_BETA_TRACING_DETAILED=1` gehen Logs und Traces dorthin statt zu den konfigurierten Exportern. Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert |

199| `CCR_FORCE_BUNDLE` | Setzen Sie auf `1`, um [`claude --cloud`](/docs/de/claude-code-on-the-web#send-local-repositories-without-github) zu zwingen, Ihr lokales Repository zu bündeln und hochzuladen, anstatt es von seinem Remote zu klonen |199| `CCR_FORCE_BUNDLE` | Setzen Sie auf `1`, um [`claude --cloud`](/docs/de/claude-code-on-the-web#send-local-repositories-without-github) zu zwingen, Ihr lokales Repository zu bündeln und hochzuladen, anstatt es von seinem Remote zu klonen |

200| `CLAUDECODE` | Setzen Sie auf `1` in Subprozessen, die Claude Code spawnt (Bash- und PowerShell-Tools, Tmux-Sitzungen, [Hook](/docs/de/hooks)-Befehle, [Status-Zeile](/docs/de/statusline)-Befehle, Stdio-[MCP-Server](/docs/de/mcp)-Subprozesse). IDE-Erweiterungen setzen dies auch in ihren integrierten Terminals. Verwenden Sie, um zu erkennen, wenn ein Skript in einem Subprocess läuft, der von Claude Code spawnt wurde. Um zu überprüfen, ob der aktuelle Prozess direkt von einem Tool-Aufruf oder Hook spawnt wurde, anstatt in einem Stdio-MCP-Server, den Claude Code gestartet hat, verwenden Sie stattdessen `CLAUDE_CODE_CHILD_SESSION` |200| `CLAUDECODE` | Setzen Sie auf `1` in Subprozessen, die Claude Code spawnt (Bash- und PowerShell-Tools, tmux-Sitzungen, [Hook](/docs/de/hooks)-Befehle, [Status-Zeile](/docs/de/statusline)-Befehle, stdio [MCP-Server](/docs/de/mcp)-Subprozesse). IDE-Erweiterungen setzen dies auch in ihren integrierten Terminals. Verwenden Sie, um zu erkennen, wenn ein Skript in einem Subprocess läuft, der von Claude Code spawnt wurde. Um zu überprüfen, ob der aktuelle Prozess direkt von einem Tool-Aufruf oder Hook spawnt wurde, anstatt in einem stdio MCP-Server, den Claude Code gestartet hat, verwenden Sie stattdessen `CLAUDE_CODE_CHILD_SESSION` |

201| `CLAUDE_AFK_COUNTDOWN_MS` | Wie viele Millisekunden vor Auto-Continue der Countdown auf dem Bildschirm auf einem unbeantworteten [`AskUserQuestion`](/docs/de/tools-reference)-Dialog erscheint. Standard `20000` (20 Sekunden), begrenzt durch das Auto-Continue-Timeout. Hat keine Auswirkung, wenn Auto-Continue nicht aktiviert ist; siehe die [`askUserQuestionTimeout`](/docs/de/settings-reference#askuserquestiontimeout)-Einstellung und `CLAUDE_AFK_TIMEOUT_MS`. Erfordert Claude Code v2.1.198 oder später |201| `CLAUDE_AFK_COUNTDOWN_MS` | Wie viele Millisekunden vor Auto-Continue der Countdown auf dem Bildschirm auf einem unbeantworteten [`AskUserQuestion`](/docs/de/tools-reference)-Dialog erscheint. Standard `20000` (20 Sekunden), begrenzt durch das Auto-Continue-Timeout. Hat keine Auswirkung, wenn Auto-Continue nicht eingeschaltet ist; siehe die [`askUserQuestionTimeout`](/docs/de/settings-reference#askuserquestiontimeout)-Einstellung und `CLAUDE_AFK_TIMEOUT_MS`. Erfordert Claude Code v2.1.198 oder später |

202| `CLAUDE_AFK_TIMEOUT_MS` | Wie viele Millisekunden Leerlaufzeit vor einem unbeantworteten [`AskUserQuestion`](/docs/de/tools-reference)-Dialog Auto-Continue ohne Sie. Auto-Continue ist standardmäßig aus; aktivieren Sie es mit der [`askUserQuestionTimeout`](/docs/de/settings-reference#askuserquestiontimeout)-Einstellung. Diese Variable ist ein Override für Demos und automatisierte Tests: wenn gesetzt, hat sie Vorrang vor dieser Einstellung und schaltet Auto-Continue ein, auch wenn die Einstellung nicht gesetzt oder `never` ist. Das Setzen von `0` schaltet das Timeout nicht aus; es schließt den Dialog sofort. In v2.1.198 und v2.1.199 war Auto-Continue standardmäßig mit einem `60000` (60 Sekunden) Timeout aktiviert. Erfordert Claude Code v2.1.198 oder später |202| `CLAUDE_AFK_TIMEOUT_MS` | Wie viele Millisekunden Leerlaufzeit vor einem unbeantworteten [`AskUserQuestion`](/docs/de/tools-reference)-Dialog Auto-Continue ohne Sie. Auto-Continue ist standardmäßig aus; aktivieren Sie es mit der [`askUserQuestionTimeout`](/docs/de/settings-reference#askuserquestiontimeout)-Einstellung. Diese Variable ist ein Override für Demos und automatisierte Tests: wenn gesetzt, hat sie Vorrang vor dieser Einstellung und schaltet Auto-Continue ein, auch wenn die Einstellung nicht gesetzt oder `never` ist. Das Setzen von `0` schaltet das Timeout nicht aus; es schließt den Dialog sofort. In v2.1.198 und v2.1.199 war Auto-Continue standardmäßig mit einem `60000` (60 Sekunden) Timeout eingeschaltet. Erfordert Claude Code v2.1.198 oder später |

203| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | Setzen Sie auf `1`, um alle integrierten [Subagent](/docs/de/sub-agents)-Typen wie Explore und Plan zu deaktivieren. Gilt nur im nicht-interaktiven Modus (die `-p`-Flag). Nützlich für SDK-Benutzer, die eine leere Tafel wünschen. Dies entfernt auch `general-purpose`, den Subagent, den Claude Code ausführt, wenn ein Agent-Tool-Aufruf `subagent_type` auslässt. Ein solcher Aufruf schlägt dann mit [`subagent_type is required`](/docs/de/errors#subagent-type-is-required) fehl |203| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | Setzen Sie auf `1`, um alle integrierten [Subagent](/docs/de/sub-agents)-Typen wie Explore und Plan zu deaktivieren. Gilt nur im nicht-interaktiven Modus (das `-p`-Flag). Nützlich für SDK-Benutzer, die eine leere Tafel wünschen. Dies entfernt auch `general-purpose`, den Subagent, den Claude Code ausführt, wenn ein Agent-Tool-Aufruf `subagent_type` auslässt. Ein solcher Aufruf schlägt dann mit [`subagent_type is required`](/docs/de/errors#subagent-type-is-required) fehl |

204| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | Setzen Sie auf `1`, um das `mcp__<server>__`-Präfix bei Tool-Namen von SDK-erstellten MCP-Servern zu überspringen. Tools verwenden ihre ursprünglichen Namen. Nur SDK-Verwendung |204| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | Setzen Sie auf `1`, um das `mcp__<server>__`-Präfix bei Tool-Namen von SDK-erstellten MCP-Servern zu überspringen. Tools verwenden ihre ursprünglichen Namen. Nur SDK-Verwendung |

205| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | Stall-Timeout in Millisekunden für Subagents. Standard `600000` (10 Minuten); wenn Sie `CLAUDE_STREAM_IDLE_TIMEOUT_MS` erhöhen, während der Stream-Watchdog aktiviert ist, steigt der Standard mit ihm, wie [Langsame oder steckengebliebene API-Antworten behandeln](/docs/de/agent-sdk/typescript#handle-slow-or-stalled-api-responses) beschreibt. Der Timer setzt sich bei jedem Streaming-Fortschrittsereignis zurück; wenn kein Fortschritt innerhalb des Fensters ankommt, bricht Claude Code den Subagent ab und meldet den Stall dem übergeordneten |205| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | Stall-Timeout in Millisekunden für Subagents. Standard `600000` (10 Minuten); wenn Sie `CLAUDE_STREAM_IDLE_TIMEOUT_MS` erhöhen, während der Stream-Watchdog eingeschaltet ist, steigt der Standard mit ihm, wie [Langsame oder steckengebliebene API-Antworten handhaben](/docs/de/agent-sdk/typescript#handle-slow-or-stalled-api-responses) beschreibt. Der Timer setzt sich bei jedem Streaming-Fortschrittsereignis zurück; wenn kein Fortschritt innerhalb des Fensters ankommt, bricht Claude Code den Subagent ab und meldet den Stall dem übergeordneten |

206| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Setzen Sie den Prozentsatz (1-100) des Auto-Compact-Fensters, bei dem Auto-Compaction ausgelöst wird. Verwenden Sie niedrigere Werte wie `50`, um früher zu komprimieren; die Variable kann die Schwelle nicht erhöhen, daher werden Werte über dem Standard-Prozentsatz ignoriert. Sie gilt nur in Sitzungen, die [vor dem Kontext-Limit des Modells komprimieren](/docs/de/model-config#context-window-and-auto-compaction). Gilt für Hauptkonversationen und Subagents |206| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Setzen Sie den Prozentsatz (1-100) des Auto-Compact-Fensters, bei dem Auto-Compaction ausgelöst wird. Verwenden Sie niedrigere Werte wie `50`, um früher zu komprimieren; die Variable kann die Schwelle nicht erhöhen, daher werden Werte über dem Standard-Prozentsatz ignoriert. Sie gilt nur in Sitzungen, die [vor dem Kontext-Limit des Modells komprimieren](/docs/de/model-config#context-window-and-auto-compaction). Gilt für Hauptkonversationen und Subagents |

207| `CLAUDE_AUTO_BACKGROUND_TASKS` | Setzen Sie auf `1`, um automatisches Backgrounding von lang laufenden Agent-Aufgaben zu erzwingen. Wenn aktiviert, werden Subagents nach etwa zwei Minuten Laufzeit in den Hintergrund verschoben. Aktiviert auch [automatisches Backgrounding von langen MCP-Tool-Aufrufen](/docs/de/mcp#automatic-backgrounding-of-long-tool-calls) im nicht-interaktiven Modus auf Claude Code v2.1.212 oder später |207| `CLAUDE_AUTO_BACKGROUND_TASKS` | Setzen Sie auf `1`, um die automatische Hintergrund-Verschiebung von lang laufenden Agent-Aufgaben zu erzwingen. Wenn aktiviert, werden Subagents nach etwa zwei Minuten Laufzeit in den Hintergrund verschoben. Aktiviert auch [automatische Hintergrund-Verschiebung von langen MCP-Tool-Aufrufen](/docs/de/mcp#automatic-backgrounding-of-long-tool-calls) im nicht-interaktiven Modus auf Claude Code v2.1.212 oder später |

208| `CLAUDE_AX_PREPARK_MS` | Im [Screen-Reader-Modus](/docs/de/accessibility#what-your-screen-reader-hears), wie viele Millisekunden Claude Code wartet, mit dem Cursor am Anfang der Zeile, bevor es eine neue oder geänderte Zeile schreibt. Standard `50`. Setzen Sie auf `0`, um sofort zu schreiben. Claude Code begrenzt das Warten auf `5000`. Erfordert Claude Code v2.1.233 oder später |208| `CLAUDE_AX_PREPARK_MS` | Im [Screen-Reader-Modus](/docs/de/accessibility#what-your-screen-reader-hears) wartet Claude Code mit dem Cursor am Anfang der Zeile, bevor es eine neue oder geänderte Zeile schreibt, für diese viele Millisekunden. Standard `50`. Setzen Sie `0`, um sofort zu schreiben. Claude Code begrenzt das Warten auf `5000`. Erfordert Claude Code v2.1.233 oder später |

209| `CLAUDE_AX_SCREEN_READER` | Setzen Sie auf `1`, um Screen-Reader-freundliche Ausgabe zu rendern: flacher Text ohne dekorative Rahmen oder Animationen. Setzen Sie auf `0`, um den Screen-Reader-Modus zwangsweise auszuschalten, auch wenn [`axScreenReader`](/docs/de/settings-reference#axscreenreader) `true` ist. Die [`--ax-screen-reader`](/docs/de/cli-reference#cli-flags)-Flag hat Vorrang. Erfordert Claude Code v2.1.181 oder später |209| `CLAUDE_AX_SCREEN_READER` | Setzen Sie auf `1`, um Screen-Reader-freundliche Ausgabe zu rendern: flacher Text ohne dekorative Rahmen oder Animationen. Setzen Sie auf `0`, um den Screen-Reader-Modus zu erzwingen, auch wenn [`axScreenReader`](/docs/de/settings-reference#axscreenreader) `true` ist. Das [`--ax-screen-reader`](/docs/de/cli-reference#cli-flags)-Flag hat Vorrang. Erfordert Claude Code v2.1.181 oder später |

210| `CLAUDE_AX_STARTUP_QUIET_MS` | Im [Screen-Reader-Modus](/docs/de/accessibility), wie viele Millisekunden Claude Code das erste Interface-Rendering nach der Startup-Bestätigungszeile hält, damit Ihr Screen Reader die Zeile vollständig sprechen kann, bevor neue Ausgabe sie unterbricht. Standard `3000`. Setzen Sie auf `0`, um sofort zu rendern. Claude Code begrenzt das Halten auf `600000` (10 Minuten). Ihr erster Tastendruck beendet das Halten früh. Erfordert Claude Code v2.1.217 oder später |210| `CLAUDE_AX_STARTUP_QUIET_MS` | Im [Screen-Reader-Modus](/docs/de/accessibility) hält Claude Code das erste Interface-Rendering nach der Startup-Bestätigungszeile für diese viele Millisekunden, damit Ihr Screen Reader die Zeile vollständig sprechen kann, bevor neue Ausgabe sie unterbricht. Standard `3000`. Setzen Sie `0`, um sofort zu rendern. Claude Code begrenzt das Halten auf `600000` (10 Minuten). Ihr erster Tastendruck beendet das Halten früh. Erfordert Claude Code v2.1.217 oder später |

211| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | Kehren Sie nach jedem Bash- oder PowerShell-Befehl in der Hauptsitzung zum ursprünglichen Arbeitsverzeichnis zurück |211| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | Kehren Sie nach jedem Bash- oder PowerShell-Befehl in der Hauptsitzung zum ursprünglichen Arbeitsverzeichnis zurück |

212| `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` | Timeout in Millisekunden für den Byte-Level-Streaming-Idle-Watchdog; wenn gesetzt, hat es Vorrang vor `CLAUDE_STREAM_IDLE_TIMEOUT_MS` für diesen Watchdog und lässt den Event-Level-Watchdog unverändert. Claude Code begrenzt diese Variable auf zwischen 10 Sekunden und 30 Minuten. Erfordert Claude Code v2.1.210 oder später |212| `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` | Timeout in Millisekunden für den Byte-Level-Streaming-Idle-Watchdog; wenn gesetzt, hat es Vorrang vor `CLAUDE_STREAM_IDLE_TIMEOUT_MS` für diesen Watchdog und lässt den Event-Level-Watchdog unverändert. Claude Code begrenzt diese Variable auf zwischen 10 Sekunden und 30 Minuten. Erfordert Claude Code v2.1.210 oder später |

213| `CLAUDE_CLIENT_PRESENCE_FILE` | Pfad zu einer Datei, die ein externes Tool, wie ein Screen-Lock-Listener, erstellt, wenn Sie Ihren Bildschirm entsperren, und löscht, wenn Sie ihn sperren. Während die Datei existiert, überspringt Claude Code [Remote Control Mobile Push-Benachrichtigungen](/docs/de/remote-control#mobile-push-notifications), daher erhalten Sie keine Pushes, während Sie den Computer aktiv nutzen. Wenn die Datei abwesend oder unlesbar ist, werden Benachrichtigungen normal gesendet. Claude Code überprüft die Datei einmal pro Push-auslösendem Ereignis, anstatt sie abzufragen. Erfordert Claude Code v2.1.181 oder später |213| `CLAUDE_CLIENT_PRESENCE_FILE` | Pfad zu einer Datei, die ein externes Tool, wie ein Screen-Lock-Listener, erstellt, wenn Sie Ihren Bildschirm entsperren, und löscht, wenn Sie ihn sperren. Während die Datei existiert, überspringt Claude Code [Remote Control Mobile Push-Benachrichtigungen](/docs/de/remote-control#mobile-push-notifications), daher erhalten Sie keine Pushes, während Sie den Computer aktiv nutzen. Wenn die Datei abwesend oder unlesbar ist, werden Benachrichtigungen normal gesendet. Claude Code prüft die Datei einmal pro Push-auslösendes Ereignis, anstatt sie abzufragen. Erfordert Claude Code v2.1.181 oder später |

214| `CLAUDE_CODE_ACCESSIBILITY` | Setzen Sie auf `1`, um den nativen Terminal-Cursor sichtbar zu halten und den invertierten Text-Cursor-Indikator zu deaktivieren. Ermöglicht Screen-Magnifiern wie macOS Zoom, die Cursor-Position zu verfolgen |214| `CLAUDE_CODE_ACCESSIBILITY` | Setzen Sie auf `1`, um den nativen Terminal-Cursor sichtbar zu halten und den invertierten Text-Cursor-Indikator zu deaktivieren. Ermöglicht Screen-Magnifier wie macOS Zoom, die Cursor-Position zu verfolgen |

215| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | Setzen Sie auf `1`, um Memory-Dateien aus Verzeichnissen zu laden, die mit `--add-dir` angegeben sind. Lädt `CLAUDE.md`, `.claude/CLAUDE.md`, `.claude/rules/*.md` und `CLAUDE.local.md`. Standardmäßig laden zusätzliche Verzeichnisse keine Memory-Dateien |215| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | Setzen Sie auf `1`, um Memory-Dateien aus Verzeichnissen zu laden, die mit `--add-dir` angegeben sind. Lädt `CLAUDE.md`, `.claude/CLAUDE.md`, `.claude/rules/*.md` und `CLAUDE.local.md`. Standardmäßig laden zusätzliche Verzeichnisse keine Memory-Dateien |

216| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | Setzen Sie auf `1`, um den gesamten Bildschirm bei jedem Frame im [Vollbild-Rendering](/docs/de/fullscreen) neu zu zeichnen, anstatt inkrementelle Updates zu senden. Verwenden Sie dies, wenn der Vollbildmodus veraltete oder falsch platzierte Text-Fragmente zeigt. Claude Code aktiviert dies automatisch für Hintergrund-Sitzungen und [Agent-Ansicht](/docs/de/agent-view) unter Windows |216| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | Setzen Sie auf `1`, um den gesamten Bildschirm bei jedem Frame im [Vollbild-Rendering](/docs/de/fullscreen) neu zu zeichnen, anstatt inkrementelle Updates zu senden. Verwenden Sie dies, wenn der Vollbildmodus veraltete oder falsch platzierte Text-Fragmente zeigt. Claude Code aktiviert dies automatisch für Hintergrund-Sitzungen und [Agent-Ansicht](/docs/de/agent-view) unter Windows |

217| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | Setzen Sie auf `1`, um den [Effort](/docs/de/model-config#adjust-effort-level)-Parameter bei jeder Anfrage zu senden, auch wenn Claude Code die Modell-ID nicht als Effort-fähig erkennt. Verwenden Sie dies beim Routing durch ein [LLM-Gateway](/docs/de/llm-gateway) oder Drittanbieter-Provider, der Modelle unter benutzerdefinierten Identifiern bereitstellt. Modelle, die den Effort-Parameter bei der API ablehnen, einschließlich Claude 3-Modelle, Sonnet 4.0 und 4.5, Opus 4.0 und 4.1 und Haiku 4.5, sind immer noch ausgeschlossen, damit Anfragen nicht fehlschlagen |217| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | Setzen Sie auf `1`, um den [Effort](/docs/de/model-config#adjust-effort-level)-Parameter mit jeder Anfrage zu senden, auch wenn Claude Code die Modell-ID nicht als Effort-fähig erkennt. Verwenden Sie dies beim Routing durch ein [LLM-Gateway](/docs/de/llm-gateway) oder Drittanbieter-Provider, der Modelle unter benutzerdefinierten Identifiern bereitstellt. Modelle, die den Effort-Parameter bei der API ablehnen, einschließlich Claude 3-Modelle, Sonnet 4.0 und 4.5, Opus 4.0 und 4.1 und Haiku 4.5, sind immer noch ausgeschlossen, damit Anfragen nicht fehlschlagen |

218| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | Intervall in Millisekunden, in dem Credentials aktualisiert werden sollten (bei Verwendung von [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper)) |218| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | Intervall in Millisekunden, in dem Anmeldedaten aktualisiert werden sollten (bei Verwendung von [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper)) |

219| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | Setzen Sie auf `0`, um Claude Code davon abzuhalten, den Browser automatisch zu öffnen, wenn ein neues [Artifact](/docs/de/artifacts#create-an-artifact) veröffentlicht wird |219| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | Setzen Sie auf `0`, um Claude Code daran zu hindern, den Browser automatisch zu öffnen, wenn ein neues [Artifact](/docs/de/artifacts#create-an-artifact) veröffentlicht wird |

220| `CLAUDE_CODE_ARTIFACT_COMMENTS` | Setzen Sie auf `0`, um Claude davon abzuhalten, [Kommentare auf einem Artifact](/docs/de/artifacts#collect-comments-on-an-artifact) zu lesen und zu beantworten. Hat keine Auswirkung, wenn `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` [Artifacts ausgeschaltet hat](/docs/de/artifacts#availability). Erfordert Claude Code v2.1.221 oder später |220| `CLAUDE_CODE_ARTIFACT_COMMENTS` | Setzen Sie auf `0`, um Claude daran zu hindern, [Kommentare auf einem Artifact](/docs/de/artifacts#collect-comments-on-an-artifact) zu lesen und zu beantworten. Hat keine Auswirkung, wenn `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` [Artifacts ausgeschaltet hat](/docs/de/artifacts#availability). Erfordert Claude Code v2.1.221 oder später |

221| `CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT` | Setzen Sie auf `0`, um Claude davon abzuhalten, [auf Kommentare, die an es gesendet werden, von selbst zu antworten](/docs/de/artifacts#let-claude-reply-to-comments-on-its-own). Erfordert Claude Code v2.1.228 oder später |221| `CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT` | Setzen Sie auf `0`, um Claude daran zu hindern, [auf Kommentare auf eigene Faust zu antworten](/docs/de/artifacts#let-claude-reply-to-comments-on-its-own). Erfordert Claude Code v2.1.228 oder später |

222| `CLAUDE_CODE_ATTRIBUTION_HEADER` | Setzen Sie auf `0`, um den [Attributionsblock](/docs/de/llm-gateway-protocol#system-prompt-attribution-block) auszulassen, der die Client-Version und einen Prompt-Fingerabdruck trägt, vom Anfang des System-Prompts. Caching bei einer direkten Verbindung zur Anthropic API ist in jedem Fall unbeeinträchtigt. In einigen direkten Verbindungs-Setups behält Claude Code den Block bei [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode)-Klassifizierer-Anfragen, auch wenn Sie `0` setzen. In [System-Prompt-Attributionsblock](/docs/de/llm-gateway-protocol#system-prompt-attribution-block) überprüfen Sie, welche Verbindungen und Credentials dies abdeckt. Vor v2.1.181 enthielt der Block ein Pro-Request-Token bei benutzerdefinierten Basis-URLs und Microsoft Foundry-Verbindungen, daher setzen Sie auf `0` auf diesen Versionen, wenn Ihr LLM-Gateway auf dem Request-Body cached oder Anfragen an einen Drittanbieter-Provider weiterleitet, oder wenn Sie sich direkt mit Microsoft Foundry verbinden |222| `CLAUDE_CODE_ATTRIBUTION_HEADER` | Setzen Sie auf `0`, um den [Attributions-Block](/docs/de/llm-gateway-protocol#system-prompt-attribution-block), der die Client-Version und einen Prompt-Fingerabdruck trägt, vom Anfang des System-Prompts auszulassen. Caching bei einer direkten Verbindung zur Anthropic API ist in jedem Fall unbeeinträchtigt. In einigen direkten Verbindungs-Setups behält Claude Code den Block bei [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode)-Klassifizierer-Anfragen, auch wenn Sie `0` setzen. In [System-Prompt-Attributions-Block](/docs/de/llm-gateway-protocol#system-prompt-attribution-block) überprüfen Sie, welche Verbindungen und Anmeldedaten dies abdeckt. Vor v2.1.181 enthielt der Block ein Pro-Request-Token bei benutzerdefinierten Basis-URLs und Microsoft Foundry-Verbindungen, daher setzen Sie auf diesen Versionen `0`, wenn Ihr LLM-Gateway auf dem Request-Body zwischenspeichert oder Anfragen an einen Drittanbieter-Provider weiterleitet, oder wenn Sie sich direkt mit Microsoft Foundry verbinden |

223| `CLAUDE_CODE_AUTO_BACKGROUND_WORKER_CHECKIN_SECONDS` | Wenn `CLAUDE_AUTO_BACKGROUND_TASKS` aktiviert ist, Sekunden zwischen Erinnerungen an Claude, um [Background-Subagents](/docs/de/sub-agents#run-subagents-in-foreground-or-background) zu überprüfen, die noch laufen. Akzeptiert nur eine einfache Ganzzahl von `1` bis `86400`; jeder andere Wert oder jede andere Schreibweise wird als nicht gesetzt gelesen. Wenn nicht gesetzt, gibt es keine Check-in-Erinnerungen. Erfordert Claude Code v2.1.248 oder später |223| `CLAUDE_CODE_AUTO_BACKGROUND_WORKER_CHECKIN_SECONDS` | Wenn `CLAUDE_AUTO_BACKGROUND_TASKS` aktiviert ist, Sekunden zwischen Erinnerungen an Claude, um [Hintergrund-Subagents](/docs/de/sub-agents#run-subagents-in-foreground-or-background) zu überprüfen, die noch laufen. Akzeptiert nur eine einfache Ganzzahl von `1` bis `86400`; jeder andere Wert oder jede andere Schreibweise wird als nicht gesetzt gelesen. Wenn nicht gesetzt, gibt es keine Check-in-Erinnerungen. Erfordert Claude Code v2.1.248 oder später |

224| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | Setzen Sie das [Auto-Compact-Fenster](/docs/de/model-config#set-the-auto-compact-window) in Tokens, von `100000` bis `1000000`. Akzeptiert nur eine einfache Ganzzahl wie `500000`: ein Wert wie `500k` wird als `500` gelesen und auf das 100K-Minimum begrenzt. Das effektive Fenster ist auch auf das Kontext-Fenster des Modells begrenzt. Hat Vorrang vor dem `/autocompact`-Befehl, der `--autocompact`-Flag und der `autoCompactWindow`-Einstellung. Die `used_percentage` der Status-Zeile misst immer gegen das vollständige Kontext-Fenster des Modells, daher zeigt dieser Prozentsatz nicht mehr an, wann Compaction läuft, sobald diese Variable gesetzt ist |224| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | Setzen Sie das [Auto-Compact-Fenster](/docs/de/model-config#set-the-auto-compact-window) in Tokens, von `100000` bis `1000000`. Akzeptiert nur eine einfache Ganzzahl wie `500000`: ein Wert wie `500k` wird als `500` gelesen und auf das 100K-Minimum begrenzt. Das effektive Fenster ist auch auf das Kontext-Fenster des Modells begrenzt. Hat Vorrang vor dem `/autocompact`-Befehl, dem `--autocompact`-Flag und der `autoCompactWindow`-Einstellung. Die `used_percentage` der Status-Zeile misst sich immer gegen das vollständige Kontext-Fenster des Modells, daher zeigt dieser Prozentsatz nicht mehr an, wann Compaction läuft, sobald diese Variable gesetzt ist |

225| `CLAUDE_CODE_AUTO_CONNECT_IDE` | Überschreiben Sie die automatische [IDE-Verbindung](/docs/de/vs-code). Standardmäßig verbindet sich Claude Code automatisch, wenn es in einem unterstützten IDE-integrierten Terminal gestartet wird. Setzen Sie auf `false`, um dies zu verhindern. Setzen Sie auf `true`, um eine Verbindung zu erzwingen, wenn die automatische Erkennung fehlschlägt, wie wenn Tmux das übergeordnete Terminal verdeckt. Hat Vorrang vor der [`autoConnectIde`](/docs/de/settings-reference#autoconnectide)-Einstellung der globalen Konfiguration |225| `CLAUDE_CODE_AUTO_CONNECT_IDE` | Überschreiben Sie die automatische [IDE-Verbindung](/docs/de/vs-code). Standardmäßig verbindet sich Claude Code automatisch, wenn es in einem unterstützten IDE-integrierten Terminal gestartet wird. Setzen Sie auf `false`, um dies zu verhindern. Setzen Sie auf `true`, um eine Verbindung zu erzwingen, wenn die automatische Erkennung fehlschlägt, wie wenn tmux das übergeordnete Terminal verdeckt. Hat Vorrang vor der [`autoConnectIde`](/docs/de/settings-reference#autoconnectide) globalen Konfigurationseinstellung |

226| `CLAUDE_CODE_AUTO_MODE_SERVER` | Kontrolliert, ob Claude Code den Server auffordert, [Auto-Modus-Aktionen zu überprüfen](/docs/de/permission-modes#server-side-classifier-review). Wenn nicht gesetzt, fordert Claude Code den Server auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und Claude Platform on AWS auf, und wenn Sie `ANTHROPIC_BASE_URL` auf ein LLM-Gateway oder einen Proxy verweisen. Setzen Sie auf `0`, um stattdessen Claude Code's eigene Klassifizierer-Anfragen zu verwenden. Wird nicht auf einer direkten Verbindung zur Anthropic API gelesen. Erfordert Claude Code v2.1.271 oder später; das Auffordern des Servers standardmäßig erfordert v2.1.278 oder später |226| `CLAUDE_CODE_AUTO_MODE_SERVER` | Steuert, ob Claude Code den Server bittet, [Auto-Mode-Aktionen zu überprüfen](/docs/de/permission-modes#server-side-classifier-review). Setzen Sie auf `0`, um stattdessen Claude Code's eigene Klassifizierer-Anfragen zu verwenden. Bei einer direkten Verbindung zur Anthropic API erfordert v2.1.281 oder später. Der verlinkte Abschnitt listet auf, welche Sitzungen den Server fragen, wenn die Variable nicht gesetzt ist, und ab welcher Version. Erfordert Claude Code v2.1.271 oder später |

227| `CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS` | Zeit in Millisekunden, die Claude Code auf die AWS-Standard-Credential-Provider-Kette wartet, um Credentials zu produzieren, bevor die Anfrage mit [`AWS default-chain credential resolve timed out`](/docs/de/errors#aws-default-chain-credential-resolve-timed-out) fehlschlägt (Standard: `60000`). Erhöhen Sie dies, wenn ein Schritt in Ihrer Kette legitim länger braucht, wie eine Browser-basierte SSO-Anmeldung mit MFA durch einen Wrapper wie `aws-vault`. Gilt überall dort, wo Claude Code mit der Standard-Kette signiert: [Amazon Bedrock](/docs/de/amazon-bedrock#credential-caching-and-resolution-timeout), [Claude Platform on AWS](/docs/de/claude-platform-on-aws) und der [Mantle-Endpunkt](/docs/de/amazon-bedrock#use-the-mantle-endpoint). Erfordert Claude Code v2.1.207 oder später |227| `CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS` | Zeit in Millisekunden, die Claude Code auf die AWS-Standard-Anmeldedaten-Provider-Kette wartet, um Anmeldedaten zu produzieren, bevor die Anfrage mit [`AWS default-chain credential resolve timed out`](/docs/de/errors#aws-default-chain-credential-resolve-timed-out) fehlschlägt (Standard: `60000`). Erhöhen Sie dies, wenn ein Schritt in Ihrer Kette legitim länger braucht, wie eine Browser-basierte SSO-Anmeldung mit MFA durch einen Wrapper wie `aws-vault`. Gilt überall dort, wo Claude Code mit der Standard-Kette signiert: [Amazon Bedrock](/docs/de/amazon-bedrock#credential-caching-and-resolution-timeout), [Claude Platform on AWS](/docs/de/claude-platform-on-aws) und der [Mantle-Endpunkt](/docs/de/amazon-bedrock#use-the-mantle-endpoint). Erfordert Claude Code v2.1.207 oder später |

228| `CLAUDE_CODE_BASH_EDIT_DIFF` | Setzen Sie auf `0`, um das [Diff der Dateien, die ein Bash-Befehl geändert hat](/docs/de/hooks#bash), auszuschalten, oder `1`, um es in jedem Berechtigungsmodus zu erfassen. Hat Vorrang vor der [`bashEditDiffEnabled`](/docs/de/settings-reference#basheditdiffenabled)-Einstellung. Erfordert Claude Code v2.1.269 oder später |228| `CLAUDE_CODE_BASH_EDIT_DIFF` | Setzen Sie auf `0`, um das [Diff der Dateien, die sich geändert haben, während ein Bash-Befehl lief](/docs/de/hooks#bash), auszuschalten, oder `1`, um es in jedem Permission-Modus zu erfassen. Hat Vorrang vor der [`bashEditDiffEnabled`](/docs/de/settings-reference#basheditdiffenabled)-Einstellung. Erfordert Claude Code v2.1.269 oder später |

229| `CLAUDE_CODE_BG_TASKS_REPORT_RUNNING` | Setzen Sie auf `0`, um eine nicht-interaktive Sitzung einen Idle-Status an ihren Host bei jedem Turn-Ende zu melden, auch während Hintergrundarbeit noch läuft. Standardmäßig meldet die Sitzung einen Running-Status über das Turn-Ende hinaus, während Hintergrundarbeit wie ein Background-Agent oder ein [Workflow](/docs/de/workflows)-Lauf noch live ist. Dies hält einen Host, der den Status beobachtet, wie eine Remote-Sitzungsliste, davon ab, anzukündigen, dass Claude auf Ihre Eingabe wartet, während Arbeit läuft. Background-Shell-Befehle, wie ein Dev-Server, halten nicht den Running-Status. Der Running-Status-Standard und das `0`-Opt-out erfordern Claude Code v2.1.269 oder später; auf früheren Versionen setzen Sie `1`, um den Running-Status zu halten |229| `CLAUDE_CODE_BG_TASKS_REPORT_RUNNING` | Setzen Sie auf `0`, um eine nicht-interaktive Sitzung dazu zu bringen, einen Idle-Status an ihren Host bei jedem Turn-Ende zu melden, auch während Hintergrundarbeit noch läuft. Standardmäßig meldet die Sitzung einen Running-Status über das Turn-Ende hinaus, während Hintergrundarbeit wie ein Hintergrund-Agent oder ein [Workflow](/docs/de/workflows)-Lauf noch aktiv ist. Dies hält einen Host, der den Status beobachtet, wie eine Remote-Sitzungsliste, davon ab, anzukündigen, dass Claude auf Ihre Eingabe wartet, während Arbeit läuft. Hintergrund-Shell-Befehle, wie ein Dev-Server, halten nicht den Running-Status. Der Running-Status-Standard und das `0`-Opt-out erfordern Claude Code v2.1.269 oder später; auf früheren Versionen setzen Sie `1`, um den Running-Status zu halten |

230| `CLAUDE_CODE_BRIDGE_SESSION_ID` | Wird automatisch in Bash-Tool- und [Hook-Befehl](/docs/de/hooks)-Subprozessen gesetzt, während die Sitzung eine aktive [Remote Control](/docs/de/remote-control)-Verbindung hat, und entfernt, wenn die Verbindung endet. Der Wert ist die Sitzungs-ID in `session_`-Form, der gleiche Identifier, der in der `claude.ai/code`-URL der Sitzung erscheint, daher kann ein Skript zurück zur Sitzung, die es ausgeführt hat, verlinken. Erfordert Claude Code v2.1.199 oder später. In [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) lesen Sie stattdessen `CLAUDE_CODE_REMOTE_SESSION_ID` |230| `CLAUDE_CODE_BRIDGE_SESSION_ID` | Wird automatisch in Bash-Tool- und [Hook-Befehls](/docs/de/hooks)-Subprozessen gesetzt, während die Sitzung eine aktive [Remote Control](/docs/de/remote-control)-Verbindung hat, und entfernt, wenn die Verbindung endet. Der Wert ist die Sitzungs-ID in `session_`-Form, der gleiche Identifikator, der in der `claude.ai/code`-URL der Sitzung erscheint, daher kann ein Skript zurück zur Sitzung verlinken, die es ausgeführt hat. Erfordert Claude Code v2.1.199 oder später. In [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) lesen Sie stattdessen `CLAUDE_CODE_REMOTE_SESSION_ID` |

231| `CLAUDE_CODE_BS_AS_CTRL_BACKSPACE` | Setzen Sie auf `0`, um Claude Code das `0x08`-Byte, auch geschrieben `^H`, als einfaches Backspace zu lesen, oder `1`, um es als Ctrl+Backspace zu lesen. Jeder Wert ersetzt den Plattform-Standard. Standardmäßig liest Claude Code es als Ctrl+Backspace unter Windows, außer wenn `TERM_PROGRAM` `mintty` oder `TERM` `cygwin` ist, und als einfaches Backspace auf macOS und Linux. Setzen Sie `0` in einem Windows-Terminal, wo [Backspace ein ganzes Wort löscht](/docs/de/terminal-config#fix-backspace-deleting-a-whole-word-on-windows) |231| `CLAUDE_CODE_BS_AS_CTRL_BACKSPACE` | Setzen Sie auf `0`, um Claude Code das `0x08`-Byte, auch geschrieben `^H`, als einfaches Backspace zu lesen, oder `1`, um es als Ctrl+Backspace zu lesen. Jeder Wert ersetzt den Plattform-Standard. Standardmäßig liest Claude Code es als Ctrl+Backspace unter Windows, außer wenn `TERM_PROGRAM` `mintty` oder `TERM` `cygwin` ist, und als einfaches Backspace auf macOS und Linux. Setzen Sie `0` in einem Windows-Terminal, wo [Backspace ein ganzes Wort löscht](/docs/de/terminal-config#fix-backspace-deleting-a-whole-word-on-windows) |

232| `CLAUDE_CODE_CERT_STORE` | Komma-getrennte Liste von CA-Zertifikat-Quellen für TLS-Verbindungen. `bundled` ist der Mozilla CA-Satz, der mit Claude Code ausgeliefert wird. `system` ist der Betriebssystem-Vertrauensspeicher, nur auf Runtimes mit `tls.getCACertificates` lesbar: die native Binärdatei oder Node 22.15 oder später für npm-Installationen. Siehe [CA-Zertifikat-Speicher](/docs/de/network-config#ca-certificate-store). Standard ist `bundled,system` |232| `CLAUDE_CODE_CERT_STORE` | Komma-getrennte Liste von CA-Zertifikat-Quellen für TLS-Verbindungen. `bundled` ist der Mozilla CA-Satz, der mit Claude Code ausgeliefert wird. `system` ist der Betriebssystem-Vertrauensspeicher, nur auf Runtimes mit `tls.getCACertificates` lesbar: die native Binärdatei oder Node 22.15 oder später für npm-Installationen. Siehe [CA-Zertifikat-Speicher](/docs/de/network-config#ca-certificate-store). Standard ist `bundled,system` |

233| `CLAUDE_CODE_CHILD_SESSION` | Wird auf `1` in Subprozessen gesetzt, die Claude Code über die Bash-, PowerShell- und Monitor-Tools, [Hook](/docs/de/hooks)-Befehle und [Status-Zeile](/docs/de/statusline)-Befehle spawnt. Nicht gesetzt für Stdio-[MCP-Server](/docs/de/mcp)-Subprozesse, die langlebig sind und die Sitzung, die sie spawnt hat, überleben. Im Gegensatz zu `CLAUDECODE` wird dies nur von Claude Code selbst gesetzt, wenn es einen Subprocess startet, und nicht von IDE-Erweiterungen, daher unterscheidet es zuverlässig eine verschachtelte Sitzung von einem Top-Level-`claude`, das in einem IDE-integrierten Terminal gestartet wird. Eine verschachtelte interaktive `claude` TUI, die auf diese Weise gestartet wird, wird automatisch von `--resume`, `--continue`, Up-Arrow-Verlauf und der `claude agents`-Liste ausgeschlossen. Nicht-interaktive `claude -p`-Sitzungen bleiben bestehen. Setzen Sie `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1`, um diesen Ausschluss zu überschreiben. Erfordert Claude Code v2.1.172 oder später |233| `CLAUDE_CODE_CHILD_SESSION` | Wird auf `1` in Subprozessen gesetzt, die Claude Code über die Bash-, PowerShell- und Monitor-Tools spawnt, [Hook](/docs/de/hooks)-Befehle und [Status-Zeilen](/docs/de/statusline)-Befehle. Nicht gesetzt für stdio [MCP-Server](/docs/de/mcp)-Subprozesse, die langlebig sind und die Sitzung, die sie spawnt hat, überleben. Im Gegensatz zu `CLAUDECODE` wird dies nur von Claude Code selbst gesetzt, wenn es einen Subprocess startet, und nicht von IDE-Erweiterungen, daher unterscheidet es zuverlässig eine verschachtelte Sitzung von einem Top-Level-`claude`, das in einem IDE-integrierten Terminal gestartet wird. Eine verschachtelte interaktive `claude` TUI, die auf diese Weise gestartet wird, wird automatisch von `--resume`, `--continue`, Up-Arrow-Verlauf und der `claude agents`-Liste ausgeschlossen. Nicht-interaktive `claude -p`-Sitzungen bleiben bestehen. Setzen Sie `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1`, um diesen Ausschluss zu überschreiben. Erfordert Claude Code v2.1.172 oder später |

234| `CLAUDE_CODE_CLIENT_CERT` | Pfad zur Client-Zertifikatsdatei für mTLS-Authentifizierung |234| `CLAUDE_CODE_CLIENT_CERT` | Pfad zu Client-Zertifikat-Datei für mTLS-Authentifizierung |

235| `CLAUDE_CODE_CLIENT_KEY` | Pfad zur privaten Client-Schlüsseldatei für mTLS-Authentifizierung |235| `CLAUDE_CODE_CLIENT_KEY` | Pfad zu Client-Privatschlüssel-Datei für mTLS-Authentifizierung |

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

237| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | Entfernt in v2.1.186 und jetzt ein No-Op. Setzte zuvor ein separates Timeout für die Connect-, TLS- und Response-Header-Phase einer Streaming-API-Anfrage. Verwenden Sie `API_TIMEOUT_MS` für das Pro-Request-Timeout. Für die Response-Header-Phase einer Streaming-Anfrage siehe `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` |237| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | Entfernt in v2.1.186 und jetzt ein No-Op. Setzte zuvor ein separates Timeout für die Connect-, TLS- und Response-Header-Phase einer Streaming-API-Anfrage. Verwenden Sie `API_TIMEOUT_MS` für das Pro-Request-Timeout. Für die Response-Header-Phase einer Streaming-Anfrage siehe `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` |

238| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Überschreiben Sie den Debug-Log-Dateipfad. Trotz des Namens ist dies ein Dateipfad, kein Verzeichnis. Erfordert, dass der Debug-Modus separat über `--debug`, `/debug` oder die `DEBUG`-Umgebungsvariable aktiviert wird: Das Setzen dieser Variablen allein aktiviert keine Protokollierung. Die [`--debug-file`](/docs/de/cli-reference#cli-flags)-Flag macht beides auf einmal. Standardmäßig `~/.claude/debug/<session-id>.txt` |238| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Überschreiben Sie den Debug-Log-Dateipfad. Trotz des Namens ist dies ein Dateipfad, keine Verzeichnis. Erfordert, dass der Debug-Modus separat über `--debug`, `/debug` oder die `DEBUG`-Umgebungsvariable aktiviert wird: Das Setzen dieser Variable allein aktiviert keine Protokollierung. Das [`--debug-file`](/docs/de/cli-reference#cli-flags)-Flag macht beides auf einmal. Standard ist `~/.claude/debug/<session-id>.txt` |

239| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | Minimale Log-Ebene, die in die Debug-Log-Datei geschrieben wird. Werte: `verbose`, `debug` (Standard), `info`, `warn`, `error`. Setzen Sie auf `verbose`, um hochvolumige Diagnosen wie vollständige Status-Zeilen-Befehlsausgabe einzuschließen, oder erhöhen Sie auf `error`, um Rauschen zu reduzieren |239| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | Minimale Log-Ebene, die in die Debug-Log-Datei geschrieben wird. Werte: `verbose`, `debug` (Standard), `info`, `warn`, `error`. Setzen Sie auf `verbose`, um hochvolumige Diagnostiken wie vollständige Status-Zeilen-Befehls-Ausgabe einzuschließen, oder erhöhen Sie auf `error`, um Rauschen zu reduzieren |

240| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | Setzen Sie auf `1`, um die Unterstützung des [1M-Kontext-Fensters](/docs/de/model-config#extended-context) zu deaktivieren. Wenn gesetzt, sind 1M-Modell-Varianten im Modell-Picker nicht verfügbar, und Claude Code hält Sitzungen auf Modellen mit einem nativen 1M-Fenster, wie [Sonnet 5](/docs/de/model-config#sonnet-5-context-window) und die Fable-Modelle, auf einem 200K-Fenster; siehe [Extended Context](/docs/de/model-config#extended-context) für wie die Haltung durchgesetzt wird. Nützlich für Unternehmensumgebungen mit Compliance-Anforderungen. Für seine Rolle bei der Korrektur des Fensters für eine nicht erkannte `[1m]`-Modell-ID siehe [Fenster für eine Gateway- oder benutzerdefinierte Modell-ID korrigieren](/docs/de/model-config#correct-the-window-for-a-gateway-or-custom-model-id) |240| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | Setzen Sie auf `1`, um die Unterstützung des [1M-Kontext-Fensters](/docs/de/model-config#extended-context) zu deaktivieren. Wenn gesetzt, sind 1M-Modell-Varianten im Modell-Picker nicht verfügbar, und Claude Code hält Sitzungen auf Modellen mit einem nativen 1M-Fenster, wie [Sonnet 5](/docs/de/model-config#sonnet-5-context-window) und die Fable-Modelle, auf ein 200K-Fenster; siehe [Extended Context](/docs/de/model-config#extended-context) für wie die Begrenzung durchgesetzt wird. Nützlich für Unternehmensumgebungen mit Compliance-Anforderungen. Für seine Rolle bei der Korrektur des Fensters für eine nicht erkannte `[1m]`-Modell-ID siehe [Fenster für eine Gateway- oder benutzerdefinierte Modell-ID korrigieren](/docs/de/model-config#correct-the-window-for-a-gateway-or-custom-model-id) |

241| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | Setzen Sie auf `1`, um [adaptives Denken](/docs/de/model-config#adjust-effort-level) auf Opus 4.6 und Sonnet 4.6 zu deaktivieren und auf das feste Denk-Budget zurückzufallen, das von `MAX_THINKING_TOKENS` kontrolliert wird. Hat keine Auswirkung auf [Fable-Modelle](/docs/de/model-config#extended-thinking), Sonnet 5 oder Opus 4.7 und später, die immer adaptives Denken verwenden |241| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | Setzen Sie auf `1`, um [adaptives Denken](/docs/de/model-config#adjust-effort-level) auf Opus 4.6 und Sonnet 4.6 zu deaktivieren und auf das feste Denk-Budget zurückzufallen, das von `MAX_THINKING_TOKENS` gesteuert wird. Hat keine Auswirkung auf [Fable-Modelle](/docs/de/model-config#extended-thinking), Sonnet 5 oder Opus 4.7 und später, die immer adaptives Denken verwenden |

242| `CLAUDE_CODE_DISABLE_ADMIN_ENV_UNION` | Setzen Sie auf `1`, um Claude Code davon abzuhalten, [verwaltete Einstellungen](/docs/de/managed-settings#precedence-within-the-managed-tier) `env`-Blöcke pro Schlüssel über Admin-Quellen zu mergen, daher gilt nur der `env`-Block der höchsten Prioritätsquelle, wie vor v2.1.223. Setzen Sie es in der Umgebung, die Claude Code startet, da Claude Code eine Kopie, die durch einen Einstellungs-`env`-Block geliefert wird, ignoriert. Erfordert Claude Code v2.1.223 oder später |242| `CLAUDE_CODE_DISABLE_ADMIN_ENV_UNION` | Setzen Sie auf `1`, um Claude Code daran zu hindern, [verwaltete Einstellungen](/docs/de/managed-settings#precedence-within-the-managed-tier) `env`-Blöcke pro Schlüssel über Admin-Quellen zu mergen, daher gilt nur der `env`-Block der höchsten Prioritäts-Quelle, wie vor v2.1.223. Setzen Sie es in der Umgebung, die Claude Code startet, da Claude Code eine Kopie ignoriert, die durch einen Einstellungs-`env`-Block geliefert wird. Erfordert Claude Code v2.1.223 oder später |

243| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | Setzen Sie auf `1`, um das [Advisor-Tool](/docs/de/advisor) zu deaktivieren. Der `/advisor`-Befehl wird nicht verfügbar, jedes konfigurierte `advisorModel` wird ignoriert, und die `--advisor`-Flag wird akzeptiert, hat aber keine Auswirkung, daher funktionieren bestehende Skripte, die sie übergeben, weiterhin ohne Fehler |243| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | Setzen Sie auf `1`, um das [Advisor-Tool](/docs/de/advisor) zu deaktivieren. Der `/advisor`-Befehl wird nicht verfügbar, jedes konfigurierte `advisorModel` wird ignoriert, und das `--advisor`-Flag wird akzeptiert, hat aber keine Auswirkung, daher funktionieren bestehende Skripte, die es übergeben, weiterhin ohne Fehler |

244| `CLAUDE_CODE_DISABLE_AGENT_VIEW` | Setzen Sie auf `1`, um [Background-Agents und Agent-Ansicht](/docs/de/agent-view) auszuschalten: `claude agents`, `--bg`, `/background` und den On-Demand-Supervisor. Äquivalent zur [`disableAgentView`](/docs/de/settings-reference#disableagentview)-Einstellung |244| `CLAUDE_CODE_DISABLE_AGENT_VIEW` | Setzen Sie auf `1`, um [Hintergrund-Agents und Agent-Ansicht](/docs/de/agent-view) auszuschalten: `claude agents`, `--bg`, `/background` und den On-Demand-Supervisor. Entspricht der [`disableAgentView`](/docs/de/settings-reference#disableagentview)-Einstellung |

245| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | Setzen Sie auf `1`, um [Vollbild-Rendering](/docs/de/fullscreen) zu deaktivieren und den klassischen Main-Screen-Renderer zu verwenden. Die Konversation bleibt im nativen Scrollback Ihres Terminals, daher funktionieren `Cmd+f` und Tmux-Kopier-Modus wie gewohnt. Hat Vorrang vor `CLAUDE_CODE_NO_FLICKER` und der [`tui`](/docs/de/settings-reference#tui)-Einstellung. Sie können auch mit `/tui default` wechseln. Gilt nicht für Background-Sitzungen, die von [Agent-Ansicht](/docs/de/agent-view) geöffnet werden, die immer Vollbild-Rendering verwenden |245| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | Setzen Sie auf `1`, um [Vollbild-Rendering](/docs/de/fullscreen) zu deaktivieren und den klassischen Hauptbildschirm-Renderer zu verwenden. Die Konversation bleibt in Ihrem Terminal-nativen Scrollback, daher funktionieren `Cmd+f` und tmux-Kopier-Modus wie gewohnt. Hat Vorrang vor `CLAUDE_CODE_NO_FLICKER` und der [`tui`](/docs/de/settings-reference#tui)-Einstellung. Sie können auch mit `/tui default` wechseln. Gilt nicht für Hintergrund-Sitzungen, die von [Agent-Ansicht](/docs/de/agent-view) geöffnet werden, die immer Vollbild-Rendering verwenden |

246| `CLAUDE_CODE_DISABLE_ARTIFACT` | Setzen Sie auf `1`, um das [Artifact](/docs/de/artifacts)-Tool auszuschalten, das Sitzungsausgabe als private Webseite auf claude.ai veröffentlicht. Sobald Sie es setzen, schaltet keine Einstellungsdatei das Tool wieder ein. Um das Tool stattdessen aus einer Einstellungsdatei auszuschalten, setzen Sie [`enableArtifact`](/docs/de/settings-reference#enableartifact) auf `false`; der veraltete [`disableArtifact`](/docs/de/settings-reference#disableartifact)-Schlüssel schaltet es auch aus |246| `CLAUDE_CODE_DISABLE_ARTIFACT` | Setzen Sie auf `1`, um das [Artifact](/docs/de/artifacts)-Tool auszuschalten, das Sitzungs-Ausgabe als private Webseite auf claude.ai veröffentlicht. Sobald Sie es setzen, schaltet keine Einstellungsdatei das Tool wieder ein. Um das Tool stattdessen aus einer Einstellungsdatei auszuschalten, setzen Sie [`enableArtifact`](/docs/de/settings-reference#enableartifact) auf `false`; der veraltete [`disableArtifact`](/docs/de/settings-reference#disableartifact)-Schlüssel schaltet es auch aus |

247| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | Setzen Sie auf `1`, um die Anhang-Verarbeitung zu deaktivieren. Datei-Erwähnungen mit `@`-Syntax werden als einfacher Text gesendet, anstatt in Dateiinhalt erweitert zu werden |247| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | Setzen Sie auf `1`, um die Anhang-Verarbeitung zu deaktivieren. Datei-Erwähnungen mit `@`-Syntax werden als einfacher Text gesendet, anstatt in Datei-Inhalt erweitert zu werden |

248| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | Setzen Sie auf `1`, um [Auto-Memory](/docs/de/memory#auto-memory) zu deaktivieren. Setzen Sie auf `0`, um Auto-Memory zu erzwingen, auch wenn `--bare`-Modus oder [`autoMemoryEnabled: false`](/docs/de/settings-reference#automemoryenabled) es andernfalls deaktivieren würde. Wenn deaktiviert, erstellt oder lädt Claude keine Auto-Memory-Dateien |248| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | Setzen Sie auf `1`, um [Auto-Memory](/docs/de/memory#auto-memory) zu deaktivieren. Setzen Sie auf `0`, um Auto-Memory zu erzwingen, auch wenn `--bare`-Modus oder [`autoMemoryEnabled: false`](/docs/de/settings-reference#automemoryenabled) es andernfalls deaktivieren würde. Wenn deaktiviert, erstellt oder lädt Claude keine Auto-Memory-Dateien |

249| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Setzen Sie auf `1`, um alle Background-Task-Funktionalität zu deaktivieren, einschließlich des `run_in_background`-Parameters auf Bash- und Subagent-Tools, Auto-Backgrounding und der Ctrl+B-Verknüpfung |249| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Setzen Sie auf `1`, um alle Hintergrund-Task-Funktionalität zu deaktivieren, einschließlich des `run_in_background`-Parameters auf Bash- und Subagent-Tools, Auto-Backgrounding und der Ctrl+B-Verknüpfung |

250| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Setzen Sie auf `1`, um Claude Code davon abzuhalten, eine [Amazon Bedrock](/docs/de/amazon-bedrock)-Streaming-Antwort mit fehlender oder leerer `Content-Type`-Header als Amazon Bedrock's binären Event-Stream zu behandeln. Standardmäßig geht Claude Code davon aus, dass ein Gateway den Header aus einer ansonsten unveränderten Antwort gelöscht hat, daher dekodiert es den Body und Streaming funktioniert weiter. Setzen Sie dies nur für ein Gateway, das den Stream auch als Server-Sent-Events erneut ausgibt; Claude Code liest dann den Header-losen Body als Server-Sent-Events statt. Erfordert Claude Code v2.1.239 oder später |250| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Setzen Sie auf `1`, um Claude Code daran zu hindern, eine [Amazon Bedrock](/docs/de/amazon-bedrock)-Streaming-Antwort mit fehlendem oder leerem `Content-Type`-Header als Amazon Bedrock's binären Event-Stream zu behandeln. Standardmäßig geht Claude Code davon aus, dass ein Gateway den Header aus einer ansonsten unveränderten Antwort gelöscht hat, daher dekodiert es den Body und Streaming funktioniert weiter. Setzen Sie dies nur für ein Gateway, das den Stream auch als Server-Sent-Events erneut aussendet; Claude Code liest dann den Header-losen Body als Server-Sent-Events statt. Erfordert Claude Code v2.1.239 oder später |

251| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | Setzen Sie auf `1`, um die Überprüfung zu überspringen, dass eine [Amazon Bedrock](/docs/de/amazon-bedrock)-Streaming-Antwort den `application/vnd.amazon.eventstream`-Content-Type trägt. Ohne diese Variable schlägt Claude Code die Anfrage mit einem Fehler fehl, der diesen Typ benennt, wenn eine Antwort einen anderen Content-Type trägt, was bedeutet, dass ein [Gateway oder Proxy die Antwort transformiert](/docs/de/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy). Konfigurieren Sie das Gateway, um den `Content-Type`-Header und Body unverändert weiterzuleiten, anstatt diese Variable zu setzen. Erfordert Claude Code v2.1.208 oder später |251| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | Setzen Sie auf `1`, um die Prüfung zu überspringen, dass eine [Amazon Bedrock](/docs/de/amazon-bedrock)-Streaming-Antwort den `application/vnd.amazon.eventstream`-Content-Type trägt. Ohne diese Variable schlägt Claude Code die Anfrage mit einem Fehler fehl, der diesen Typ benennt, wenn eine Antwort einen anderen Content-Type trägt, was bedeutet, dass ein [Gateway oder Proxy die Antwort transformiert](/docs/de/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy). Konfigurieren Sie das Gateway, um den `Content-Type`-Header und Body unverändert weiterzuleiten, anstatt diese Variable zu setzen. Erfordert Claude Code v2.1.208 oder später |

252| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Setzen Sie auf `1`, um die laufenden Background-Shell-Befehle, dynamischen Workflows, und ab v2.1.198 Background-Subagents einer [Background-Sitzung](/docs/de/agent-view) zu stoppen, wenn der [Supervisor](/docs/de/agent-view#the-supervisor-process) den Prozess dieser Sitzung stoppt, neu startet oder aktualisiert, anstatt sie an den nächsten Prozess der Sitzung zu übergeben. Betrifft nur diese Übergabe: Das Backgrounding einer Sitzung mit `←` oder [`/background`](/docs/de/agent-view#from-inside-a-session) trägt immer noch laufende Arbeit über, und `CLAUDE_DISABLE_ADOPT` schaltet beides aus. Erfordert Claude Code v2.1.196 oder später |252| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Setzen Sie auf `1`, um zu verhindern, dass die laufenden Hintergrund-Shell-Befehle einer [Hintergrund-Sitzung](/docs/de/agent-view), dynamische Workflows, und ab v2.1.198 Hintergrund-Subagents, wenn der [Supervisor](/docs/de/agent-view#the-supervisor-process) diese Sitzung stoppt, neu startet oder aktualisiert, an den nächsten Prozess der Sitzung übergeben werden. Betrifft nur diese Übergabe: Das Hintergrund-Verschieben einer Sitzung mit `←` oder [`/background`](/docs/de/agent-view#from-inside-a-session) trägt immer noch laufende Arbeit über, und `CLAUDE_DISABLE_ADOPT` schaltet beides aus. Erfordert Claude Code v2.1.196 oder später |

253| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | Setzen Sie auf `1`, um Claude Code davon abzuhalten, [Background-Shell-Befehle](/docs/de/interactive-mode#background-bash-commands) zu beenden, wenn das Betriebssystem Speicherdruck meldet. Standardmäßig beendet Claude Code auf macOS und Linux einen Background-Shell, der in der Hauptsitzung gestartet wurde, bei einem Speicherdruck-Signal, sobald die Sitzung 30 Minuten untätig war und kein Turn oder Subagent läuft. Windows hat kein Speicherdruck-Signal, daher hat diese Variable dort keine Auswirkung. Erfordert Claude Code v2.1.193 oder später |253| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | Setzen Sie auf `1`, um Claude Code daran zu hindern, [Hintergrund-Shell-Befehle](/docs/de/interactive-mode#background-bash-commands) unter Speicherdruck zu beenden. Standardmäßig beendet Claude Code auf macOS und Linux Hintergrund-Shells, wenn das Betriebssystem kritischen Speicherdruck meldet und die Sitzung 30 Minuten lang untätig war, ohne dass ein Turn oder Subagent läuft. Windows hat kein Speicherdruck-Signal, daher hat diese Variable dort keine Auswirkung. Erfordert Claude Code v2.1.193 oder später |

254| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Setzen Sie auf `1`, um die [Skills](/docs/de/skills) und Workflows zu deaktivieren, die mit Claude Code enthalten sind: Bundled Skills und Workflows werden vollständig entfernt, während integrierte Befehle wie `/init` tippbar bleiben, aber vom Modell verborgen werden. `/doctor` bleibt wie die integrierten Befehle tippbar; verstecken Sie es mit `DISABLE_DOCTOR_COMMAND` statt. Skills von Plugins, `.claude/skills/` und `.claude/commands/` sind nicht betroffen. Äquivalent zur [`disableBundledSkills`](/docs/de/settings-reference#disablebundledskills)-Einstellung |254| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Setzen Sie auf `1`, um die [Skills](/docs/de/skills) und Workflows zu deaktivieren, die mit Claude Code enthalten sind: Gebündelte Skills und Workflows werden vollständig entfernt, während integrierte Befehle wie `/init` tippbar bleiben, aber vom Modell verborgen sind. `/doctor` bleibt tippbar wie die integrierten Befehle; verstecken Sie es mit `DISABLE_DOCTOR_COMMAND` statt. Skills von Plugins, `.claude/skills/` und `.claude/commands/` sind nicht betroffen. Entspricht der [`disableBundledSkills`](/docs/de/settings-reference#disablebundledskills)-Einstellung |

255| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | Setzen Sie auf `1`, um die [Claude in Chrome](/docs/de/chrome)-Browser-Tools verfügbar zu halten, während Sie den Chrome-Abschnitt des System-Prompts und den `/claude-in-chrome` [Bundled Skill](/docs/de/skills#bundled-skills) auslassen. Für Hosts, die Claude Code einbetten und ihre eigene Browser-Anleitung bereitstellen. Erfordert Claude Code v2.1.257 oder später |255| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | Setzen Sie auf `1`, um die [Claude in Chrome](/docs/de/chrome)-Browser-Tools verfügbar zu halten, während Sie den Chrome-Abschnitt des System-Prompts und die `/claude-in-chrome` [gebündelte Skill](/docs/de/skills#bundled-skills) auslassen. Für Hosts, die Claude Code einbetten und ihre eigene Browser-Anleitung bereitstellen. Erfordert Claude Code v2.1.257 oder später |

256| `CLAUDE_CODE_DISABLE_CLAUDE_MDS` | Setzen Sie auf `1`, um zu verhindern, dass Memory-Dateien geladen werden, einschließlich Benutzer-, Projekt- und Auto-Memory-Dateien |256| `CLAUDE_CODE_DISABLE_CLAUDE_MDS` | Setzen Sie auf `1`, um zu verhindern, dass CLAUDE.md-Memory-Dateien in den Kontext geladen werden, einschließlich Benutzer-, Projekt- und Auto-Memory-Dateien |

257| `CLAUDE_CODE_DISABLE_CRON` | Setzen Sie auf `1`, um [geplante Aufgaben](/docs/de/scheduled-tasks) zu deaktivieren. Der `/loop`-Skill und Cron-Tools werden nicht verfügbar und alle bereits geplanten Aufgaben stoppen, einschließlich Aufgaben, die bereits mid-session laufen |257| `CLAUDE_CODE_DISABLE_CRON` | Setzen Sie auf `1`, um [geplante Aufgaben](/docs/de/scheduled-tasks) zu deaktivieren. Der `/loop`-Skill und Cron-Tools werden nicht verfügbar, und alle bereits geplanten Aufgaben stoppen, einschließlich Aufgaben, die bereits mid-session laufen |

258| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Setzen Sie auf `1`, um Anthropic-spezifische `anthropic-beta`-Request-Header und Beta-Tool-Schema-Felder (wie `defer_loading` und `eager_input_streaming`) aus API-Anfragen zu entfernen. Verwenden Sie dies, wenn ein Proxy-Gateway Anfragen mit Fehlern wie "Unexpected value(s) for the `anthropic-beta` header" oder "Extra inputs are not permitted" ablehnt. Standard-Felder (`name`, `description`, `input_schema`, `cache_control`) bleiben erhalten. [MCP-Tool-Suche](/docs/de/mcp#scale-with-mcp-tool-search) ist deaktiviert und alle MCP-Tools laden upfront, auch wenn Sie `ENABLE_TOOL_SEARCH` setzen. Auf Claude Code v2.1.227 oder später können [verwaltete Einstellungen](/docs/de/managed-settings) Tool-Suche aktiviert halten. [Pre-Release-Fähigkeiten deaktivieren](/docs/de/llm-gateway-protocol#disable-pre-release-capabilities) behandelt, wo der Override gilt |258| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Setzen Sie auf `1`, um Anthropic-spezifische `anthropic-beta`-Request-Header und Beta-Tool-Schema-Felder (wie `defer_loading` und `eager_input_streaming`) aus API-Anfragen zu entfernen. Verwenden Sie dies, wenn ein Proxy-Gateway Anfragen mit Fehlern wie "Unexpected value(s) for the `anthropic-beta` header" oder "Extra inputs are not permitted" ablehnt. Standard-Felder (`name`, `description`, `input_schema`, `cache_control`) werden beibehalten. [MCP-Tool-Suche](/docs/de/mcp#scale-with-mcp-tool-search) ist deaktiviert und alle MCP-Tools laden upfront, auch wenn Sie `ENABLE_TOOL_SEARCH` setzen. Auf Claude Code v2.1.227 oder später können [verwaltete Einstellungen](/docs/de/managed-settings) Tool-Suche eingeschaltet halten. [Pre-Release-Fähigkeiten deaktivieren](/docs/de/llm-gateway-protocol#disable-pre-release-capabilities) behandelt, wo der Override gilt |

259| `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` | Setzen Sie auf `1`, um die integrierten [Explore- und Plan-Subagents](/docs/de/sub-agents#built-in-subagents) zu deaktivieren. Claude erkundet mit seinen Such-Tools oder dem General-Purpose-Subagent statt, und [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) liest Dateien direkt, anstatt Explore- und Plan-Agents zu starten. Benutzerdefinierte Subagents mit Namen `Explore` oder `Plan` sind nicht betroffen. Um jeden integrierten Subagent-Typ im Agent SDK oder nicht-interaktiven Modus zu entfernen, verwenden Sie stattdessen `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS`. Erfordert Claude Code v2.1.198 oder später |259| `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` | Setzen Sie auf `1`, um die integrierten [Explore- und Plan-Subagents](/docs/de/sub-agents#built-in-subagents) zu deaktivieren. Claude erkundet stattdessen mit seinen Such-Tools oder dem General-Purpose-Subagent, und [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) liest Dateien direkt, anstatt Explore- und Plan-Agents zu starten. Benutzerdefinierte Subagents mit dem Namen `Explore` oder `Plan` sind nicht betroffen. Um jeden integrierten Subagent-Typ im Agent SDK oder nicht-interaktiven Modus zu entfernen, verwenden Sie stattdessen `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS`. Erfordert Claude Code v2.1.198 oder später |

260| `CLAUDE_CODE_DISABLE_FAST_MODE` | Setzen Sie auf `1`, um [Fast Mode](/docs/de/fast-mode) zu deaktivieren |260| `CLAUDE_CODE_DISABLE_FAST_MODE` | Setzen Sie auf `1`, um [Fast Mode](/docs/de/fast-mode) zu deaktivieren |

261| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | Setzen Sie auf `1`, um die "How is Claude doing?"-Sitzungsqualitäts-Umfragen zu deaktivieren. Umfragen sind auch deaktiviert, wenn `DISABLE_TELEMETRY`, `DO_NOT_TRACK` oder `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` gesetzt ist, es sei denn, `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` meldet sich wieder an. Um stattdessen eine Sample-Rate zu setzen, verwenden Sie die [`feedbackSurveyRate`](/docs/de/settings-reference#feedbacksurveyrate)-Einstellung. Siehe [Sitzungsqualitäts-Umfragen](/docs/de/data-usage#session-quality-surveys) |261| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | Setzen Sie auf `1`, um die "How is Claude doing?"-Sitzungsqualitäts-Umfragen zu deaktivieren. Umfragen sind auch deaktiviert, wenn `DISABLE_TELEMETRY`, `DO_NOT_TRACK` oder `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` gesetzt ist, es sei denn, `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` meldet sich wieder an. Um stattdessen eine Sample-Rate zu setzen, verwenden Sie die [`feedbackSurveyRate`](/docs/de/settings-reference#feedbacksurveyrate)-Einstellung. Siehe [Sitzungsqualitäts-Umfragen](/docs/de/data-usage#session-quality-surveys) |

262| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | Setzen Sie auf `1`, um Datei-[Checkpointing](/docs/de/checkpointing) zu deaktivieren. Der `/rewind`-Befehl kann Code-Änderungen nicht wiederherstellen. Überschreibt die [`fileCheckpointingEnabled`](/docs/de/settings-reference#filecheckpointingenabled)-Einstellung |262| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | Setzen Sie auf `1`, um Datei-[Checkpointing](/docs/de/checkpointing) zu deaktivieren. Der `/rewind`-Befehl kann Code-Änderungen nicht wiederherstellen. Überschreibt die [`fileCheckpointingEnabled`](/docs/de/settings-reference#filecheckpointingenabled)-Einstellung |

263| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Setzen Sie auf `1`, um integrierte Commit- und PR-Workflow-Anweisungen und den Git-Status-Snapshot aus Claudes System-Prompt zu entfernen. Nützlich, wenn Sie Ihre eigenen Git-Workflow-Skills verwenden. Hat Vorrang vor der [`includeGitInstructions`](/docs/de/settings-reference#includegitinstructions)-Einstellung, wenn gesetzt |263| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Setzen Sie auf `1`, um integrierte Commit- und PR-Workflow-Anweisungen und den Git-Status-Snapshot aus Claude's Kontext zu entfernen. Nützlich, wenn Sie Ihre eigenen Git-Workflow-Skills verwenden. Hat Vorrang vor der [`includeGitInstructions`](/docs/de/settings-reference#includegitinstructions)-Einstellung, wenn gesetzt |

264| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | Setzen Sie auf `1`, um die automatische Neuzuordnung von Opus 4.0 und 4.1 zur aktuellen Opus-Version auf der Anthropic API zu verhindern. Verwenden Sie, wenn Sie absichtlich ein älteres Modell anheften möchten. Die Neuzuordnung läuft nicht auf Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry |264| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | Setzen Sie auf `1`, um die automatische Neuzuordnung von Opus 4.0 und 4.1 zur aktuellen Opus-Version auf der Anthropic API zu verhindern. Verwenden Sie, wenn Sie absichtlich ein älteres Modell anheften möchten. Die Neuzuordnung läuft nicht auf Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry |

265| `CLAUDE_CODE_DISABLE_MOUSE` | Setzen Sie auf `1`, um die Mausverfolgung im [Vollbild-Rendering](/docs/de/fullscreen) zu deaktivieren. Tastatur-Scrolling mit `PgUp` und `PgDn` funktioniert immer noch. Verwenden Sie dies, um das native Copy-on-Select-Verhalten Ihres Terminals zu behalten |265| `CLAUDE_CODE_DISABLE_MOUSE` | Setzen Sie auf `1`, um die Maus-Verfolgung im [Vollbild-Rendering](/docs/de/fullscreen) zu deaktivieren. Tastatur-Scrollen mit `PgUp` und `PgDn` funktioniert immer noch. Verwenden Sie dies, um Ihr Terminal's natives Copy-on-Select-Verhalten zu behalten |

266| `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` | Setzen Sie auf `1`, um Click-, Drag- und Hover-Handling im [Vollbild-Rendering](/docs/de/fullscreen) zu deaktivieren, während Sie Mausrad-Scrolling behalten. Verwenden Sie dies, wenn Sie möchten, dass Rad-Scroll in Claude Code funktioniert, aber nicht möchten, dass Clicks den Cursor positionieren, Tool-Ausgabe erweitern oder Links öffnen. `CLAUDE_CODE_DISABLE_MOUSE` hat Vorrang, wenn beide gesetzt sind. Erfordert Claude Code v2.1.195 oder später |266| `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` | Setzen Sie auf `1`, um Click-, Drag- und Hover-Handling im [Vollbild-Rendering](/docs/de/fullscreen) zu deaktivieren, während Sie Maus-Rad-Scrollen behalten. Verwenden Sie dies, wenn Sie möchten, dass Rad-Scroll in Claude Code funktioniert, aber nicht möchten, dass Clicks den Cursor positionieren, Tool-Ausgabe erweitern oder Links öffnen. `CLAUDE_CODE_DISABLE_MOUSE` hat Vorrang, wenn beide gesetzt sind. Erfordert Claude Code v2.1.195 oder später |

267| `CLAUDE_CODE_DISABLE_MTLS_RELOAD_ON_STALE_CONNECTION` | Setzen Sie auf `1`, um Claude Code davon abzuhalten, das [mTLS-Client-Zertifikat und den Schlüssel](/docs/de/network-config#mtls-authentication) erneut zu lesen, wenn eine API-Anfrage mit einem Verbindungs-Level-Fehler fehlschlägt, wie ein Verbindungs-Reset oder ein TLS-Handshake-Fehler. Mit dem Reload deaktiviert lädt Claude Code rotierte Dateien nur, wenn es nächstes Mal Einstellungen anwendet oder beim nächsten Start. Erfordert Claude Code v2.1.232 oder später |267| `CLAUDE_CODE_DISABLE_MTLS_RELOAD_ON_STALE_CONNECTION` | Setzen Sie auf `1`, um Claude Code daran zu hindern, das [mTLS-Client-Zertifikat und den Schlüssel](/docs/de/network-config#mtls-authentication) erneut zu lesen, wenn eine API-Anfrage mit einem Verbindungs-Level-Fehler fehlschlägt, wie ein Verbindungs-Reset oder ein TLS-Handshake-Fehler. Mit dem Reload deaktiviert lädt Claude Code rotierte Dateien nur, wenn es nächstes Mal Einstellungen anwendet oder beim nächsten Startup. Erfordert Claude Code v2.1.232 oder später |

268| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | Setzen Sie auf einen beliebigen nicht-leeren Wert, wie `1`, um nicht-wesentlichen Netzwerk-Traffic zu deaktivieren: Auto-Updates, Telemetrie, Fehlerberichterstattung, den `/feedback`-Befehl, [Claude-entworfenes Feedback](/docs/de/tools-reference#sendfeedback-tool-behavior), Release-Notizen, die [PR- und MR-Status-Badge](/docs/de/interactive-mode#pr-review-status)-Überprüfungen und Verfügbarkeitsprüfungen wie die [Fast-Mode](/docs/de/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways)-Überprüfung. Es stoppt auch die [Background-Läufe von Plugin-`command`-Quellen](/docs/de/plugin-marketplaces#when-claude-code-re-runs-the-command), die lokale Befehle sind, anstatt Netzwerk-Traffic, da sie Abhängigkeits-Installationen auslösen können. **Das Setzen auf `0` oder `false` deaktiviert immer noch diesen Traffic**, im Gegensatz zu den meisten Ein/Aus-Variablen; heben Sie die Einstellung der Variablen auf, um sie wieder zu erlauben. Deaktiviert auch Feature-Flag-Abruf, was [Remote Control](/docs/de/remote-control#requirements) und die anderen [Features, die Feature-Flag-Abruf benötigen](#features-that-need-feature-flag-fetching) nicht verfügbar macht. Offizieller Plugin-Marketplace-Auto-Install ist nicht abgedeckt; deaktivieren Sie ihn mit `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL`. Betrifft nicht [Gateway-Modell-Erkennung](/docs/de/llm-gateway-connect#add-gateway-models-to-the-model-picker), die ihr eigenes Opt-In hat |268| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | Setzen Sie auf einen beliebigen nicht-leeren Wert, wie `1`, um nicht-wesentlichen Netzwerk-Traffic zu deaktivieren: Auto-Updates, Telemetrie, Fehlerberichterstattung, den `/feedback`-Befehl, [Claude-entworfenes Feedback](/docs/de/tools-reference#sendfeedback-tool-behavior), Release-Notizen, die [PR- und MR-Status-Badge](/docs/de/interactive-mode#pr-review-status)-Checks und Verfügbarkeitsprüfungen wie die [Fast-Mode](/docs/de/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways)-Prüfung. Es stoppt auch die [Hintergrund-Läufe von Plugin-`command`-Quellen](/docs/de/plugins/loading#when-a-command-source-re-runs), die lokale Befehle statt Netzwerk-Traffic sind, weil sie Abhängigkeits-Installationen auslösen können. **Das Setzen auf `0` oder `false` deaktiviert immer noch diesen Traffic**, im Gegensatz zu den meisten Ein/Aus-Variablen; heben Sie die Variable auf, um ihn wieder zu erlauben. Deaktiviert auch Feature-Flag-Abrufe, was [Remote Control](/docs/de/remote-control#requirements) und die anderen [Features, die Feature-Flag-Abrufe benötigen](#features-that-need-feature-flag-fetching) nicht verfügbar macht. Offizielle Plugin-Marketplace-Auto-Installation ist nicht abgedeckt; deaktivieren Sie sie mit `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL`. Betrifft nicht [Gateway-Modell-Erkennung](/docs/de/llm-gateway-connect#add-gateway-models-to-the-model-picker), die ihr eigenes Opt-In hat |

269| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | Setzen Sie auf `1`, um das Non-Streaming-Fallback zu deaktivieren, wenn eine Streaming-Anfrage mid-stream fehlschlägt. Streaming-Fehler propagieren stattdessen zur Retry-Schicht. Nützlich, wenn ein Proxy oder Gateway das Fallback verursacht, duplizierte Tool-Ausführung zu produzieren |269| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | Setzen Sie auf `1`, um das Non-Streaming-Fallback zu deaktivieren, wenn eine Streaming-Anfrage mid-stream fehlschlägt. Streaming-Fehler propagieren stattdessen zur Wiederholungs-Schicht. Nützlich, wenn ein Proxy oder Gateway das Fallback dazu bringt, doppelte Tool-Ausführung zu produzieren |

270| `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` | Setzen Sie auf `1`, um die Desktop-Benachrichtigung des `PushNotification`-Tools zu senden, auch während Sie im Terminal tippen oder es fokussiert haben. Standardmäßig überspringt das Tool sowohl die Desktop-Benachrichtigung als auch den [Mobile Push](/docs/de/remote-control#mobile-push-notifications), wenn es kürzliche Tastaturaktivität oder Terminal-Fokus erkennt. Diese Variable deaktiviert nur diese lokale Überprüfung, daher kann der Server den Mobile Push immer noch unterdrücken, wenn er erkennt, dass Sie aktiv sind. Erfordert Claude Code v2.1.193 oder später |270| `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` | Setzen Sie auf `1`, um die Desktop-Benachrichtigung des `PushNotification`-Tools zu senden, auch während Sie im Terminal tippen oder es fokussiert haben. Standardmäßig überspringt das Tool sowohl die Desktop-Benachrichtigung als auch den [Mobile Push](/docs/de/remote-control#mobile-push-notifications), wenn es kürzliche Tastatur-Aktivität oder Terminal-Fokus erkennt. Diese Variable deaktiviert nur diese lokale Prüfung, daher kann der Server den Mobile Push immer noch unterdrücken, wenn er erkennt, dass Sie aktiv sind. Erfordert Claude Code v2.1.193 oder später |

271| `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` | Setzen Sie auf `1`, um die automatische Registrierung des offiziellen Plugin-Marketplace zu deaktivieren. Claude Code liest die Variable, wenn es den Marketplace registrieren soll, normalerweise beim ersten interaktiven Start einer Maschine. Wenn die Variable zu diesem Zeitpunkt gesetzt ist, überspringt Claude Code die Registrierung dauerhaft. Das Aufheben der Einstellung der Variablen später macht den Skip nicht rückgängig. Führen Sie `claude plugin marketplace add anthropics/claude-plugins-official` aus, um den Marketplace jederzeit zu registrieren |271| `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` | Setzen Sie auf `1`, um die automatische Registrierung des offiziellen Plugin-Marketplace zu deaktivieren. Claude Code liest die Variable, wenn es den Marketplace registrieren soll, normalerweise beim ersten interaktiven Start einer Maschine. Wenn die Variable zu diesem Zeitpunkt gesetzt ist, überspringt Claude Code die Registrierung dauerhaft. Das Aufheben der Variable später macht den Skip nicht rückgängig. Führen Sie `claude plugin marketplace add anthropics/claude-plugins-official` aus, um den Marketplace jederzeit zu registrieren |

272| `CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS` | Setzen Sie auf `1`, um Claude Code davon abzuhalten, Ihre [`Notification`-Hooks für unbeantwortete Berechtigungsanfragen](/docs/de/hooks#notification) in Sitzungen auszuführen, in denen Claude Code sie an den `canUseTool`-Callback des Agent SDK sendet, was ist, wie Claude Desktop und die VS Code-Erweiterung Claude Code hosten. Hat keine Auswirkung in Terminal-Sitzungen. Erfordert Claude Code v2.1.233 oder später |272| `CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS` | Setzen Sie auf `1`, um Claude Code daran zu hindern, Ihre [`Notification`-Hooks für unbeantwortete Permission-Anfragen](/docs/de/hooks#notification) in Sitzungen auszuführen, in denen Claude Code sie an den Agent SDK's `canUseTool`-Callback sendet, was ist, wie Claude Desktop und die VS Code-Erweiterung Claude Code hosten. Hat keine Auswirkung in Terminal-Sitzungen. Erfordert Claude Code v2.1.233 oder später |

273| `CLAUDE_CODE_DISABLE_POLICY_SKILLS` | Setzen Sie auf `1`, um das Laden von Skills aus dem systemweiten verwalteten Skills-Verzeichnis zu überspringen. Nützlich für Container- oder CI-Sitzungen, die keine Operator-bereitgestellten Skills laden sollten |273| `CLAUDE_CODE_DISABLE_POLICY_SKILLS` | Setzen Sie auf `1`, um das Laden von Skills aus dem systemweiten verwalteten Skills-Verzeichnis zu überspringen. Nützlich für Container- oder CI-Sitzungen, die keine Operator-bereitgestellten Skills laden sollten |

274| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | Setzen Sie auf `1`, um automatische Terminal-Titel-Updates basierend auf Konversations-Kontext zu deaktivieren. Dies überspringt auch die Background-Small/Fast-Model-Anfrage, die [einen Sitzungs-Titel generiert](/docs/de/sessions#name-your-sessions) |274| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | Setzen Sie auf `1`, um automatische Terminal-Titel-Updates basierend auf Konversations-Kontext zu deaktivieren. Dies überspringt auch die Hintergrund-Small/Fast-Modell-Anfrage, die [eine Sitzungs-Titel generiert](/docs/de/sessions#name-your-sessions) |

275| `CLAUDE_CODE_DISABLE_THINKING` | Setzen Sie auf `1`, um den `thinking`-Parameter vollständig aus API-Anfragen auszulassen. Dies ist eine Kompatibilitätsoption für Proxies und Gateways, die den Parameter ablehnen. Bei Modellen, die standardmäßig denken, bedeutet das Auslassen des Parameters, dass das Modell möglicherweise immer noch denkt. Um [Extended Thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) auf der Anthropic API explizit zu deaktivieren, verwenden Sie stattdessen `MAX_THINKING_TOKENS=0`. Keine Variable schaltet Denken auf Opus 5.5 oder den Fable-Modellen aus, die Denken nicht ausschalten können. Bei [Drittanbieter-Providern](/docs/de/third-party-integrations) lässt `MAX_THINKING_TOKENS=0` ebenfalls den Parameter aus, daher verhalten sich die beiden Variablen dort gleich |275| `CLAUDE_CODE_DISABLE_THINKING` | Setzen Sie auf `1`, um den `thinking`-Parameter vollständig aus API-Anfragen auszulassen. Dies ist eine Kompatibilitätsoption für Proxies und Gateways, die den Parameter ablehnen. Bei Modellen, die standardmäßig denken, bedeutet das Auslassen des Parameters, dass das Modell möglicherweise immer noch denkt. Um [Extended Thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) auf der Anthropic API explizit zu deaktivieren, verwenden Sie stattdessen `MAX_THINKING_TOKENS=0`. Keine Variable schaltet Denken auf Opus 5.5 oder den Fable-Modellen aus, die Denken nicht ausschalten können. Bei [Drittanbieter-Providern](/docs/de/third-party-integrations) lässt `MAX_THINKING_TOKENS=0` ebenfalls den Parameter aus, daher verhalten sich die beiden Variablen dort gleich |

276| `CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT` | Setzen Sie auf `1`, um proaktive [Auto-Compaction](/docs/de/costs#reduce-token-usage) zu überspringen, wenn Claude Code die Modell-ID nicht erkennt, wie ein [LLM-Gateway](/docs/de/llm-gateway)-Alias. Ohne diese Variable komprimiert Claude Code bei dem Kontext-Fenster, das es für die ID annimmt. `CLAUDE_CODE_MAX_CONTEXT_TOKENS` kann das angenommene Fenster stattdessen korrigieren; siehe [Fenster für eine Gateway- oder benutzerdefinierte Modell-ID korrigieren](/docs/de/model-config#correct-the-window-for-a-gateway-or-custom-model-id) für wann jede Variable gilt. Erfordert Claude Code v2.1.223 oder später |276| `CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT` | Setzen Sie auf `1`, um proaktive [Auto-Compaction](/docs/de/costs#reduce-token-usage) zu überspringen, wenn Claude Code die Modell-ID nicht erkennt, wie ein [LLM-Gateway](/docs/de/llm-gateway)-Alias. Ohne diese Variable komprimiert Claude Code bei dem Kontext-Fenster, das es für die ID annimmt. `CLAUDE_CODE_MAX_CONTEXT_TOKENS` kann das angenommene Fenster stattdessen korrigieren; siehe [Fenster für eine Gateway- oder benutzerdefinierte Modell-ID korrigieren](/docs/de/model-config#correct-the-window-for-a-gateway-or-custom-model-id) für wann jede Variable gilt. Erfordert Claude Code v2.1.223 oder später |

277| `CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL` | Setzen Sie auf `1`, um virtuelles Scrolling im [Vollbild-Rendering](/docs/de/fullscreen) zu deaktivieren und jede Nachricht im Transkript zu rendern. Verwenden Sie dies, wenn Scrolling im Vollbildmodus leere Regionen zeigt, wo Nachrichten erscheinen sollten |277| `CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL` | Setzen Sie auf `1`, um virtuelles Scrollen im [Vollbild-Rendering](/docs/de/fullscreen) zu deaktivieren und jede Nachricht im Transkript zu rendern. Verwenden Sie dies, wenn Scrollen im Vollbildmodus leere Regionen zeigt, wo Nachrichten erscheinen sollten |

278| `CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER` | Setzen Sie auf `1`, um [PowerShell-Tool](/docs/de/tools-reference#powershell-tool)-Befehle unter Windows direkt zu starten, anstatt durch den `cmd.exe`-Launcher. Standardmäßig lässt der Launcher einen PowerShell-Befehl [im Hintergrund laufen](/docs/de/tools-reference#background-commands) [zum nächsten Prozess der Sitzung übergehen](/docs/de/agent-view#the-supervisor-process), wie wenn Sie [die Sitzung backgrounden](/docs/de/agent-view#from-inside-a-session). Wenn Sie die Variable setzen, stoppt ein backgroundeter PowerShell-Befehl, wenn der Prozess der Sitzung beendet wird. Bash-Befehle sind nicht betroffen. Erfordert Claude Code v2.1.269 oder später |278| `CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER` | Setzen Sie auf `1`, um [PowerShell-Tool](/docs/de/tools-reference#powershell-tool)-Befehle unter Windows direkt zu starten, anstatt durch den `cmd.exe`-Launcher. Standardmäßig ermöglicht der Launcher einem PowerShell-Befehl, der [im Hintergrund läuft](/docs/de/tools-reference#background-commands), [zum nächsten Prozess der Sitzung zu wechseln](/docs/de/agent-view#the-supervisor-process), wie wenn Sie [die Sitzung hintergrund-verschieben](/docs/de/agent-view#from-inside-a-session). Wenn Sie die Variable setzen, stoppt ein hintergrund-verschobener PowerShell-Befehl, wenn der Prozess der Sitzung beendet wird. Bash-Befehle sind nicht betroffen. Erfordert Claude Code v2.1.269 oder später |

279| `CLAUDE_CODE_DISABLE_WORKFLOWS` | Setzen Sie auf `1`, um [Workflows](/docs/de/workflows#turn-workflows-off) zu deaktivieren. Äquivalent zur [`disableWorkflows`](/docs/de/settings-reference#disableworkflows)-Einstellung |279| `CLAUDE_CODE_DISABLE_WORKFLOWS` | Setzen Sie auf `1`, um [Workflows](/docs/de/workflows#turn-workflows-off) zu deaktivieren. Entspricht der [`disableWorkflows`](/docs/de/settings-reference#disableworkflows)-Einstellung |

280| `CLAUDE_CODE_EFFORT_LEVEL` | Setzen Sie die Effort-Ebene für unterstützte Modelle. Werte: `low`, `medium`, `high`, `xhigh`, `max` oder `auto`, um den Modell-Standard zu verwenden. Verfügbare Ebenen hängen vom Modell ab. Hat Vorrang vor `--effort`, `/effort` und den `modelSettings`- und `effortLevel`-Einstellungen. Eine [`maxEffortLevel`](/docs/de/settings-reference#maxeffortlevel)-Obergrenze gilt immer noch. Siehe [Effort-Ebene anpassen](/docs/de/model-config#adjust-effort-level) |280| `CLAUDE_CODE_EFFORT_LEVEL` | Setzen Sie die Effort-Ebene für unterstützte Modelle. Werte: `low`, `medium`, `high`, `xhigh`, `max` oder `auto`, um den Modell-Standard zu verwenden. Verfügbare Ebenen hängen vom Modell ab. Hat Vorrang vor `--effort`, `/effort` und den `modelSettings`- und `effortLevel`-Einstellungen. Eine [`maxEffortLevel`](/docs/de/settings-reference#maxeffortlevel)-Obergrenze gilt immer noch. Siehe [Effort-Ebene anpassen](/docs/de/model-config#adjust-effort-level) |

281| `CLAUDE_CODE_ENABLE_AUTO_MODE` | Akzeptiert für Kompatibilität mit älteren Versionen und hat keine Auswirkung. Auto-Modus ist standardmäßig auf jedem Provider verfügbar, einschließlich Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und angemeldeten [Claude Apps Gateway](/docs/de/claude-apps-gateway)-Sitzungen. In v2.1.158 bis v2.1.206 war das Setzen auf `1` erforderlich, um [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) auf diesen Providern verfügbar zu machen |281| `CLAUDE_CODE_ENABLE_AUTO_MODE` | Akzeptiert für Kompatibilität mit älteren Versionen und hat keine Auswirkung. Auto-Modus ist standardmäßig auf jedem Provider verfügbar, einschließlich Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und angemeldeten [Claude Apps Gateway](/docs/de/claude-apps-gateway)-Sitzungen. In v2.1.158 bis v2.1.206 war das Setzen auf `1` erforderlich, um [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) auf diesen Providern verfügbar zu machen |

282| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | Überschreiben Sie die [Sitzungs-Zusammenfassung](/docs/de/interactive-mode#session-recap)-Verfügbarkeit. Setzen Sie auf `0`, um Zusammenfassungen unabhängig vom `/config`-Toggle auszuschalten. Setzen Sie auf `1`, um Zusammenfassungen zu erzwingen, wenn [`awaySummaryEnabled`](/docs/de/settings-reference#awaysummaryenabled) `false` ist. Hat Vorrang vor der Einstellung und dem `/config`-Toggle |282| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | Überschreiben Sie die Verfügbarkeit von [Sitzungs-Zusammenfassung](/docs/de/interactive-mode#session-recap). Setzen Sie auf `0`, um Zusammenfassungen unabhängig vom `/config`-Toggle auszuschalten. Setzen Sie auf `1`, um Zusammenfassungen zu erzwingen, wenn [`awaySummaryEnabled`](/docs/de/settings-reference#awaysummaryenabled) `false` ist. Hat Vorrang vor der Einstellung und dem `/config`-Toggle |

283| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | Setzen Sie auf `1`, um den Plugin-Status bei Turn-Grenzen im [nicht-interaktiven Modus](/docs/de/headless) zu aktualisieren, nachdem eine Background-Installation abgeschlossen ist. Standardmäßig aus, da die Aktualisierung den System-Prompt mid-session ändert, was [Prompt-Caching](/docs/de/prompt-caching) für diesen Turn ungültig macht |283| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | Setzen Sie auf `1`, um den Plugin-Status bei Turn-Grenzen im [nicht-interaktiven Modus](/docs/de/headless) zu aktualisieren, nachdem eine Hintergrund-Installation abgeschlossen ist. Standardmäßig aus, weil die Aktualisierung den System-Prompt mid-session ändert, was [Prompt-Caching](/docs/de/prompt-caching) für diesen Turn ungültig macht |

284| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | Setzen Sie auf `1`, um die "How is Claude doing?"-Sitzungsqualitäts-Umfrage an Ihren eigenen [OpenTelemetry-Collector](/docs/de/monitoring-usage) zu leiten, wenn Anthropic-gebundener nicht-wesentlicher Traffic blockiert ist. Umfrage-Bewertungen werden nur als OTEL-Events an Ihren konfigurierten Collector ausgegeben. Keine Umfrage-Daten werden in diesem Modus an Anthropic gesendet. Gilt, wenn `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`, `DISABLE_TELEMETRY` oder `DO_NOT_TRACK` gesetzt ist, und hat sonst keine Auswirkung. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` und die Organisations-Produktfeedback-Richtlinie haben Vorrang |284| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | Setzen Sie auf `1`, um die "How is Claude doing?"-Sitzungsqualitäts-Umfrage zu Ihrem eigenen [OpenTelemetry-Collector](/docs/de/monitoring-usage) zu leiten, wenn Anthropic-gebundener nicht-wesentlicher Traffic blockiert ist. Umfrage-Bewertungen werden nur als OTEL-Events zu Ihrem konfigurierten Collector emittiert. Keine Umfrage-Daten werden in diesem Modus an Anthropic gesendet. Gilt, wenn `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`, `DISABLE_TELEMETRY` oder `DO_NOT_TRACK` gesetzt ist, und hat sonst keine Auswirkung. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` und die Organisations-Produkt-Feedback-Richtlinie haben Vorrang |

285| `CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING` | Kontrolliert, ob Tool-Call-Eingaben von der API streamen, während Claude sie generiert. Mit diesem aus kommt eine große Tool-Eingabe wie ein langer Datei-Write nur an, nachdem Claude sie fertig generiert hat, was aussehen kann, als würde es hängen. Standardmäßig auf der Anthropic API aktiviert. Bei Amazon Bedrock und Google Cloud's Agent Platform, aktiviert pro Modell, wo der bereitgestellte Container es unterstützt. Setzen Sie auf `0`, um zu deaktivieren. Setzen Sie auf `1`, um zu erzwingen, wenn Routing durch einen Proxy über `ANTHROPIC_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL` oder `ANTHROPIC_BEDROCK_BASE_URL`. Standardmäßig aus bei Microsoft Foundry und [Gateway](/docs/de/llm-gateway)-Verbindungen |285| `CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING` | Steuert, ob Tool-Aufruf-Eingaben von der API streamen, während Claude sie generiert. Mit diesem aus kommt eine große Tool-Eingabe wie ein langer Datei-Schreib-Vorgang erst an, nachdem Claude sie fertig generiert hat, was aussehen kann, als würde es hängen. Standardmäßig auf der Anthropic API aktiviert. Bei Amazon Bedrock und Google Cloud's Agent Platform pro Modell aktiviert, wo der bereitgestellte Container es unterstützt. Setzen Sie auf `0`, um zu deaktivieren. Setzen Sie auf `1`, um zu erzwingen, wenn Routing durch einen Proxy über `ANTHROPIC_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL` oder `ANTHROPIC_BEDROCK_BASE_URL`. Standardmäßig aus bei Microsoft Foundry und [Gateway](/docs/de/llm-gateway)-Verbindungen |

286| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | Setzen Sie auf `1`, um den `/model`-Picker von Ihrem Gateway's `/v1/models`-Endpunkt zu füllen, wenn `ANTHROPIC_BASE_URL` auf ein Anthropic-kompatibles Gateway wie LiteLLM, Kong oder einen internen Proxy verweist. Standardmäßig aus, da Gateways, die von einem gemeinsamen API-Schlüssel unterstützt werden, andernfalls jedem Benutzer jedes Modell zeigen würden, das der Schlüssel zugreifen kann. Entdeckte Modelle werden immer noch durch eine [`availableModels`](/docs/de/settings-reference#availablemodels)-Allowlist gefiltert, die die Sitzung erhält; liefern Sie die Liste über [MDM oder eine verwaltete Einstellungsdatei](/docs/de/managed-settings#delivery-mechanisms), da [Server-verwaltete Lieferung bei Gateway-Konfigurationen nicht verfügbar ist](/docs/de/server-managed-settings#platform-availability) |286| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | Setzen Sie auf `1`, um den `/model`-Picker von Ihrem Gateway's `/v1/models`-Endpunkt zu füllen, wenn `ANTHROPIC_BASE_URL` auf ein Anthropic-kompatibles Gateway wie LiteLLM, Kong oder einen internen Proxy zeigt. Standardmäßig aus, weil Gateways, die von einem gemeinsamen API-Schlüssel unterstützt werden, andernfalls jedem Benutzer jedes Modell zeigen würden, das der Schlüssel zugreifen kann. Erkannte Modelle werden immer noch durch eine [`availableModels`](/docs/de/settings-reference#availablemodels)-Allowlist gefiltert, die die Sitzung erhält; liefern Sie die Liste durch [MDM oder eine verwaltete Einstellungsdatei](/docs/de/managed-settings#delivery-mechanisms), da [Server-verwaltete Lieferung bei Gateway-Konfigurationen nicht verfügbar ist](/docs/de/server-managed-settings#platform-availability) |

287| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | Entfernt in v2.1.142, als der [Fast-Mode](/docs/de/fast-mode)-Standard von Opus 4.6 zu Opus 4.7 wechselte |287| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | Entfernt in v2.1.142, als der [Fast-Mode](/docs/de/fast-mode)-Standard von Opus 4.6 zu Opus 4.7 wechselte |

288| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | Setzen Sie auf `false`, um Prompt-Vorschläge auszuschalten, die ausgegraut Vorhersagen, die in Ihrer Prompt-Eingabe erscheinen. Hat Vorrang vor der [`promptSuggestionEnabled`](/docs/de/settings-reference#promptsuggestionenabled)-Einstellung, die ist, was der **Prompt-Vorschläge**-Toggle in `/config` schreibt. Claude Code [pausiert auch Vorschläge, während Ihr Konto nahe oder bei seinem Nutzungslimit ist](/docs/de/interactive-mode#when-claude-code-skips-suggestions). Setzen Sie auf `true`, um sie eingeschaltet zu halten, bis Sie das Limit erreichen. Erfordert Claude Code v2.1.238 oder später. Siehe [Prompt-Vorschläge](/docs/de/interactive-mode#prompt-suggestions) |288| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | Setzen Sie auf `false`, um Prompt-Vorschläge auszuschalten, die ausgegraut angezeigten Vorhersagen, die in Ihrer Prompt-Eingabe erscheinen. Hat Vorrang vor der [`promptSuggestionEnabled`](/docs/de/settings-reference#promptsuggestionenabled)-Einstellung, die ist, was der **Prompt suggestions**-Toggle in `/config` schreibt. Claude Code [pausiert auch Vorschläge, während Ihr Konto nahe oder bei seinem Nutzungslimit ist](/docs/de/interactive-mode#when-claude-code-skips-suggestions). Setzen Sie auf `true`, um sie eingeschaltet zu halten, bis Sie das Limit erreichen. Erfordert Claude Code v2.1.238 oder später. Siehe [Prompt-Vorschläge](/docs/de/interactive-mode#prompt-suggestions) |

289| `CLAUDE_CODE_ENABLE_TASKS` | Wählt, welche Task-Tracking-Tools Claude Code in [Sitzungen bereitstellt, die sie haben](/docs/de/tools-reference#task-tool-availability). Standardmäßig stellt Claude Code die Task-Tools `TaskCreate`, `TaskUpdate`, `TaskGet` und `TaskList` bereit. Setzen Sie auf `0`, um stattdessen das Legacy-`TodoWrite`-Tool zu erhalten. Siehe [Task-Liste](/docs/de/interactive-mode#task-list) |289| `CLAUDE_CODE_ENABLE_TASKS` | Wählt, welche Task-Tracking-Tools Claude Code in [Sitzungen bereitstellt, die sie haben](/docs/de/tools-reference#task-tool-availability). Standardmäßig stellt Claude Code die Task-Tools `TaskCreate`, `TaskUpdate`, `TaskGet` und `TaskList` bereit. Setzen Sie auf `0`, um stattdessen das Legacy-`TodoWrite`-Tool zu erhalten. Siehe [Task-Liste](/docs/de/interactive-mode#task-list) |

290| `CLAUDE_CODE_ENABLE_TELEMETRY` | Setzen Sie auf `1`, um OpenTelemetry-Datenerfassung für Metriken und Protokollierung zu aktivieren. Erforderlich, bevor OTel-Exporter konfiguriert werden. Siehe [Monitoring](/docs/de/monitoring-usage) |290| `CLAUDE_CODE_ENABLE_TELEMETRY` | Setzen Sie auf `1`, um OpenTelemetry-Datenerfassung für Metriken und Protokollierung zu aktivieren. Erforderlich, bevor OTel-Exporter konfiguriert werden. Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert. Siehe [Monitoring](/docs/de/monitoring-usage) |

291| `CLAUDE_CODE_ENABLE_TODO_TOOLS` | Setzen Sie auf `1`, um die Task-Tracking-Tools auf jedem Modell zu erhalten. Ohne dies stellt Claude Code sie standardmäßig nur auf den Modellen bereit, die unter [Task-Tool-Verfügbarkeit](/docs/de/tools-reference#task-tool-availability) aufgelistet sind. `CLAUDE_CODE_ENABLE_TASKS` wählt immer noch die Task-Tools oder `TodoWrite`. Erfordert Claude Code v2.1.233 oder später |291| `CLAUDE_CODE_ENABLE_TODO_TOOLS` | Setzen Sie auf `1`, um die Task-Tracking-Tools auf jedem Modell zu erhalten. Ohne sie stellt Claude Code sie standardmäßig nur auf den Modellen bereit, die unter [Task-Tool-Verfügbarkeit](/docs/de/tools-reference#task-tool-availability) aufgelistet sind. `CLAUDE_CODE_ENABLE_TASKS` wählt immer noch die Task-Tools oder `TodoWrite`. Erfordert Claude Code v2.1.233 oder später |

292| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | Zeit in Millisekunden, die nach dem Leerlaufen der Query-Schleife gewartet werden soll, bevor automatisch beendet wird. Nützlich für automatisierte Workflows und Skripte, die SDK-Modus verwenden |292| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | Zeit in Millisekunden zum Warten, nachdem die Query-Schleife untätig wird, bevor automatisch beendet wird. Nützlich für automatisierte Workflows und Skripte, die SDK-Modus verwenden |

293| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Setzen Sie auf `1`, um [Agent-Teams](/docs/de/agent-teams) zu aktivieren. Agent-Teams sind experimentell und standardmäßig deaktiviert |293| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Setzen Sie auf `1`, um [Agent-Teams](/docs/de/agent-teams) zu aktivieren. Agent-Teams sind experimentell und standardmäßig deaktiviert |

294| `CLAUDE_CODE_EXTRA_BODY` | JSON-Objekt, das in die oberste Ebene jedes API-Request-Body zusammengeführt werden soll. Nützlich zum Übergeben von Provider-spezifischen Parametern, die Claude Code nicht direkt verfügbar macht. Ein Wert, der in Ihrer Shell exportiert wird, gilt auch für die [Background-Sitzungen](/docs/de/agent-view), die Sie mit `claude agents` oder `--bg` dispatchen. Vor v2.1.206 ignorierten Background-Sitzungen einen Shell-exportierten Wert und verwendeten, was der Background-Supervisor-Prozess erbte |294| `CLAUDE_CODE_EXTRA_BODY` | JSON-Objekt, das in die oberste Ebene jedes API-Request-Body zusammengeführt wird. Nützlich zum Übergeben von Provider-spezifischen Parametern, die Claude Code nicht direkt verfügbar macht. Ein Wert, der in Ihrer Shell exportiert wird, gilt auch für die [Hintergrund-Sitzungen](/docs/de/agent-view), die Sie mit `claude agents` oder `--bg` versenden. Vor v2.1.206 ignorierten Hintergrund-Sitzungen einen Shell-exportierten Wert und verwendeten, was die Hintergrund-Supervisor-Prozess geerbt hatte |

295| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Überschreiben Sie das Standard-Token-Limit für Datei-Lesevorgänge. Nützlich, wenn Sie größere Dateien vollständig lesen müssen |295| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Überschreiben Sie das Standard-Token-Limit für Datei-Lesevorgänge. Nützlich, wenn Sie größere Dateien vollständig lesen müssen |

296| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | Setzen Sie auf `1`, um Transkript-Persistenz, Prompt-Verlauf und `claude agents`-Registrierung zu erzwingen, auch wenn dieser `claude` von innen in einer anderen Claude Code-Sitzung gestartet wurde. Verwenden Sie, wenn ein vererbter `CLAUDE_CODE_CHILD_SESSION`-Wert, zum Beispiel von einer `screen`-Sitzung oder einem Background-Launcher, der zuerst von Claude Code's Bash-Tool gestartet wurde, verursacht, dass eine echte Top-Level-Sitzung als verschachtelt fehlklassifiziert wird. Ab v2.1.178 erkennt Claude Code den Tmux-Fall automatisch und ignoriert den vererbten Marker, daher braucht Tmux diese Variable nicht mehr. Auch auf v2.1.169 und früher geehrt; hat keine Auswirkung auf v2.1.170 und v2.1.171, wo die verschachtelte Sitzungs-Erkennung, die es überschreibt, entfernt wurde |296| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | Setzen Sie auf `1`, um Transkript-Persistenz, Prompt-Verlauf und `claude agents`-Registrierung zu erzwingen, auch wenn dieser `claude` von innen in einer anderen Claude Code-Sitzung gestartet wurde. Verwenden Sie, wenn ein geerbter `CLAUDE_CODE_CHILD_SESSION`-Wert, zum Beispiel von einer `screen`-Sitzung oder einem Hintergrund-Launcher, der zuerst von Claude Code's Bash-Tool gestartet wurde, eine echte Top-Level-Sitzung falsch klassifiziert. Ab v2.1.178 erkennt Claude Code den tmux-Fall automatisch und ignoriert den geerbten Marker, daher braucht tmux diese Variable nicht mehr. Auch auf v2.1.169 und früher geehrt; hat keine Auswirkung auf v2.1.170 und v2.1.171, wo die verschachtelte Sitzungs-Erkennung, die es überschreibt, entfernt wurde |

297| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | Setzen Sie auf `1`, um Durchstreichungs-Rendering für `~~text~~` in Claudes Antworten zu erzwingen, wenn Ihr Terminal es unterstützt, aber nicht auto-erkannt wird, wie über SSH ohne `TERM_PROGRAM` weitergeleitet. Ohne dies zeigen nicht erkannte Terminals die literalen `~~`-Marker, anstatt den Text als Durchstreichung zu rendern. Erfordert Claude Code v2.1.186 oder später |297| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | Setzen Sie auf `1`, um Durchstreichungs-Rendering für `~~text~~` in Claude's Antworten zu erzwingen, wenn Ihr Terminal es unterstützt, aber nicht auto-erkannt wird, wie über SSH ohne `TERM_PROGRAM` weitergeleitet. Ohne dies zeigen nicht erkannte Terminals die wörtlichen `~~`-Marker statt den Text als Durchstreichung zu rendern. Erfordert Claude Code v2.1.186 oder später |

298| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | Setzen Sie auf `1`, um DEC-Privatmodus 2026 [synchronisierte Ausgabe](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036) zu erzwingen, wenn Ihr Terminal es unterstützt, aber nicht auto-erkannt wird. Nützlich für Emulatoren wie Emacs `eat`, die BSU/ESU implementieren, aber nicht auf die Fähigkeits-Sonde antworten. Hat keine Auswirkung unter Tmux. Im Gegensatz zu `CLAUDE_CODE_NO_FLICKER`, das zum [Vollbild-Rendering](/docs/de/fullscreen) wechselt, ändert dies nicht den Renderer |298| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | Setzen Sie auf `1`, um DEC-Privatmodus 2026 [synchronisierte Ausgabe](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036) zu erzwingen, wenn Ihr Terminal es unterstützt, aber nicht auto-erkannt wird. Nützlich für Emulatoren wie Emacs `eat`, die BSU/ESU implementieren, aber nicht auf die Fähigkeits-Sonde antworten. Hat keine Auswirkung unter tmux. Im Gegensatz zu `CLAUDE_CODE_NO_FLICKER`, das zu [Vollbild-Rendering](/docs/de/fullscreen) wechselt, ändert dies nicht den Renderer |

299| `CLAUDE_CODE_FORK_SUBAGENT` | Kontrolliert [Fork-Modus](/docs/de/sub-agents#turn-fork-mode-on-or-off), der Claude erlaubt, [gegabelte Subagents](/docs/de/sub-agents#fork-the-current-conversation) selbst zu spawnen, und ist standardmäßig nur in interaktiven Sitzungen aktiviert. Setzen Sie auf `1`, um es auch in `claude -p` und dem Agent SDK zu aktivieren, oder `0`, um es in jeder Art von Sitzung auszuschalten. Sie können `/subtask` ausführen, ob Fork-Modus aktiviert ist oder nicht. Der interaktive Standard erfordert Claude Code v2.1.232 oder später; auf früheren Versionen setzen Sie die Variable auf `1`, um Fork-Modus zu aktivieren |299| `CLAUDE_CODE_FORK_SUBAGENT` | Steuert [Fork-Modus](/docs/de/sub-agents#turn-fork-mode-on-or-off), der Claude ermöglicht, [gegabelte Subagents](/docs/de/sub-agents#fork-the-current-conversation) selbst zu spawnen, und ist standardmäßig nur in interaktiven Sitzungen eingeschaltet. Setzen Sie auf `1`, um es auch in `claude -p` und dem Agent SDK einzuschalten, oder `0`, um es in jeder Art von Sitzung auszuschalten. Sie können `/subtask` ausführen, ob Fork-Modus eingeschaltet ist oder nicht. Der interaktive Standard erfordert Claude Code v2.1.232 oder später; auf früheren Versionen setzen Sie die Variable auf `1`, um Fork-Modus einzuschalten |

300| `CLAUDE_CODE_FORWARD_SUBAGENT_TEXT` | Setzen Sie auf `1`, um [Subagent](/docs/de/sub-agents)-Text- und Denk-Blöcke in `claude -p --output-format stream-json`-Ausgabe auszugeben, das gleiche Verhalten wie die [`--forward-subagent-text`](/docs/de/cli-reference#cli-flags)-Flag. Verwenden Sie die Variable, wenn ein Harness `claude` aufruft und die Flag selbst nicht übergeben kann. Im Gegensatz zur Flag, die außerhalb des nicht-interaktiven Modus mit Stream-JSON-Ausgabe mit einem Fehler beendet wird, wird die Variable dort ignoriert, daher funktionieren verschachtelte Aufrufe weiter, wenn sie prozessweit gesetzt ist. Erfordert Claude Code v2.1.211 oder später |300| `CLAUDE_CODE_FORWARD_SUBAGENT_TEXT` | Setzen Sie auf `1`, um [Subagent](/docs/de/sub-agents)-Text- und Denk-Blöcke in `claude -p --output-format stream-json`-Ausgabe zu emittieren, das gleiche Verhalten wie das [`--forward-subagent-text`](/docs/de/cli-reference#cli-flags)-Flag. Verwenden Sie die Variable, wenn ein Harness `claude` aufruft und das Flag selbst nicht übergeben kann. Im Gegensatz zum Flag, das außerhalb des nicht-interaktiven Modus mit Stream-JSON-Ausgabe mit einem Fehler beendet wird, wird die Variable dort ignoriert, daher funktionieren verschachtelte Aufrufe weiter, wenn sie prozessweit gesetzt ist. Erfordert Claude Code v2.1.211 oder später |

301| `CLAUDE_CODE_GATEWAY_HINT_HEADERS` | Setzen Sie auf `1`, um die [Gateway-Hint-Header](/docs/de/llm-gateway-protocol#gateway-hint-headers), wie `x-claude-code-request-class` und `x-claude-code-compaction`, auf einem benutzerdefinierten Proxy oder einem Drittanbieter-Provider wie Amazon Bedrock oder Claude Platform on AWS zu senden. Setzen Sie auf `0`, um sie auf jeder Verbindung zu stoppen, einschließlich einer direkten Verbindung zur Anthropic API, wo Claude Code sie standardmäßig sendet. Erfordert Claude Code v2.1.273 oder später |301| `CLAUDE_CODE_GATEWAY_HINT_HEADERS` | Setzen Sie auf `1`, um die [Gateway-Hint-Header](/docs/de/llm-gateway-protocol#gateway-hint-headers), wie `x-claude-code-request-class` und `x-claude-code-compaction`, auf einem benutzerdefinierten Proxy oder einem Drittanbieter-Provider wie Amazon Bedrock oder Claude Platform on AWS zu senden. Setzen Sie auf `0`, um sie auf jeder Verbindung zu stoppen, einschließlich einer direkten Verbindung zur Anthropic API, wo Claude Code sie standardmäßig sendet. Erfordert Claude Code v2.1.273 oder später |

302| `CLAUDE_CODE_GATEWAY_MODEL_DISCOVERY_TIMEOUT_MS` | Timeout in Millisekunden für die [Gateway-Modell-Erkennungs](/docs/de/llm-gateway-protocol#model-discovery)-Anfrage, die `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` aktiviert (Standard: `3000`). Erhöhen Sie dies, wenn Ihr Gateway länger als drei Sekunden braucht, um `/v1/models` beim Start zu beantworten. Akzeptiert nur einfache Ziffern; `0`, negative Werte und andere Schreibweisen behalten den Standard. Erfordert Claude Code v2.1.269 oder später |302| `CLAUDE_CODE_GATEWAY_MODEL_DISCOVERY_TIMEOUT_MS` | Timeout in Millisekunden für die [Gateway-Modell-Erkennungs](/docs/de/llm-gateway-protocol#model-discovery)-Anfrage, die `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` einschaltet (Standard: `3000`). Erhöhen Sie es, wenn Ihr Gateway länger als drei Sekunden braucht, um `/v1/models` beim Startup zu beantworten. Akzeptiert nur einfache Ziffern; `0`, negative Werte und andere Schreibweisen behalten den Standard. Erfordert Claude Code v2.1.269 oder später |

303| `CLAUDE_CODE_GIT_BASH_PATH` | Nur Windows: Pfad zur Git Bash-Ausführungsdatei (`bash.exe`). Verwenden Sie, wenn Git Bash installiert ist, aber nicht in Ihrem PATH. Wenn der Pfad nicht existiert oder die Datei nicht `bash.exe`, `sh.exe`, `bash` oder `sh` heißt, ignoriert Claude Code die Variable und auto-erkennt Git Bash, als ob sie nicht gesetzt wäre, und protokolliert eine Warnung, die mit `--debug` sichtbar ist. Vor v2.1.219 beendete Claude Code beim Start, wenn der Pfad nicht existierte, und verwendete jede existierende Datei als Shell, ohne zu überprüfen, dass es Bash oder sh war. Siehe [Windows-Setup](/docs/de/setup#set-up-on-windows) |303| `CLAUDE_CODE_GIT_BASH_PATH` | Nur Windows: Pfad zur Git Bash-Ausführungsdatei (`bash.exe`). Verwenden Sie, wenn Git Bash installiert ist, aber nicht in Ihrem PATH. Wenn der Pfad nicht existiert oder die Datei nicht `bash.exe`, `sh.exe`, `bash` oder `sh` heißt, ignoriert Claude Code die Variable und auto-erkennt Git Bash, als ob sie nicht gesetzt wäre, und protokolliert eine Warnung, die mit `--debug` sichtbar ist. Vor v2.1.219 beendete Claude Code beim Startup, wenn der Pfad nicht existierte, und verwendete jede existierende Datei als Shell, ohne zu überprüfen, dass sie bash oder sh war. Siehe [Windows-Setup](/docs/de/setup#set-up-on-windows) |

304| `CLAUDE_CODE_GLOB_HIDDEN` | Setzen Sie auf `false`, um Dotfiles aus Ergebnissen auszuschließen, wenn Claude das [Glob-Tool](/docs/de/tools-reference#glob-tool-behavior) aufruft. Standardmäßig enthalten. Betrifft nicht `@`-Datei-Autovervollständigung, `ls`, Grep oder Read |304| `CLAUDE_CODE_GLOB_HIDDEN` | Setzen Sie auf `false`, um Dotfiles aus Ergebnissen auszuschließen, wenn Claude das [Glob-Tool](/docs/de/tools-reference#glob-tool-behavior) aufruft. Standardmäßig enthalten. Betrifft nicht `@`-Datei-Autovervollständigung, `ls`, Grep oder Read |

305| `CLAUDE_CODE_GLOB_NO_IGNORE` | Setzen Sie auf `false`, um das [Glob-Tool](/docs/de/tools-reference#glob-tool-behavior) `.gitignore`-Muster respektieren zu lassen. Standardmäßig gibt Glob alle übereinstimmenden Dateien zurück, einschließlich gitignorierter. Betrifft nicht `@`-Datei-Autovervollständigung, die ihre eigene [`respectGitignore`-Einstellung](/docs/de/settings-reference#respectgitignore) hat |305| `CLAUDE_CODE_GLOB_NO_IGNORE` | Setzen Sie auf `false`, um das [Glob-Tool](/docs/de/tools-reference#glob-tool-behavior) `.gitignore`-Muster respektieren zu lassen. Standardmäßig gibt Glob alle übereinstimmenden Dateien zurück, einschließlich gitignorierter. Betrifft nicht `@`-Datei-Autovervollständigung, die ihre eigene [`respectGitignore`-Einstellung](/docs/de/settings-reference#respectgitignore) hat |

306| `CLAUDE_CODE_GLOB_TIMEOUT_SECONDS` | Timeout in Sekunden für Glob-Tool-Datei-Erkennung. Standardmäßig 20 Sekunden auf den meisten Plattformen und 60 Sekunden auf WSL |306| `CLAUDE_CODE_GLOB_TIMEOUT_SECONDS` | Timeout in Sekunden für Glob-Tool-Datei-Erkennung. Standard 20 Sekunden auf den meisten Plattformen und 60 Sekunden auf WSL |

307| `CLAUDE_CODE_GOAL_CHECKIN_MINUTES` | Wie viele Minuten Hintergrundarbeit ein aktives Ziel warten lassen kann, bevor Claude Code [Claude auffordert, es zu überprüfen](/docs/de/goal#background-work-defers-evaluation). Standard `30`. Setzen Sie auf `0`, um Check-ins auszuschalten. Geben Sie ganze Minuten in einfachen Ziffern an, höchstens `10080`, was eine Woche ist. Claude Code behandelt jeden anderen Wert als nicht gesetzt und verwendet den Standard. Erfordert Claude Code v2.1.234 oder später |307| `CLAUDE_CODE_GOAL_CHECKIN_MINUTES` | Wie viele Minuten Hintergrundarbeit ein aktives Ziel warten lassen kann, bevor Claude Code [Claude bittet, es zu überprüfen](/docs/de/goal#background-work-defers-evaluation). Standard `30`. Setzen Sie `0`, um Check-ins auszuschalten. Geben Sie ganze Minuten in einfachen Ziffern an, höchstens `10080`, was eine Woche ist. Claude Code behandelt jeden anderen Wert als nicht gesetzt und verwendet den Standard. Erfordert Claude Code v2.1.234 oder später |

308| `CLAUDE_CODE_HIDE_CWD` | Setzen Sie auf `1`, um das Arbeitsverzeichnis im Startup-Logo zu verbergen. Nützlich für Screenshares oder Aufzeichnungen, wo der Pfad Ihren OS-Benutzernamen offenlegt |308| `CLAUDE_CODE_HIDE_CWD` | Setzen Sie auf `1`, um das Arbeitsverzeichnis im Startup-Logo zu verbergen. Nützlich für Screenshares oder Aufzeichnungen, wo der Pfad Ihren OS-Benutzernamen offenlegt |

309| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | Überschreiben Sie die Host-Adresse, die zum Verbinden mit der IDE-Erweiterung verwendet wird. Standardmäßig auto-erkennt Claude Code die richtige Adresse, einschließlich WSL-zu-Windows-Routing |309| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | Überschreiben Sie die Host-Adresse, die zum Verbinden mit der IDE-Erweiterung verwendet wird. Standardmäßig auto-erkennt Claude Code die richtige Adresse, einschließlich WSL-zu-Windows-Routing |

310| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Setzen Sie auf `1`, um die Auto-Installation von IDE-Erweiterungen zu überspringen. Äquivalent zum Setzen von [`autoInstallIdeExtension`](/docs/de/settings-reference#autoinstallideextension) auf `false` |310| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Setzen Sie auf `1`, um die Auto-Installation von IDE-Erweiterungen zu überspringen. Entspricht dem Setzen von [`autoInstallIdeExtension`](/docs/de/settings-reference#autoinstallideextension) auf `false` |

311| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | Setzen Sie auf `1`, um die Validierung von IDE-Lockfile-Einträgen während der Verbindung zu überspringen. Verwenden Sie, wenn Auto-Connect Ihre IDE trotz laufend nicht findet |311| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | Setzen Sie auf `1`, um die Validierung von IDE-Lockfile-Einträgen während der Verbindung zu überspringen. Verwenden Sie, wenn Auto-Connect Ihre IDE nicht findet, obwohl sie läuft |

312| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | Wie viele [Subagents](/docs/de/sub-agents#concurrent-subagent-limit) in einer Sitzung laufen können, bevor das Agent-Tool sich weigert, einen anderen zu spawnen (Standard: 20). Akzeptiert eine positive ganze Zahl in einfachen Ziffern; alles andere wird ignoriert, daher kann die Variable die Obergrenze anpassen, aber nicht deaktivieren. Erfordert Claude Code v2.1.217 oder später |312| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | Wie viele [Subagents](/docs/de/sub-agents#concurrent-subagent-limit) in einer Sitzung laufen können, bevor das Agent-Tool sich weigert, einen anderen zu spawnen (Standard: 20). Akzeptiert eine positive ganze Zahl in einfachen Ziffern; alles andere wird ignoriert, daher kann die Variable die Obergrenze anpassen, aber nicht deaktivieren. Erfordert Claude Code v2.1.217 oder später |

313| `CLAUDE_CODE_MAX_CONTEXT_TOKENS` | Überschreiben Sie die Kontext-Fenster-Größe, die Claude Code für das aktive Modell annimmt. Ab v2.1.193 hängt, wie es angewendet wird, davon ab, wie Claude Code die Modell-ID auflöst; siehe [Fenster für eine Gateway- oder benutzerdefinierte Modell-ID korrigieren](/docs/de/model-config#correct-the-window-for-a-gateway-or-custom-model-id). Verwenden Sie dies beim Routing zu einem Modell durch `ANTHROPIC_BASE_URL`, dessen Kontext-Fenster nicht der integrierten Größe für seinen Namen entspricht |313| `CLAUDE_CODE_MAX_CONTEXT_TOKENS` | Überschreiben Sie die Kontext-Fenster-Größe, die Claude Code für das aktive Modell annimmt. Ab v2.1.193 hängt, wie es angewendet wird, davon ab, wie Claude Code die Modell-ID auflöst; siehe [Fenster für eine Gateway- oder benutzerdefinierte Modell-ID korrigieren](/docs/de/model-config#correct-the-window-for-a-gateway-or-custom-model-id). Verwenden Sie dies beim Routing zu einem Modell durch `ANTHROPIC_BASE_URL`, dessen Kontext-Fenster nicht der integrierten Größe für seinen Namen entspricht |

314| `CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH` | Maximale Länge in Zeichen jeder MCP-Tool-Beschreibung und jeder MCP-Server-Anweisungen, die Claude Code an das Modell sendet (Standard: 2048). Claude Code [kürzt längeren Text](/docs/de/mcp#for-mcp-server-authors). Akzeptiert eine positive ganze Zahl in einfachen Ziffern. Alles andere wird ignoriert und der Standard gilt. Erfordert Claude Code v2.1.280 oder später |314| `CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH` | Maximale Länge in Zeichen jeder MCP-Tool-Beschreibung und jeder MCP-Server-Anweisungen, die Claude Code an das Modell sendet (Standard: 2048). Claude Code [kürzt längeren Text](/docs/de/mcp#for-mcp-server-authors). Akzeptiert eine positive ganze Zahl in einfachen Ziffern. Alles andere wird ignoriert und der Standard gilt. Erfordert Claude Code v2.1.280 oder später |

315| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | Setzen Sie die maximale Anzahl von Output-Tokens für die meisten Anfragen. Standardwerte und Obergrenzen variieren je nach Modell; siehe [Max Output Tokens](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison). Claude Code standardmäßig auf 32000 für Modell-IDs, die es nicht erkennt, wie Gateway-spezifische Namen, und senkt Werte über einer Modell-Obergrenze auf die Obergrenze. Das Erhöhen dieses Wertes reduziert das verfügbare effektive Kontext-Fenster, bevor [Auto-Compaction](/docs/de/costs#reduce-token-usage) ausgelöst wird |315| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | Setzen Sie die maximale Anzahl von Output-Tokens für die meisten Anfragen. Standardwerte und Obergrenzen variieren je nach Modell; siehe [Max Output Tokens](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison). Claude Code setzt den Standard auf 32000 für Modell-IDs, die es nicht erkennt, wie Gateway-spezifische Namen, und senkt Werte über einer Modell-Obergrenze auf die Obergrenze. Das Erhöhen dieses Wertes reduziert das verfügbare effektive Kontext-Fenster, bevor [Auto-Compaction](/docs/de/costs#reduce-token-usage) ausgelöst wird |

316| `CLAUDE_CODE_MAX_RETRIES` | Überschreiben Sie die Anzahl der Wiederholungen fehlgeschlagener API-Anfragen (Standard: 10). Begrenzt auf 15 ab v2.1.186; ab v2.1.199 hebt `CLAUDE_CODE_RETRY_WATCHDOG` den Standard an und entfernt die Obergrenze. Für unbeaufsichtigte Sitzungen, die längere Ausfallzeiten abwarten müssen, setzen Sie stattdessen `CLAUDE_CODE_RETRY_WATCHDOG` |316| `CLAUDE_CODE_MAX_RETRIES` | Überschreiben Sie die Anzahl der Wiederholungen fehlgeschlagener API-Anfragen (Standard: 10). Begrenzt auf 15 ab v2.1.186; ab v2.1.199 hebt `CLAUDE_CODE_RETRY_WATCHDOG` den Standard an und entfernt die Obergrenze. Für unbeaufsichtigte Sitzungen, die längere Ausfallzeiten abwarten müssen, setzen Sie stattdessen `CLAUDE_CODE_RETRY_WATCHDOG` |

317| `CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION` | Entfernt in v2.1.224 und jetzt ein No-Op. Begrenzte zuvor die Gesamtzahl der [Subagents](/docs/de/sub-agents), die Claude mit dem Agent-Tool in einer Sitzung spawnen konnte (Standard: 200); Spawning über die Obergrenze hinaus schlägt mit `Subagent spawn limit reached` fehl. Die [gleichzeitige Subagent-Obergrenze](/docs/de/sub-agents#concurrent-subagent-limit) und die [Tiefenlimit](/docs/de/sub-agents#let-subagents-spawn-their-own-subagents) gelten immer noch |317| `CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION` | Entfernt in v2.1.224 und jetzt ein No-Op. Begrenzte zuvor die Gesamtzahl der [Subagents](/docs/de/sub-agents), die Claude mit dem Agent-Tool in einer Sitzung spawnen konnte (Standard: 200); Spawning über die Obergrenze hinaus schlägt mit `Subagent spawn limit reached` fehl. Die [gleichzeitige Subagent-Obergrenze](/docs/de/sub-agents#concurrent-subagent-limit) und die [Tiefenbegrenzung](/docs/de/sub-agents#let-subagents-spawn-their-own-subagents) gelten immer noch |

318| `CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH` | Anzahl der [Subagent-Schichten](/docs/de/sub-agents#let-subagents-spawn-their-own-subagents) unter der Hauptkonversation (Standard: 3). Bei der Standardeinstellung können Subagents ihre eigenen spawnen, und ein Subagent in der dritten Schicht kann nicht weiter spawnen; setzen Sie `1`, um Verschachtelung auszuschalten. In v2.1.217 bis v2.1.218 war der Standard 1, daher konnte ein Subagent nicht sein eigenes spawnen, es sei denn, Sie erhöhten die Obergrenze; v2.1.219 erhöhte den Standard auf 3. Akzeptiert eine positive ganze Zahl in einfachen Ziffern; alles andere wird ignoriert, daher kann die Obergrenze angepasst, aber nicht entfernt werden. Erfordert Claude Code v2.1.217 oder später |318| `CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH` | Anzahl der [Subagent-Schichten](/docs/de/sub-agents#let-subagents-spawn-their-own-subagents) unter der Hauptkonversation (Standard: 3). Bei dem Standard können Subagents ihre eigenen spawnen, und ein Subagent in der dritten Schicht kann nicht weiter spawnen; setzen Sie `1`, um Verschachtelung auszuschalten. In v2.1.217 bis v2.1.218 war der Standard 1, daher konnte ein Subagent sein eigenes nicht spawnen, es sei denn, Sie erhöhten die Obergrenze; v2.1.219 erhöhte den Standard auf 3. Akzeptiert eine positive ganze Zahl in einfachen Ziffern; alles andere wird ignoriert, daher kann die Obergrenze angepasst, aber nicht entfernt werden. Erfordert Claude Code v2.1.217 oder später |

319| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | Maximale Anzahl von Read-Only-Tools und Subagents, die parallel ausgeführt werden können (Standard: 10). Höhere Werte erhöhen Parallelismus, verbrauchen aber mehr Ressourcen |319| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | Maximale Anzahl von Read-Only-Tools und Subagents, die parallel ausgeführt werden können (Standard: 10). Höhere Werte erhöhen Parallelismus, verbrauchen aber mehr Ressourcen |

320| `CLAUDE_CODE_MAX_TURNS` | Begrenzen Sie die Anzahl der Agentic-Turns, wenn keine explizite Obergrenze übergeben wird. Äquivalent zum Übergeben von [`--max-turns`](/docs/de/cli-reference#cli-flags), das Vorrang hat, wenn beide gesetzt sind. Ein Wert, der keine positive Ganzzahl ist, wird beim Start mit einem Fehler abgelehnt, anstatt als keine Obergrenze behandelt zu werden |320| `CLAUDE_CODE_MAX_TURNS` | Begrenzen Sie die Anzahl der agentic Turns, wenn keine explizite Obergrenze übergeben wird. Entspricht dem Übergeben von [`--max-turns`](/docs/de/cli-reference#cli-flags), das Vorrang hat, wenn beide gesetzt sind. Ein Wert, der keine positive Ganzzahl ist, wird beim Startup mit einem Fehler abgelehnt, anstatt als keine Obergrenze behandelt zu werden |

321| `CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION` | Obergrenze für die Gesamtzahl der [WebSearch](/docs/de/tools-reference#websearch-tool-behavior)-Aufrufe, die eine Sitzung machen kann (Standard: 200). Wenn Claude die Obergrenze erreicht, geben weitere WebSearch-Aufrufe eine Mitteilung zurück, die Claude auffordert, mit den Informationen fortzufahren, die es bereits gesammelt hat. Akzeptiert eine positive ganze Zahl ohne Obergrenze. Alles andere wird ignoriert und der Standard gilt, daher kann die Obergrenze erhöht, aber nicht ausgeschaltet werden. Erfordert Claude Code v2.1.212 oder später |321| `CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION` | Obergrenze für die Gesamtzahl der [WebSearch](/docs/de/tools-reference#websearch-tool-behavior)-Aufrufe, die eine Sitzung machen kann (Standard: 200). Wenn Claude die Obergrenze erreicht, geben weitere WebSearch-Aufrufe eine Mitteilung zurück, die Claude sagt, mit den Informationen fortzufahren, die es bereits gesammelt hat. Akzeptiert eine positive ganze Zahl ohne Obergrenze. Alles andere wird ignoriert und der Standard gilt, daher kann die Obergrenze erhöht, aber nicht ausgeschaltet werden. Erfordert Claude Code v2.1.212 oder später |

322| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | Setzen Sie auf `1`, um Stdio-MCP-Server nur mit einer sicheren Baseline-Umgebung plus der konfigurierten `env` des Servers zu spawnen, anstatt Ihre Shell-Umgebung zu erben |322| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | Setzen Sie auf `1`, um stdio MCP-Server mit nur einer sicheren Baseline-Umgebung plus der konfigurierten `env` des Servers zu spawnen, anstatt Ihre Shell-Umgebung zu erben |

323| `CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS` | Verstrichene Zeit in Millisekunden, bevor ein noch laufender MCP-Tool-Aufruf [zu einer Background-Aufgabe wechselt](/docs/de/mcp#automatic-backgrounding-of-long-tool-calls) (Standard: 120000 oder 2 Minuten). Setzen Sie auf `0`, um automatisches Backgrounding auszuschalten. Erfordert Claude Code v2.1.212 oder später |323| `CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS` | Verstrichene Zeit in Millisekunden, bevor ein noch laufender MCP-Tool-Aufruf [zu einer Hintergrund-Aufgabe wechselt](/docs/de/mcp#automatic-backgrounding-of-long-tool-calls) (Standard: 120000 oder 2 Minuten). Setzen Sie auf `0`, um automatisches Backgrounding auszuschalten. Erfordert Claude Code v2.1.212 oder später |

324| `CLAUDE_CODE_MCP_STARTUP_WAIT_MS` | Wie lange in Millisekunden der erste Turn einer [nicht-interaktiven](/docs/de/headless)-Sitzung auf MCP-Server wartet, die noch verbinden, anstelle des Standard-[First-Turn-Waits](/docs/de/agent-sdk/mcp#connection-timing). Wenn gesetzt, deckt das Warten jeden ausstehenden Server ab. Setzen Sie auf `0`, um das Warten zu überspringen. Ein [`--permission-prompt-tool`](/docs/de/cli-reference#cli-flags)-Server behält sein eigenes `MCP_TIMEOUT`-Warten unabhängig vom Wert. Erfordert Claude Code v2.1.274 oder später |324| `CLAUDE_CODE_MCP_STARTUP_WAIT_MS` | Wie lange in Millisekunden der erste Turn einer [nicht-interaktiven](/docs/de/headless)-Sitzung auf MCP-Server wartet, die noch verbinden, anstelle des Standard-[First-Turn-Waits](/docs/de/agent-sdk/mcp#connection-timing). Wenn gesetzt, deckt das Warten jeden ausstehenden Server ab. Setzen Sie auf `0`, um das Warten zu überspringen. Ein [`--permission-prompt-tool`](/docs/de/cli-reference#cli-flags)-Server behält sein eigenes `MCP_TIMEOUT`-Warten unabhängig vom Wert. Erfordert Claude Code v2.1.274 oder später |

325| `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` | Idle-Timeout in Millisekunden für MCP-Tool-Aufrufe. Wenn ein Stdio-, HTTP-, SSE-, WebSocket- oder [claude.ai-Connector](/docs/de/mcp#use-mcp-servers-from-claude-ai)-MCP-Server für diese lange keine Antwort und keine Fortschritts-Benachrichtigung sendet, bricht der Tool-Aufruf mit einem Fehler ab, anstatt auf das Gesamt-`MCP_TOOL_TIMEOUT` zu warten. Überschreibt die Pro-Transport-Standards von 300000 (5 Minuten) für Netzwerk-Server und 1800000 (30 Minuten) für Stdio-Server. Setzen Sie auf `0`, um die Idle-Überprüfung zu deaktivieren. Werte unter 1000 werden auf eine Sekunde erhöht, und der Wert ist auf das effektive `MCP_TOOL_TIMEOUT` begrenzt. Ein Pro-Server-`timeout` in `.mcp.json` von mindestens 1000 erhöht das Idle-Fenster dieses Servers auf mindestens den `timeout`-Wert. Gilt nicht für IDE-Server oder SDK-In-Process-Server. Erfordert Claude Code v2.1.187 oder später. Vor v2.1.203 waren Stdio-Server vom Idle-Timeout ausgenommen |325| `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` | Idle-Timeout in Millisekunden für MCP-Tool-Aufrufe. Wenn ein stdio-, HTTP-, SSE-, WebSocket- oder [claude.ai-Connector](/docs/de/mcp#use-mcp-servers-from-claude-ai)-MCP-Server für diese lange keine Antwort und keine Fortschritts-Benachrichtigung sendet, bricht der Tool-Aufruf mit einem Fehler ab, anstatt auf das gesamte `MCP_TOOL_TIMEOUT` zu warten. Überschreibt die Pro-Transport-Standards von 300000 (5 Minuten) für Netzwerk-Server und 1800000 (30 Minuten) für stdio-Server. Setzen Sie auf `0`, um die Idle-Prüfung zu deaktivieren. Werte unter 1000 werden auf eine Sekunde erhöht, und der Wert ist auf das effektive `MCP_TOOL_TIMEOUT` begrenzt. Ein Pro-Server-`timeout` in `.mcp.json` von mindestens 1000 erhöht das Idle-Fenster dieses Servers auf mindestens den `timeout`-Wert. Gilt nicht für IDE-Server oder SDK In-Process-Server. Erfordert Claude Code v2.1.187 oder später. Vor v2.1.203 waren stdio-Server von dem Idle-Timeout ausgenommen |

326| `CLAUDE_CODE_MESSAGING_SOCKET` | Wird von Claude Code gesetzt, nicht von Ihnen: in Sitzungen, die einen [Inbox-Socket](/docs/de/cross-session-messaging#the-sessions-inbox-socket) binden, exportiert Claude Code den Pfad dieses Sockets an Hooks und Bash-Befehle, wenn es den Socket bindet. In einer Sitzung, die mit Messaging startet, bindet Claude Code den Socket, bevor ein Hook läuft. Andere Sitzungen auf der Maschine liefern Nachrichten an diesen Pfad. Jede Sitzung exportiert ihren eigenen Socket, anstatt einen von einem übergeordneten zu erben, und Nachrichten, die darauf ankommen, gehen durch die [Inbound-Kontrollen](/docs/de/cross-session-messaging#control-inbound-messages) der Sitzung. Einstellungs-`env`-Blöcke können es nicht setzen. Erfordert Claude Code v2.1.224 oder später |326| `CLAUDE_CODE_MESSAGING_SOCKET` | Wird von Claude Code gesetzt, nicht von Ihnen: in Sitzungen, die einen [Inbox-Socket](/docs/de/cross-session-messaging#the-sessions-inbox-socket) binden, exportiert Claude Code den Pfad dieses Sockets zu Hooks und Bash-Befehlen, wenn es den Socket bindet. In einer Sitzung, die mit Messaging startet, bindet Claude Code den Socket, bevor ein Hook läuft. Andere Sitzungen auf der Maschine liefern Nachrichten an diesen Pfad. Jede Sitzung exportiert ihren eigenen Socket, anstatt einen von einem übergeordneten zu erben, und Nachrichten, die darauf ankommen, gehen durch die [Inbound-Kontrollen](/docs/de/cross-session-messaging#control-inbound-messages) der Sitzung. Einstellungs-`env`-Blöcke können es nicht setzen. Erfordert Claude Code v2.1.224 oder später |

327| `CLAUDE_CODE_MESSAGING_TOKEN` | Wird von Claude Code gesetzt, nicht von Ihnen: in Sitzungen, die einen [Inbox-Socket](/docs/de/cross-session-messaging#the-sessions-inbox-socket) binden, exportiert Claude Code diesen Pro-Sitzungs-Token an Hooks und Bash-Befehle neben `CLAUDE_CODE_MESSAGING_SOCKET`. Ein Skript, das zum Socket postet, kann `{"type":"auth","token":"<token>"}` als erste Zeile senden, um zu beweisen, dass es zur Sitzung gehört. Auf nativem Windows erfordert Claude Code diese Zeile und schließt jede Verbindung, die nicht mit einer gültigen öffnet. Die [Own-Child-Regeln](/docs/de/cross-session-messaging#the-sessions-inbox-socket) sagen, wann Claude Code den Token konsultiert. Jede Sitzung exportiert ihren eigenen Token, nie einen von einer übergeordneten Sitzung geerbt. Einstellungs-`env`-Blöcke können es nicht setzen. Erfordert Claude Code v2.1.228 oder später |327| `CLAUDE_CODE_MESSAGING_TOKEN` | Wird von Claude Code gesetzt, nicht von Ihnen: in Sitzungen, die einen [Inbox-Socket](/docs/de/cross-session-messaging#the-sessions-inbox-socket) binden, exportiert Claude Code diesen Pro-Sitzungs-Token zu Hooks und Bash-Befehlen neben `CLAUDE_CODE_MESSAGING_SOCKET`. Ein Skript, das zum Socket postet, kann `{"type":"auth","token":"<token>"}` als erste Zeile senden, um zu beweisen, dass es zur Sitzung gehört. Auf nativem Windows erfordert Claude Code diese Zeile und schließt jede Verbindung, die nicht mit einer gültigen öffnet. Die [Own-Child-Regeln](/docs/de/cross-session-messaging#the-sessions-inbox-socket) sagen, wann Claude Code den Token konsultiert. Jede Sitzung exportiert ihren eigenen Token, nie einen von einer übergeordneten Sitzung geerbt. Einstellungs-`env`-Blöcke können es nicht setzen. Erfordert Claude Code v2.1.228 oder später |

328| `CLAUDE_CODE_NATIVE_CURSOR` | Setzen Sie auf `1`, um den eigenen Cursor des Terminals bei der Eingabe-Einfügemarke anzuzeigen, anstatt eines gezeichneten Blocks. Der Cursor respektiert die Blink-, Form- und Fokus-Einstellungen des Terminals |328| `CLAUDE_CODE_NATIVE_CURSOR` | Setzen Sie auf `1`, um den eigenen Cursor des Terminals an der Eingabe-Einfügemarke anzuzeigen, anstatt eines gezeichneten Blocks. Der Cursor respektiert die Blink-, Form- und Fokus-Einstellungen des Terminals |

329| `CLAUDE_CODE_NEW_INIT` | Setzen Sie auf `1`, um `/init` einen interaktiven Setup-Flow ausführen zu lassen. Der Flow fragt, welche Dateien generiert werden sollen, einschließlich CLAUDE.md, Skills und Hooks, bevor die Codebasis erkundet und geschrieben wird. Ohne diese Variable generiert `/init` automatisch eine CLAUDE.md ohne zu fragen |329| `CLAUDE_CODE_NEW_INIT` | Setzen Sie auf `1`, um `/init` einen interaktiven Setup-Flow ausführen zu lassen. Der Flow fragt, welche Dateien generiert werden sollen, einschließlich CLAUDE.md, Skills und Hooks, bevor die Codebasis erkundet und sie geschrieben werden. Ohne diese Variable generiert `/init` automatisch eine CLAUDE.md ohne zu fragen |

330| `CLAUDE_CODE_NONBLOCKING_STDOUT` | Setzen Sie auf `1`, um Terminal-Ausgabe durch einen zweiten nicht-blockierenden Datei-Deskriptor zu schreiben, daher kann ein Terminal, das nicht mehr liest, wie ein pausierter Tmux-Control-Mode-Pane oder eine steckengebliebene SSH-Verbindung, Claude Code nicht mid-session einfrieren. Gilt auf macOS, Linux und WSL, wenn stdout ein Terminal ist. Erfordert Claude Code v2.1.261 oder später |330| `CLAUDE_CODE_NONBLOCKING_STDOUT` | Setzen Sie auf `1`, um Terminal-Ausgabe durch einen zweiten nicht-blockierenden Datei-Deskriptor zu schreiben, daher kann ein Terminal, das aufhört zu lesen, wie ein pausierter tmux-Control-Mode-Pane oder eine steckengebliebene SSH-Verbindung, Claude Code nicht mid-session einfrieren. Gilt auf macOS, Linux und WSL, wenn stdout ein Terminal ist. Erfordert Claude Code v2.1.261 oder später |

331| `CLAUDE_CODE_NO_FLICKER` | Setzen Sie auf `1`, um [Vollbild-Rendering](/docs/de/fullscreen) zu aktivieren, eine Forschungs-Vorschau, die Flimmern reduziert und Speicher in langen Konversationen flach hält. Überschreibt die [`tui`](/docs/de/settings-reference#tui)-Einstellung; Sie können auch mit `/tui fullscreen` wechseln |331| `CLAUDE_CODE_NO_FLICKER` | Setzen Sie auf `1`, um [Vollbild-Rendering](/docs/de/fullscreen) zu aktivieren, eine Forschungs-Vorschau, die Flimmern reduziert und Speicher in langen Konversationen flach hält. Überschreibt die [`tui`](/docs/de/settings-reference#tui)-Einstellung; Sie können auch mit `/tui fullscreen` wechseln |

332| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | OAuth-Refresh-Token für Claude.ai-Authentifizierung. Wenn gesetzt, tauscht `claude auth login` diesen Token direkt aus, anstatt einen Browser zu öffnen. Erfordert `CLAUDE_CODE_OAUTH_SCOPES`. Nützlich für die Bereitstellung von Authentifizierung in automatisierten Umgebungen |332| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | OAuth-Refresh-Token für Claude.ai-Authentifizierung. Wenn gesetzt, tauscht `claude auth login` diesen Token direkt aus, anstatt einen Browser zu öffnen. Erfordert `CLAUDE_CODE_OAUTH_SCOPES`. Nützlich für die Bereitstellung von Authentifizierung in automatisierten Umgebungen |

333| `CLAUDE_CODE_OAUTH_SCOPES` | Leerzeichen-getrennte OAuth-Scopes, mit denen der Refresh-Token ausgestellt wurde, wie `"user:profile user:inference user:sessions:claude_code"`. Erforderlich, wenn `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` gesetzt ist |333| `CLAUDE_CODE_OAUTH_SCOPES` | Leerzeichen-getrennte OAuth-Scopes, mit denen der Refresh-Token ausgestellt wurde, wie `"user:profile user:inference user:sessions:claude_code"`. Erforderlich, wenn `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` gesetzt ist |

334| `CLAUDE_CODE_OAUTH_TOKEN` | OAuth-Zugriffstoken für claude.ai-Authentifizierung. Alternative zu `/login` für SDK und automatisierte Umgebungen. Hat Vorrang vor Keychain-gespeicherten Credentials. Generieren Sie eines mit [`claude setup-token`](/docs/de/authentication#generate-a-long-lived-token). Wenn Sie nicht [`/login`](/docs/de/authentication#authentication-precedence) ausführen, verwendet Claude Code das Token, das Sie für die ganze Sitzung setzen. Um ein abgelaufenes Token zu ersetzen, generieren Sie ein neues und starten Sie neu |334| `CLAUDE_CODE_OAUTH_TOKEN` | OAuth-Zugriffstoken für claude.ai-Authentifizierung. Alternative zu `/login` für SDK und automatisierte Umgebungen. Hat Vorrang vor Keychain-gespeicherten Anmeldedaten. Generieren Sie eines mit [`claude setup-token`](/docs/de/authentication#generate-a-long-lived-token). Wenn Sie nicht [`/login`](/docs/de/authentication#authentication-precedence) ausführen, verwendet Claude Code das Token, das Sie für die ganze Sitzung setzen. Um ein abgelaufenes Token zu ersetzen, generieren Sie ein neues und starten Sie neu |

335| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | Entfernt in v2.1.160 und jetzt ein No-Op. Heftete zuvor [Fast Mode](/docs/de/fast-mode) auf Claude Opus 4.6 an, anstelle des aktuellen Standards. Opus 4.6 unterstützt Fast Mode nicht mehr |335| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | Entfernt in v2.1.160 und jetzt ein No-Op. Heftete zuvor [Fast Mode](/docs/de/fast-mode) auf Claude Opus 4.6 statt des aktuellen Standards. Opus 4.6 unterstützt Fast Mode nicht mehr |

336| `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` | Maximale Länge von Content-tragenden OpenTelemetry-Attributen (Modell-Antworten, Tool-Inhalt, System-Prompts, rohe API-Bodies), Kürzungs-Marker enthalten, in UTF-16-Code-Einheiten (Standard: 61440, d.h. 60 KB). Erhöhen Sie es nur, wenn Ihr Telemetrie-Backend Attribut-Werte größer als 64 KB akzeptiert, oder senken Sie es, um Telemetrie-Volumen zu reduzieren. Erfordert Claude Code v2.1.214 oder später. Siehe [Monitoring](/docs/de/monitoring-usage) |336| `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` | Maximale Länge von Content-tragenden OpenTelemetry-Attributen (Modell-Antworten, Tool-Inhalt, System-Prompts, rohe API-Bodies), Kürzungs-Marker enthalten, in UTF-16-Code-Einheiten (Standard: 61440, d.h. 60 KB). Erhöhen Sie es nur, wenn Ihr Telemetrie-Backend Attribut-Werte größer als 64 KB akzeptiert, oder senken Sie es, um Telemetrie-Volumen zu reduzieren. Erfordert Claude Code v2.1.214 oder später. Siehe [Monitoring](/docs/de/monitoring-usage) |

337| `CLAUDE_CODE_OTEL_DIAG_STDERR` | Setzen Sie auf `1`, um OpenTelemetry-Exporter-Diagnose-Fehler auf stderr zu schreiben. Standardmäßig erscheinen diese Fehler nur mit `--debug`, daher schlägt ein fehlkonfigurierter Exporter wie eine Prometheus-Port-Kollision andernfalls stillschweigend fehl. Erfordert Claude Code v2.1.179 oder später. Siehe [Monitoring](/docs/de/monitoring-usage) |337| `CLAUDE_CODE_OTEL_DIAG_STDERR` | Setzen Sie auf `1`, um OpenTelemetry-Exporter-Diagnose-Fehler auf stderr zu schreiben. Standardmäßig erscheinen diese Fehler nur mit `--debug`, daher schlägt ein falsch konfigurierter Exporter wie eine Prometheus-Port-Kollision andernfalls stillschweigend fehl. Erfordert Claude Code v2.1.179 oder später. Siehe [Monitoring](/docs/de/monitoring-usage) |

338| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | Timeout in Millisekunden zum Leeren ausstehender OpenTelemetry-Spans (Standard: 5000). Siehe [Monitoring](/docs/de/monitoring-usage) |338| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | Timeout in Millisekunden zum Leeren ausstehender OpenTelemetry-Spans (Standard: 5000). Siehe [Monitoring](/docs/de/monitoring-usage) |

339| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | Intervall zum Aktualisieren dynamischer OpenTelemetry-Header in Millisekunden (Standard: 1740000 / 29 Minuten). Siehe [Dynamische Header](/docs/de/monitoring-usage#dynamic-headers) |339| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | Intervall zum Aktualisieren dynamischer OpenTelemetry-Header in Millisekunden (Standard: 1740000 / 29 Minuten). Siehe [Dynamische Header](/docs/de/monitoring-usage#dynamic-headers) |

340| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | Timeout in Millisekunden für den OpenTelemetry-Exporter zum Beenden beim Herunterfahren (Standard: 2000). Erhöhen Sie, wenn Metriken beim Beenden gelöscht werden. Siehe [Monitoring](/docs/de/monitoring-usage) |340| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | Timeout in Millisekunden für den OpenTelemetry-Exporter zum Beenden beim Herunterfahren (Standard: 2000). Erhöhen Sie, wenn Metriken beim Beenden gelöscht werden. Siehe [Monitoring](/docs/de/monitoring-usage) |

341| `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` | Setzen Sie auf `1`, um Claude Code Ihren Package-Manager-Upgrade-Befehl im Hintergrund ausführen zu lassen, wenn eine neue Version verfügbar ist. Gilt für Homebrew- und WinGet-Installationen. Andere Package-Manager zeigen weiterhin den Upgrade-Befehl ohne Ausführung. Siehe [Auto-Updates](/docs/de/setup#auto-updates) |341| `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` | Setzen Sie auf `1`, um Claude Code Ihren Package-Manager's Upgrade-Befehl im Hintergrund ausführen zu lassen, wenn eine neue Version verfügbar ist. Gilt für Homebrew- und WinGet-Installationen. Andere Package-Manager zeigen weiterhin den Upgrade-Befehl ohne Ausführung. Siehe [Auto-Updates](/docs/de/setup#auto-updates) |

342| `CLAUDE_CODE_PERFORCE_MODE` | Setzen Sie auf `1`, um Perforce-bewussten Schreibschutz zu aktivieren. Wenn gesetzt, schlagen Edit, Write und NotebookEdit mit einem `p4 edit <file>`-Hinweis fehl, wenn die Zieldatei das Owner-Write-Bit nicht hat, das Perforce bei synced Dateien löscht, bis `p4 edit` sie öffnet. Dies verhindert, dass Claude Code Perforce-Change-Tracking umgeht |342| `CLAUDE_CODE_PERFORCE_MODE` | Setzen Sie auf `1`, um Perforce-bewussten Schreib-Schutz zu aktivieren. Wenn gesetzt, schlagen Edit, Write und NotebookEdit mit einem `p4 edit <file>`-Hinweis fehl, wenn die Zieldatei das Owner-Write-Bit nicht hat, das Perforce bei synced Dateien löscht, bis `p4 edit` sie öffnet. Dies verhindert, dass Claude Code Perforce-Change-Tracking umgeht |

343| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | Überschreiben Sie das Plugins-Root-Verzeichnis. Trotz des Namens setzt dies das übergeordnete Verzeichnis, nicht den Cache selbst: Marketplaces und der Plugin-Cache leben in Unterverzeichnissen unter diesem Pfad. Standardmäßig `~/.claude/plugins` |343| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | Überschreiben Sie das Plugins-Root-Verzeichnis. Trotz des Namens setzt dies das übergeordnete Verzeichnis, nicht den Cache selbst: Marketplaces und der Plugin-Cache leben in Unterverzeichnissen unter diesem Pfad. Standard ist `~/.claude/plugins` |

344| `CLAUDE_CODE_PLUGIN_DIRS` | Plugin-Verzeichnisse zum Laden für die Sitzung, jedes geladen wie eine [`--plugin-dir`](/docs/de/plugins#test-your-plugins-locally)-Flag es lädt. Trennen Sie mehrere Pfade mit `:` auf Unix oder `;` auf Windows. Geben Sie jeden Pfad als absoluten Pfad an oder starten Sie ihn mit `~`, da Claude Code relative Pfade überspringt. Erfordert Claude Code v2.1.280 oder später |344| `CLAUDE_CODE_PLUGIN_DIRS` | Plugin-Verzeichnisse zum Laden für die Sitzung, jedes geladen wie ein [`--plugin-dir`](/docs/de/plugins/cli-reference#flags-that-load-a-plugin-for-one-session)-Flag es lädt. Trennen Sie mehrere Pfade mit `:` auf Unix oder `;` auf Windows. Geben Sie jeden Pfad als absoluten Pfad an oder starten Sie ihn mit `~`, weil Claude Code relative Pfade überspringt. Erfordert Claude Code v2.1.280 oder später. Siehe [Plugin für eine Sitzung laden](/docs/de/plugins/create#load-a-directory-or-archive-for-one-session) |

345| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | Timeout in Millisekunden für Git-Operationen beim Installieren oder Aktualisieren von Plugins (Standard: 120000). Erhöhen Sie diesen Wert für große Repositories oder langsame Netzwerk-Verbindungen. Siehe [Git-Operationen timeout](/docs/de/plugin-marketplaces#git-operations-time-out) |345| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | Timeout in Millisekunden zum Klonen oder Aktualisieren eines Plugin-Marketplace (Standard: 120000). Erhöhen Sie diesen Wert für große Repositories oder langsame Netzwerk-Verbindungen. Siehe [Git-Klon timeout nach 120s](/docs/de/plugins/troubleshooting#git-clone-timed-out-after-120s) |

346| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | Setzen Sie auf `1`, um den Re-Clone-Versuch zu überspringen und den bestehenden Marketplace-Checkout zu behalten, wenn eine Marketplace-Aktualisierung das Remote nicht erreichen oder authentifizieren kann. Nützlich in Offline- oder Airgapped-Umgebungen, wo Re-Cloning auf die gleiche Weise fehlschlagen würde. Siehe [Marketplace-Updates schlagen in Offline-Umgebungen fehl](/docs/de/plugin-marketplaces#marketplace-updates-fail-in-offline-environments) |346| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | Setzen Sie auf `1`, um den Re-Klon-Versuch zu überspringen und den bestehenden Marketplace-Checkout zu behalten, wenn eine Marketplace-Aktualisierung das Remote nicht erreichen oder sich authentifizieren kann. Nützlich in Offline- oder Airgapped-Umgebungen, wo Re-Klonen auf die gleiche Weise fehlschlagen würde. Siehe [Marketplace-Updates schlagen in Offline-Umgebungen fehl](/docs/de/plugins/troubleshooting#marketplace-updates-keep-failing-offline) |

347| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | Setzen Sie auf `1`, um GitHub `owner/repo`-Shorthand-Quellen über HTTPS statt SSH zu klonen. Gilt für Plugin-Installation und -Update sowie `/plugin marketplace add` und `update`. Nützlich in CI-Runnern, Containern oder jeder Umgebung ohne konfigurierten SSH-Schlüssel für `github.com` |347| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | Setzen Sie auf `1`, um GitHub `owner/repo`-Shorthand-Quellen über HTTPS statt SSH zu klonen. Gilt für Plugin-Installation und Update, und für `/plugin marketplace add` und `update`. Nützlich in CI-Runnern, Containern oder jeder Umgebung ohne konfigurierten SSH-Schlüssel für `github.com` |

348| `CLAUDE_CODE_PLUGIN_SEED_DIR` | Pfad zu einem oder mehreren Read-Only-Plugin-Seed-Verzeichnissen, getrennt durch `:` auf Unix oder `;` auf Windows. Verwenden Sie dies, um ein vorpopuliertes Plugins-Verzeichnis in ein Container-Image zu bündeln. Claude Code registriert Marketplaces aus diesen Verzeichnissen beim Start und verwendet vorgelagerte Plugins ohne Re-Cloning. Siehe [Pre-Populate Plugins für Container](/docs/de/plugin-marketplaces#pre-populate-plugins-for-containers) |348| `CLAUDE_CODE_PLUGIN_SEED_DIR` | Pfad zu einem oder mehreren Read-Only-Plugin-Seed-Verzeichnissen, getrennt durch `:` auf Unix oder `;` auf Windows. Verwenden Sie dies, um ein vorpopuliertes Plugins-Verzeichnis in ein Container-Image zu bündeln. Claude Code registriert Marketplaces aus diesen Verzeichnissen beim Startup und verwendet vorgespeicherte Plugins ohne Re-Klonen. Siehe [Plugins für Container vorpopulieren](/docs/de/plugins/org#seed-containers-and-ci) |

349| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | Setzen Sie auf `1`, um Claude Code davon abzuhalten, `-ExecutionPolicy Bypass` zu übergeben, wenn PowerShell für Tool-Aufrufe, Hooks und Status-Zeilen-Befehle spawnt, und respektieren Sie stattdessen die effektive Ausführungs-Richtlinie der Maschine. Standardmäßig umgeht Claude Code die Ausführungs-Richtlinie im Prozess-Scope, daher funktionieren `.ps1`-Skripte und Modul-Importe auf Standard-Restricted-Windows-Installationen. Prozess-Scope-Bypass überschreibt niemals Group Policy `MachinePolicy` oder `UserPolicy`, unabhängig von dieser Einstellung |349| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | Setzen Sie auf `1`, um Claude Code daran zu hindern, `-ExecutionPolicy Bypass` beim Spawnen von PowerShell für Tool-Aufrufe, Hooks und Status-Zeilen-Befehle zu übergeben, und respektieren Sie stattdessen die effektive Ausführungs-Richtlinie der Maschine. Standardmäßig umgeht Claude Code die Ausführungs-Richtlinie auf Prozess-Ebene, daher funktionieren `.ps1`-Skripte und Modul-Importe auf Standard-Restricted-Windows-Installationen. Prozess-Ebene-Bypass überschreibt nie Group Policy `MachinePolicy` oder `UserPolicy`, unabhängig von dieser Einstellung |

350| `CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS` | Obergrenze in Millisekunden für Idle-Warten auf Background-Subagents und Workflows nach dem finalen Turn im [nicht-interaktiven Modus](/docs/de/headless#background-tasks-at-exit) mit der `-p`-Flag. Idle-Warten startet jedes Mal neu, wenn Claude einen Turn nimmt, um ein Background-Ergebnis zu behandeln. Standard: `600000` oder 10 Minuten. Wenn Idle-Warten die Obergrenze erreicht, stoppt Claude Code das Warten auf die verbleibenden Background-Aufgaben und beendet. Setzen Sie auf `0`, um unbegrenzt zu warten. Diese Obergrenze ist separat von der fünf-Sekunden-Gnadenfrist, die für einfache Background-Shells gilt. Erfordert Claude Code v2.1.182 oder später |350| `CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS` | Obergrenze in Millisekunden auf Idle-Warten auf Hintergrund-Subagents und Workflows nach dem finalen Turn im [nicht-interaktiven Modus](/docs/de/headless#background-tasks-at-exit) mit dem `-p`-Flag. Idle-Warten startet jedes Mal neu, wenn Claude einen Turn nimmt, um ein Hintergrund-Ergebnis zu handhaben. Standard: `600000` oder 10 Minuten. Wenn Idle-Warten die Obergrenze erreicht, stoppt Claude Code das Warten auf die verbleibenden Hintergrund-Aufgaben und beendet. Setzen Sie auf `0`, um unbegrenzt zu warten. Diese Obergrenze ist separat von der fünf-Sekunden-Gnadenfrist, die auf einfache Hintergrund-Shells gilt. Erfordert Claude Code v2.1.182 oder später |

351| `CLAUDE_CODE_PROCESS_WRAPPER` | Starten Sie die Prozesse, die Claude Code von seiner eigenen Binärdatei startet, wie der Background-Service, der [Agent-Ansicht](/docs/de/agent-view)-Sitzungen hostet, durch einen Corporate-Launcher, der als argv-Präfix wie `/opt/corp/launcher` gegeben ist. Setzen Sie es im `env`-Block von Benutzer- oder [verwalteten Einstellungen](/docs/de/managed-settings), nicht als Shell-Export, daher erbt der abgelöste Background-Service es; Projekt- und lokale Einstellungen können es nicht setzen. Äquivalent zur [`processWrapper`-Einstellung](/docs/de/settings-reference#processwrapper), die Claude Code v2.1.210 oder später erfordert; diese Variable hat Vorrang, wenn beide gesetzt sind. Die VS Code-Erweiterung konfiguriert ihren eigenen Launcher separat über ihre `claudeProcessWrapper`-Einstellung. Wird unter Windows ignoriert. Siehe [Claude Code hinter einem Corporate-Launcher ausführen](/docs/de/corporate-launcher) für das Wert-Format, was der Launcher abdeckt und den Vertrag, den der Launcher erfüllen muss. Erfordert Claude Code v2.1.208 oder später |351| `CLAUDE_CODE_PROCESS_WRAPPER` | Starten Sie die Prozesse, die Claude Code von seiner eigenen Binärdatei startet, wie der Hintergrund-Service, der [Agent-Ansicht](/docs/de/agent-view)-Sitzungen hostet, durch einen Unternehmens-Launcher, der als argv-Präfix wie `/opt/corp/launcher` gegeben ist. Setzen Sie es im `env`-Block von Benutzer- oder [verwalteten Einstellungen](/docs/de/managed-settings), nicht als Shell-Export, daher erbt der abgelöste Hintergrund-Service es; Projekt- und lokale Einstellungen können es nicht setzen. Entspricht der [`processWrapper`-Einstellung](/docs/de/settings-reference#processwrapper), die Claude Code v2.1.210 oder später erfordert; diese Variable hat Vorrang, wenn beide gesetzt sind. Die VS Code-Erweiterung konfiguriert ihren eigenen Launcher separat durch ihre `claudeProcessWrapper`-Einstellung. Wird unter Windows ignoriert. Siehe [Claude Code hinter einem Unternehmens-Launcher ausführen](/docs/de/corporate-launcher) für das Wert-Format, was der Launcher abdeckt, und den Vertrag, den der Launcher erfüllen muss. Erfordert Claude Code v2.1.208 oder später |

352| `CLAUDE_CODE_PROJECT_DIR_NAME` | Setzen Sie zusammen mit `CLAUDE_CONFIG_DIR`, um den `projects/`-Verzeichnis-Namen zu wählen, unter dem Claude Code die Transkripte und Auto-Memory dieser Sitzung speichert, anstelle eines aus dem Arbeitsverzeichnis-Pfad abgeleiteten. Zum Beispiel startet Claude Code mit `CLAUDE_CONFIG_DIR=/srv/tenant-a CLAUDE_CODE_PROJECT_DIR_NAME=work claude` speichert sie unter `/srv/tenant-a/projects/work/`. Claude Code ignor diese Variable, wenn `CLAUDE_CONFIG_DIR` nicht gesetzt ist, und liest sie nur aus der Umgebung, die Sie `claude` starten, nie aus einem [Einstellungs-Datei-`env`-Block](#in-settings-files). Siehe [Projekt-Verzeichnis selbst benennen](/docs/de/sessions#name-the-project-directory-yourself). Erfordert Claude Code v2.1.234 oder später |352| `CLAUDE_CODE_PROJECT_DIR_NAME` | Setzen Sie zusammen mit `CLAUDE_CONFIG_DIR`, um den `projects/`-Verzeichnis-Namen zu wählen, unter dem Claude Code die Transkripte und Auto-Memory dieser Sitzung speichert, anstelle eines aus dem Arbeitsverzeichnis-Pfad abgeleiteten. Zum Beispiel startet Claude Code mit `CLAUDE_CONFIG_DIR=/srv/tenant-a CLAUDE_CODE_PROJECT_DIR_NAME=work claude` speichert sie unter `/srv/tenant-a/projects/work/`. Claude Code ignoriert diese Variable, wenn `CLAUDE_CONFIG_DIR` nicht gesetzt ist, und liest sie nur aus der Umgebung, die Sie `claude` von starten, nie aus einem [Einstellungsdatei-`env`-Block](#in-settings-files). Siehe [Projekt-Verzeichnis selbst benennen](/docs/de/sessions#name-the-project-directory-yourself). Erfordert Claude Code v2.1.234 oder später |

353| `CLAUDE_CODE_PROMPT_CACHE_TTL` | Setzen Sie `5m` oder `1h`, die einzigen Werte, die Claude Code akzeptiert, um die [Prompt-Cache-TTL](/docs/de/prompt-caching#cache-lifetime) für die Hauptkonversation zu wählen: Ihre interaktiven, `-p` und SDK-Turns, plus die Helfer, die inline mit ihnen laufen. Hat Vorrang vor der `promptCacheTtl`-Einstellung und über `ENABLE_PROMPT_CACHING_1H`, und `FORCE_PROMPT_CACHING_5M` überschreibt es. Die API berechnet 1-Stunden-Cache-Schreibvorgänge mit einer höheren Rate. Erfordert Claude Code v2.1.242 oder später |353| `CLAUDE_CODE_PROMPT_CACHE_TTL` | Setzen Sie `5m` oder `1h`, die einzigen Werte, die Claude Code akzeptiert, um die [Prompt-Cache-TTL](/docs/de/prompt-caching#cache-lifetime) für die Hauptkonversation zu wählen: Ihre interaktiven, `-p` und SDK-Turns, plus die Helfer, die inline mit ihnen laufen. Hat Vorrang vor der `promptCacheTtl`-Einstellung und über `ENABLE_PROMPT_CACHING_1H`, und `FORCE_PROMPT_CACHING_5M` überschreibt es. Die API berechnet 1-Stunden-Cache-Schreibvorgänge mit einer höheren Rate. Erfordert Claude Code v2.1.242 oder später |

354| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | Setzen Sie auf `1`, um W3C-Trace-Kontext zu propagieren, wenn `ANTHROPIC_BASE_URL` auf einen benutzerdefinierten Proxy verweist. Propagation deckt den `traceparent`-Header auf Modell- und HTTP-MCP-Anfragen und die `TRACEPARENT`-Umgebungsvariable für Bash-, PowerShell- und Hook-Subprozesse ab. Standardmäßig ist Propagation nur aktiviert, wenn direkt mit der Anthropic API verbunden. Hinzugefügt in v2.1.152. Siehe [Traces (Beta)](/docs/de/monitoring-usage#traces-beta) |354| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | Setzen Sie auf `1`, um W3C-Trace-Kontext zu propagieren, wenn `ANTHROPIC_BASE_URL` auf einen benutzerdefinierten Proxy zeigt. Propagation deckt den `traceparent`-Header auf Modell- und HTTP-MCP-Anfragen und die `TRACEPARENT`-Umgebungsvariable für Bash-, PowerShell- und Hook-Subprozesse ab. Standardmäßig ist Propagation nur aktiviert, wenn direkt mit der Anthropic API verbunden. Hinzugefügt in v2.1.152. Siehe [Traces (Beta)](/docs/de/monitoring-usage#traces-beta) |

355| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | Wird von Host-Plattformen gesetzt, die Claude Code einbetten und Model-Provider-Routing in ihrem Namen verwalten. Wenn gesetzt, ignoriert Claude Code Provider-Auswahl-, Endpunkt- und Authentifizierungs-Variablen wie `CLAUDE_CODE_USE_BEDROCK`, `ANTHROPIC_BASE_URL` und `ANTHROPIC_API_KEY` in Einstellungsdateien, daher können Benutzer-Einstellungen das Routing des Hosts nicht überschreiben. Claude Code ignoriert auch Modell-Auswahl-Schlüssel wie `model`, `fallbackModel` und `modelOverrides` in [verwalteten Einstellungen](/docs/de/managed-settings), welche verwaltete Quelle sie auch liefert, daher hat die Modell-Konfiguration des Hosts Vorrang vor einem veralteten verwalteten Modell-Pin. Claude Code ignoriert auch Modell-Auswahl-Variablen wie `ANTHROPIC_MODEL` und die `ANTHROPIC_DEFAULT_*_MODEL`-Familie in einem verwalteten `env`-Block; eine [`availableModels`](/docs/de/model-config#restrict-model-selection)-Allowlist in verwalteten Einstellungen gilt immer noch, es sei denn, der Host liefert seine eigene. Claude Code überspringt auch das automatische Telemetrie-Opt-Out, das es andernfalls bei Drittanbieter-Providern wie Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform und Microsoft Foundry anwendet, daher folgt Telemetrie dem Standard-`DISABLE_TELEMETRY`-Opt-Out. Siehe [Standard-Verhaltensweisen nach API-Provider](/docs/de/data-usage#default-behaviors-by-api-provider) |355| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | Wird von Host-Plattformen gesetzt, die Claude Code einbetten und Model-Provider-Routing in ihrem Namen verwalten. Wenn gesetzt, ignoriert Claude Code Provider-Auswahl-, Endpunkt- und Authentifizierungs-Variablen wie `CLAUDE_CODE_USE_BEDROCK`, `ANTHROPIC_BASE_URL` und `ANTHROPIC_API_KEY` in Einstellungsdateien, daher können Benutzereinstellungen das Host-Routing nicht überschreiben. Claude Code ignoriert auch Modell-Auswahl-Schlüssel wie `model`, `fallbackModel` und `modelOverrides` in [verwalteten Einstellungen](/docs/de/managed-settings), welche verwaltete Quelle sie liefert, daher hat die Host-Modell-Konfiguration Vorrang vor einer veralteten verwalteten Modell-Anheftung. Claude Code ignoriert auch Modell-Auswahl-Variablen wie `ANTHROPIC_MODEL` und die `ANTHROPIC_DEFAULT_*_MODEL`-Familie in einem verwalteten `env`-Block; eine [`availableModels`](/docs/de/model-config#restrict-model-selection)-Allowlist in verwalteten Einstellungen gilt immer noch, es sei denn, der Host liefert seine eigene. Claude Code überspringt auch die automatische Telemetrie-Opt-Out, die es andernfalls auf Drittanbieter-Providern wie Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform und Microsoft Foundry anwendet, daher folgt Telemetrie dem Standard-`DISABLE_TELEMETRY`-Opt-Out. Siehe [Standard-Verhaltensweisen nach API-Provider](/docs/de/data-usage#default-behaviors-by-api-provider) |

356| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | Setzen Sie auf `1`, um dem Proxy zu erlauben, DNS-Auflösung durchzuführen, anstelle des Aufrufers. Opt-In für Umgebungen, in denen der Proxy Hostname-Auflösung handhaben sollte |356| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | Setzen Sie auf `1`, um dem Proxy zu erlauben, DNS-Auflösung durchzuführen, anstatt des Aufrufers. Opt-In für Umgebungen, in denen der Proxy Hostname-Auflösung handhaben sollte |

357| `CLAUDE_CODE_REMOTE` | Wird automatisch auf `true` gesetzt, wenn Claude Code als [Cloud-Sitzung](/docs/de/claude-code-on-the-web) läuft. Lesen Sie dies aus einem Hook oder Setup-Skript, um zu erkennen, ob Sie in einer Cloud-Sitzung sind |357| `CLAUDE_CODE_REMOTE` | Wird automatisch auf `true` gesetzt, wenn Claude Code als [Cloud-Sitzung](/docs/de/claude-code-on-the-web) läuft. Lesen Sie dies aus einem Hook oder Setup-Skript, um zu erkennen, ob Sie in einer Cloud-Sitzung sind |

358| `CLAUDE_CODE_REMOTE_SESSION_ID` | Wird automatisch in [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) auf die ID der aktuellen Sitzung gesetzt. Lesen Sie dies, um einen Link zurück zum Sitzungs-Transkript zu konstruieren. Siehe [Ausgabe zurück zur Sitzung verlinken](/docs/de/cloud-environments#link-output-back-to-the-session) |358| `CLAUDE_CODE_REMOTE_SESSION_ID` | Wird automatisch in [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) auf die aktuelle Sitzungs-ID gesetzt. Lesen Sie dies, um einen Link zurück zum Sitzungs-Transkript zu konstruieren. Siehe [Ausgabe zurück zur Sitzung verlinken](/docs/de/cloud-environments#link-output-back-to-the-session) |

359| `CLAUDE_CODE_RESTRICTED` | Setzen Sie auf `1`, um die Sitzung im eingeschränkten Modus zu starten, das gleiche wie das Übergeben von [`--restricted`](/docs/de/cli-reference#cli-flags). Claude Code ignoriert diese Variable in einem Einstellungs-Datei-`env`-Block. Erfordert Claude Code v2.1.248 oder später |359| `CLAUDE_CODE_RESTRICTED` | Setzen Sie auf `1`, um die Sitzung im eingeschränkten Modus zu starten, das gleiche wie das Übergeben von [`--restricted`](/docs/de/cli-reference#cli-flags). Claude Code ignoriert diese Variable in einem Einstellungsdatei-`env`-Block. Erfordert Claude Code v2.1.248 oder später |

360| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` | Setzen Sie auf `1`, um automatisch fortzufahren, wenn die vorherige Sitzung mid-turn endete. Wird im SDK-Modus verwendet, daher setzt das Modell fort, ohne dass das SDK den Prompt erneut senden muss. Um dies auszuschalten, heben Sie die Einstellung der Variablen auf oder setzen Sie sie auf `0`. Vor v2.1.221 ignorierte Claude Code `0` und andere falsy-Werte, daher löste das Setzen von `0` die Wiederaufnahme im nicht-interaktiven Modus aus und das Aufheben der Einstellung der Variablen war die einzige Möglichkeit, es auszuschalten |360| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` | Setzen Sie auf `1`, um automatisch fortzufahren, wenn die vorherige Sitzung mid-turn endete. Wird im SDK-Modus verwendet, daher setzt das Modell fort, ohne dass das SDK den Prompt erneut senden muss. Um dies auszuschalten, heben Sie die Variable auf oder setzen Sie sie auf `0`. Vor v2.1.221 ignorierte Claude Code `0` und andere falsy-Werte, daher löste das Setzen von `0` immer noch die Wiederaufnahme im nicht-interaktiven Modus aus und das Aufheben der Variable war die einzige Möglichkeit, es auszuschalten |

361| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | Maximales Alter in Millisekunden der letzten Transkript-Nachricht für eine Sitzung, die mid-turn endete, um automatisch bei Wiederaufnahme fortzufahren. Wenn die letzte Nachricht älter als diese Grenze ist, überspringt Claude Code sowohl die automatische `CLAUDE_CODE_RESUME_INTERRUPTED_TURN`-Wiederaufnahme als auch die eingespritzte `CLAUDE_CODE_RESUME_PROMPT`-Fortsetzungs-Nachricht, und die Sitzung startet untätig, daher fahren Sie explizit fort. Nicht gesetzt oder `0` bedeutet keine Grenze, außer dass ein Turn, dessen letzte Anfrage mit einem API-Fehler fehlschlägt, nur fortgesetzt wird, während dieser Fehler weniger als sechs Stunden alt ist. Ein positiver Wert begrenzt jeden Turn, einschließlich dieser; ein negativer oder nicht-numerischer Wert wendet eine einstündige Grenze an. Spawn-Skripte für lang laufende Agents können dies setzen, daher startet eine Wiederaufnahme gegen ein altes Transkript nicht einen veralteten Prompt erneut. Claude Code setzt selbst eine einstündige Grenze, wenn es eine abgestürzte [Agent-Ansicht](/docs/de/agent-view)-Sitzung neu startet, die ihre Konversation von einer interaktiven Sitzung geerbt hat. Erfordert Claude Code v2.1.211 oder später |361| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | Maximales Alter in Millisekunden der letzten Transkript-Nachricht für eine Sitzung, die mid-turn endete, um automatisch bei Wiederaufnahme fortzufahren. Wenn die letzte Nachricht älter als diese Grenze ist, überspringt Claude Code die `CLAUDE_CODE_RESUME_INTERRUPTED_TURN`-automatische Wiederaufnahme und ihre `CLAUDE_CODE_RESUME_PROMPT`-Fortsetzungs-Nachricht, und die Sitzung startet untätig, daher fahren Sie explizit fort. Nicht gesetzt oder `0` bedeutet keine Grenze, außer dass ein Turn, dessen letzte Anfrage mit einem API-Fehler fehlschlägt, nur fortgesetzt wird, während dieser Fehler weniger als sechs Stunden alt ist. Ein positiver Wert begrenzt jeden Turn, einschließlich dieser; ein negativer oder nicht-numerischer Wert wendet eine einstündige Grenze an. Spawn-Skripte für lang laufende Agents können dies setzen, daher startet eine Wiederaufnahme gegen ein altes Transkript nicht einen veralteten Prompt erneut. Claude Code setzt selbst eine einstündige Grenze, wenn es eine abgestürzte [Agent-Ansicht](/docs/de/agent-view)-Sitzung neu startet, die ihre Konversation von einer interaktiven Sitzung geerbt hat. Erfordert Claude Code v2.1.211 oder später |

362| `CLAUDE_CODE_RESUME_PROMPT` | Überschreiben Sie die Fortsetzungs-Nachricht, die eingespritzt wird, wenn eine Sitzung fortgesetzt wird, die mid-turn endete. Standardmäßig `Continue from where you left off.`. Spawn-Skripte für lang laufende Agents können dies setzen, um eine direktere Boot-Nachricht zu haben. Ein leerer String verwendet den Standard |362| `CLAUDE_CODE_RESUME_PROMPT` | Überschreiben Sie die Fortsetzungs-Nachricht, die Claude Code an Claude sendet, wenn `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` einen unterbrochenen Turn fortsetzt, anstatt seinen Prompt erneut zu senden, oder wenn Sie einen [aufgeschobenen Tool-Aufruf](/docs/de/hooks#defer-a-tool-call-for-later) mit `-p` fortsetzen. Standard ist `Continue from where you left off.`. Ein leerer String verwendet den Standard |

363| `CLAUDE_CODE_RETRY_WATCHDOG` | Setzen Sie auf `1` für unbeaufsichtigte Sitzungen wie Eval-Harnesses, CI-Jobs oder Remote-Worker. Wiederholungen `429` und `529` Kapazitäts-Fehler unbegrenzt, anstatt nach `CLAUDE_CODE_MAX_RETRIES`-Versuchen zu fehlschlagen. Claude Code schlägt sofort fehl, wenn eine Standard-Speed-Anfrage einen `429` erhält, der ein Ausgabenlimit oder erschöpfte Nutzungs-Credits meldet, auch einen von einem [Gateway-Ausgabenlimit](/docs/de/errors#spend-limit-reached), das nach einem Zeitplan zurückgesetzt wird. Vor v2.1.239 wiederholte der Watchdog diese unbegrenzt. Für Fast-Mode-Anfragen siehe [Rate-Limits handhaben](/docs/de/fast-mode#handle-rate-limits). Der Watchdog sichert sich bis zu 5 Minuten zwischen Versuchen ab, oder bis das Limit zurückgesetzt wird, wenn die Antwort eine Rate-Limit-Reset-Zeit trägt, daher wartet eine Sitzung, die ein Nutzungslimit trifft, das verbleibende Fenster ab. Auf v2.1.199 oder später erhöht es auch die Standard-Wiederholungsanzahl für andere transiente Fehler, wie Server-Fehler, Timeouts und gelöschte Verbindungen, auf 300, ungefähr drei Stunden Backoff, und entfernt die Obergrenze von 15 auf `CLAUDE_CODE_MAX_RETRIES`, wenn Sie diese Variable explizit setzen. Erfordert Claude Code v2.1.186 oder später |363| `CLAUDE_CODE_RETRY_WATCHDOG` | Setzen Sie auf `1` für unbeaufsichtigte Sitzungen wie Eval-Harnesses, CI-Jobs oder Remote-Worker. Wiederholt `429`- und `529`-Kapazitäts-Fehler unbegrenzt, anstatt nach `CLAUDE_CODE_MAX_RETRIES`-Versuchen zu fehlschlagen. Claude Code schlägt sofort fehl, wenn eine Standard-Speed-Anfrage einen `429` erhält, der ein Ausgabenlimit oder erschöpfte Nutzungs-Credits meldet, auch einen von einem [Gateway-Ausgabenlimit](/docs/de/errors#spend-limit-reached), das nach einem Zeitplan zurückgesetzt wird. Vor v2.1.239 wiederholte der Watchdog diese unbegrenzt. Für Fast-Mode-Anfragen siehe [Rate-Limits handhaben](/docs/de/fast-mode#handle-rate-limits). Der Watchdog sichert sich bis zu 5 Minuten zwischen Versuchen ab, oder bis das Limit zurückgesetzt wird, wenn die Antwort eine Rate-Limit-Reset-Zeit trägt, daher wartet eine Sitzung, die ein Nutzungslimit trifft, das verbleibende Fenster ab. Auf v2.1.199 oder später erhöht es auch die Standard-Wiederholungs-Anzahl für andere transiente Fehler, wie Server-Fehler, Timeouts und gelöschte Verbindungen, auf 300, ungefähr drei Stunden Backoff, und entfernt die Obergrenze von 15 auf `CLAUDE_CODE_MAX_RETRIES`, wenn Sie diese Variable explizit setzen. Erfordert Claude Code v2.1.186 oder später |

364| `CLAUDE_CODE_SAFE_MODE` | Setzen Sie auf `1`, um im sicheren Modus zu starten: CLAUDE.md, Skills, Plugins, Hooks, MCP-Server, benutzerdefinierte Befehle und Agents, Output-Stile, Workflows, benutzerdefinierte Themes, benutzerdefinierte Keybindings, Status-Zeile und Datei-Vorschlag-Befehle, LSP-Server und Auto-Memory laden nicht zur Fehlerbehebung einer kaputten Konfiguration. Verwaltete Einstellungs-Richtlinie gilt immer noch, einschließlich Richtlinien-konfigurierter Hooks, Status-Zeile und Datei-Vorschlag-Befehle; verwaltete Plugins, verwaltete Skills, verwaltete CLAUDE.md und Richtlinien-konfigurierte MCP-Server laden nicht. Äquivalent zum Übergeben von [`--safe-mode`](/docs/de/cli-reference#cli-flags). Direkt gespawnte Child-Prozesse erben die Variable |364| `CLAUDE_CODE_SAFE_MODE` | Setzen Sie auf `1`, um im sicheren Modus zu starten: CLAUDE.md, Skills, Plugins, Hooks, MCP-Server, benutzerdefinierte Befehle und Agents, Ausgabe-Stile, Workflows, benutzerdefinierte Themes, benutzerdefinierte Tastenbindungen, Status-Zeilen- und Datei-Vorschlag-Befehle, LSP-Server und Auto-Memory laden nicht, zur Fehlerbehebung einer kaputten Konfiguration. Verwaltete Einstellungs-Richtlinie gilt immer noch, einschließlich Richtlinie-konfigurierter Hooks, Status-Zeile und Datei-Vorschlag-Befehle; verwaltete Plugins, verwaltete Skills, verwaltete CLAUDE.md und Richtlinie-konfigurierte MCP-Server laden nicht. Entspricht dem Übergeben von [`--safe-mode`](/docs/de/cli-reference#cli-flags). Direkt gespawnte Kind-Prozesse erben die Variable |

365| `CLAUDE_CODE_SCRIPT_CAPS` | JSON-Objekt, das begrenzt, wie oft spezifische Skripte pro Sitzung aufgerufen werden können, wenn `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` gesetzt ist. Schlüssel sind Substrings, die gegen den Befehlstext abgeglichen werden; Werte sind Ganzzahl-Aufruflimits. Zum Beispiel erlaubt `{"deploy.sh": 2}` `deploy.sh`, höchstens zweimal aufgerufen zu werden. Matching ist Substring-basiert, daher zählen Shell-Expansion-Tricks wie `./scripts/deploy.sh $(evil)` immer noch gegen die Obergrenze. Runtime-Fan-Out über `xargs` oder `find -exec` wird nicht erkannt; dies ist eine Defense-in-Depth-Kontrolle |365| `CLAUDE_CODE_SCRIPT_CAPS` | JSON-Objekt, das begrenzt, wie oft spezifische Skripte pro Sitzung aufgerufen werden können, wenn `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` gesetzt ist. Schlüssel sind Substrings, die gegen den Befehls-Text abgeglichen werden; Werte sind Ganzzahl-Aufrufs-Limits. Zum Beispiel erlaubt `{"deploy.sh": 2}` `deploy.sh`, höchstens zweimal aufgerufen zu werden. Matching ist Substring-basiert, daher zählen Shell-Expansion-Tricks wie `./scripts/deploy.sh $(evil)` immer noch gegen die Obergrenze. Runtime-Fan-Out über `xargs` oder `find -exec` wird nicht erkannt; dies ist eine Defense-in-Depth-Kontrolle |

366| `CLAUDE_CODE_SCROLL_SPEED` | Setzen Sie den Mausrad-Scroll-Multiplikator im [Vollbild-Rendering](/docs/de/fullscreen#mouse-wheel-scrolling). Akzeptiert jeden positiven Wert bis zu 20, einschließlich Bruch-Werte unter 1 wie `0.5`, um beschleunigtes Trackpad- und Rad-Scrolling in Terminals zu verlangsamen, die Rad-Events bereits verstärken. Setzen Sie auf `3`, um `vim` zu entsprechen, wenn Ihr Terminal ein Rad-Event pro Kerbe ohne Verstärkung sendet. Wird im JetBrains IDE-Terminal ignoriert, wo Claude Code sein eigenes Scroll-Handling verwendet |366| `CLAUDE_CODE_SCROLL_SPEED` | Setzen Sie den Maus-Rad-Scroll-Multiplikator im [Vollbild-Rendering](/docs/de/fullscreen#mouse-wheel-scrolling). Akzeptiert jeden positiven Wert bis zu 20, einschließlich Bruch-Werte unter 1 wie `0.5`, um beschleunigtes Trackpad- und Rad-Scrollen in Terminals zu verlangsamen, die Rad-Events bereits verstärken. Setzen Sie auf `3`, um `vim` zu entsprechen, wenn Ihr Terminal ein Rad-Event pro Kerbe ohne Verstärkung sendet. Wird im JetBrains IDE-Terminal ignoriert, wo Claude Code sein eigenes Scroll-Handling verwendet |

367| `CLAUDE_CODE_SEND_FEEDBACK` | Setzen Sie auf `0`, um [Claude-entworfenes Feedback](/docs/de/tools-reference#sendfeedback-tool-behavior) für eine Sitzung auszuschalten. Setzen Sie auf `1`, um es einzuschalten, wo Ihr Konto bereits Zugriff hat; die Variable kann Zugriff nicht selbst gewähren, und die anderen Schalter, die Feedback ausschalten, wie `DISABLE_FEEDBACK_COMMAND` und der [`feedbackDrafts`](/docs/de/settings-reference#feedbackdrafts)-Einstellung's `off`-Wert, gelten immer noch |367| `CLAUDE_CODE_SEND_FEEDBACK` | Setzen Sie auf `0`, um [Claude-entworfenes Feedback](/docs/de/tools-reference#sendfeedback-tool-behavior) für eine Sitzung auszuschalten. Setzen Sie auf `1`, um es einzuschalten, wo Ihr Konto bereits Zugriff hat; die Variable kann Zugriff selbst nicht gewähren, und die anderen Schalter, die Feedback ausschalten, wie `DISABLE_FEEDBACK_COMMAND` und der [`feedbackDrafts`](/docs/de/settings-reference#feedbackdrafts)-Einstellung's `off`-Wert, gelten immer noch |

368| `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` | Überschreiben Sie das Zeit-Budget in Millisekunden für [SessionEnd](/docs/de/hooks#sessionend)-Hooks. Der Wert ist auch das Timeout für jeden Hook, der kein eigenes `timeout` setzt. Gilt für Sitzungs-Exit, `/clear` und Sitzungs-Wechsel über interaktives `/resume`. Standardmäßig ist das Budget 1,5 Sekunden, automatisch erhöht auf das höchste Pro-Hook-`timeout`, das in Einstellungsdateien konfiguriert ist, bis zu 60 Sekunden. Timeouts auf Plugin-bereitgestellten Hooks erhöhen das Budget nicht |368| `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` | Überschreiben Sie das Zeit-Budget in Millisekunden für [SessionEnd](/docs/de/hooks#sessionend)-Hooks. Der Wert ist auch das Timeout für jeden Hook, der sein eigenes `timeout` nicht setzt. Gilt für Sitzungs-Beendigung, `/clear` und Sitzungs-Wechsel über interaktives `/resume`. Standardmäßig ist das Budget 1,5 Sekunden, automatisch erhöht auf das höchste Pro-Hook-`timeout`, das in Einstellungsdateien konfiguriert ist, bis zu 60 Sekunden. Timeouts auf Plugin-bereitgestellten Hooks erhöhen das Budget nicht |

369| `CLAUDE_CODE_SESSION_ID` | Wird automatisch auf die aktuelle Sitzungs-ID in Bash- und PowerShell-Tool-Subprozessen, [Hook-Befehl](/docs/de/hooks)-Subprozessen und Stdio-[MCP-Server](/docs/de/mcp)-Subprozessen gesetzt. Für Bash, PowerShell und Hooks entspricht dies dem `session_id`-Feld in der Hook-JSON-Eingabe und wird auf `/clear` aktualisiert. Ein MCP-Server-Subprocess behält die ID, mit der er spawnt wurde. Bei `--resume <session-id>` erhält er die fortgesetzte ID, die Hooks und Bash entspricht. Bei `--continue` oder `--resume` ohne explizite ID kann er stattdessen die anfängliche Startup-ID erhalten. Verwenden Sie, um Skripte und externe Tools mit der Claude Code-Sitzung zu korrelieren, die sie gestartet hat |369| `CLAUDE_CODE_SESSION_ID` | Wird automatisch auf die aktuelle Sitzungs-ID in Bash- und PowerShell-Tool-Subprozessen, [Hook-Befehls](/docs/de/hooks)-Subprozessen und stdio [MCP-Server](/docs/de/mcp)-Subprozessen gesetzt. Für Bash, PowerShell und Hooks entspricht dies dem `session_id`-Feld in der Hook-JSON-Eingabe und wird bei `/clear` aktualisiert. Ein MCP-Server-Subprocess behält die ID, mit der er spawnt wurde. Bei `--resume <session-id>` erhält er die fortgesetzte ID, was Hooks und Bash entspricht. Bei `--continue` oder `--resume` ohne explizite ID kann er stattdessen die anfängliche Startup-ID erhalten. Verwenden Sie, um Skripte und externe Tools mit der Claude Code-Sitzung zu korrelieren, die sie gestartet hat |

370| `CLAUDE_CODE_SHELL` | Setzen Sie die Shell, die Claude Code zum Ausführen von Bash-Tool-Befehlen verwendet. Akzeptiert einen Pfad zu einer `bash`- oder `zsh`-Binärdatei, zum Beispiel `/opt/homebrew/bin/bash`. Andere Shells wie `fish` werden nicht unterstützt. Wenn der Wert kein funktionierender `bash`- oder `zsh`-Pfad ist, ignoriert Claude Code ihn und fällt auf Auto-Erkennung zurück. Auto-Erkennung verwendet Ihren `$SHELL`, wenn er auf `bash` oder `zsh` verweist, andernfalls wählt es das erste funktionierende `zsh` dann `bash`, das auf Ihrem `PATH` und Standard-Installationsorten gefunden wird |370| `CLAUDE_CODE_SHELL` | Setzen Sie die Shell, die Claude Code zum Ausführen von Bash-Tool-Befehlen verwendet. Akzeptiert einen Pfad zu einer `bash`- oder `zsh`-Binärdatei, zum Beispiel `/opt/homebrew/bin/bash`. Andere Shells wie `fish` werden nicht unterstützt. Wenn der Wert kein funktionierender `bash`- oder `zsh`-Pfad ist, ignoriert Claude Code ihn und fällt auf Auto-Erkennung zurück. Auto-Erkennung verwendet Ihre `$SHELL`, wenn sie auf `bash` oder `zsh` zeigt, andernfalls wählt sie die erste funktionierende `zsh` dann `bash`, die auf Ihrem `PATH` und Standard-Installationsorten gefunden wird |

371| `CLAUDE_CODE_SHELL_PREFIX` | Befehlspräfix, der Shell-Befehle umhüllt, die Claude Code spawnt: Bash-Tool-Aufrufe, [Hook](/docs/de/hooks)-Befehle, [Status-Zeile](/docs/de/statusline)-Befehle und Stdio-[MCP-Server](/docs/de/mcp)-Startup-Befehle. PowerShell-Hooks und Exec-Form-Hooks laufen ohne das Präfix. Nützlich für Protokollierung oder Auditing. Das Setzen eines bloßen ausführbaren Pfads wie `/path/to/logger.sh` führt jeden Befehl als `/path/to/logger.sh '<command>'` aus. Der Wrapper erhält die Befehlszeile als ein einzelnes Shell-zitiertes Argument in `$1`, daher muss der Wrapper `$1` mit einer Shell erneut auswerten, zum Beispiel `exec bash -c "$1"`. Das Behandeln von `$1` als bloßer ausführbarer Pfad bricht Stdio-MCP-Server, die Argumente übergeben, wie `npx -y <package>`. Für Bash-Tool-Aufrufe enthält `$1` die vollständige Shell-Aufrufe, die Claude Code zusammensetzt, einschließlich Umgebungs-Setup, nicht nur den Befehl, den Claude ausgeführt hat |371| `CLAUDE_CODE_SHELL_PREFIX` | Befehls-Präfix, der Shell-Befehle umhüllt, die Claude Code spawnt: Bash-Tool-Aufrufe, [Hook](/docs/de/hooks)-Befehle, [Status-Zeilen](/docs/de/statusline)-Befehle und stdio [MCP-Server](/docs/de/mcp)-Startup-Befehle. PowerShell-Hooks und Exec-Form-Hooks laufen ohne das Präfix. Nützlich zum Protokollieren oder Auditing. Das Setzen eines bloßen ausführbaren Pfads wie `/path/to/logger.sh` führt jeden Befehl als `/path/to/logger.sh '<command>'` aus. Der Wrapper erhält die Befehlszeile als ein einzelnes Shell-zitiertes Argument in `$1`, daher muss der Wrapper `$1` mit einer Shell erneut auswerten, zum Beispiel `exec bash -c "$1"`. Das Behandeln von `$1` als bloßer ausführbarer Pfad bricht stdio MCP-Server, die Argumente wie `npx -y <package>` übergeben. Für Bash-Tool-Aufrufe enthält `$1` die vollständige Shell-Aufrufe, die Claude Code zusammensetzt, einschließlich Umgebungs-Setup, nicht nur den Befehl, den Claude ausgeführt hat |

372| `CLAUDE_CODE_SIMPLE` | Setzen Sie auf `1`, um mit einem minimalen System-Prompt und nur den Bash-, Datei-Lese- und Datei-Edit-Tools zu laufen. MCP-Tools von `--mcp-config` sind immer noch verfügbar. Deaktiviert Auto-Discovery von Hooks, Skills, benutzerdefinierten Befehlen, Subagents, Plugins, MCP-Servern, Auto-Memory und CLAUDE.md. Skills in einem Verzeichnis, das Sie mit `--add-dir` übergeben, laden immer noch. OAuth-Tokens und Keychain-Credentials werden nicht gelesen, daher muss Anthropic-Authentifizierung von `ANTHROPIC_API_KEY` oder einem `apiKeyHelper` in `--settings` kommen. Äquivalent zum Übergeben von [`--bare`](/docs/de/headless#start-faster-with-bare-mode) |372| `CLAUDE_CODE_SIMPLE` | Setzen Sie auf `1`, um mit einem minimalen System-Prompt und nur den Bash-, Datei-Lese- und Datei-Bearbeitungs-Tools zu laufen. MCP-Tools von `--mcp-config` sind immer noch verfügbar. Deaktiviert Auto-Erkennung von Hooks, Skills, benutzerdefinierten Befehlen, Subagents, installierten Plugins, MCP-Servern, Auto-Memory und CLAUDE.md. Skills in einem Verzeichnis, das Sie mit `--add-dir` übergeben, laden immer noch. OAuth-Tokens und Keychain-Anmeldedaten werden nicht gelesen, daher muss Anthropic-Authentifizierung von `ANTHROPIC_API_KEY` oder einem `apiKeyHelper` in `--settings` kommen. Entspricht dem Übergeben von [`--bare`](/docs/de/headless#start-faster-with-bare-mode) |

373| `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT` | Setzen Sie auf `1`, um einen kürzeren System-Prompt und abgekürzte Tool-Beschreibungen auf jedem Modell zu verwenden. Setzen Sie auf `0`, `false`, `no` oder `off`, um zu deaktivieren, auch wenn das Experiment oder die Server-Konfiguration es andernfalls aktivieren würde. Der vollständige Tool-Satz, Hooks, MCP-Server und CLAUDE.md-Discovery bleiben aktiviert |373| `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT` | Setzen Sie auf `1`, um einen kürzeren System-Prompt und abgekürzte Tool-Beschreibungen auf jedem Modell zu verwenden. Setzen Sie auf `0`, `false`, `no` oder `off`, um zu deaktivieren, auch wenn das Experiment oder die Server-Konfiguration es andernfalls aktivieren würde. Der vollständige Tool-Satz, Hooks, MCP-Server und CLAUDE.md-Erkennung bleiben aktiviert |

374| `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` | Überspringen Sie die Client-seitige Authentifizierung für [Claude Platform on AWS](/docs/de/claude-platform-on-aws), für Gateways, die Anfragen selbst signieren |374| `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` | Überspringen Sie die Client-seitige Authentifizierung für [Claude Platform on AWS](/docs/de/claude-platform-on-aws), für Gateways, die Anfragen selbst signieren |

375| `CLAUDE_CODE_SKIP_AWS_CRED_CACHE` | Setzen Sie auf `1`, um den In-Process-Cache von Credentials, die von der AWS-Standard-Credential-Provider-Kette aufgelöst werden, auszuschalten, daher löst Claude Code die Kette bei jeder API-Anfrage auf. Mit dem Cache aus fordert ein SSO-gestütztes Profil Credentials von IAM Identity Center bei jeder Anfrage an. Siehe [Credential-Caching und Auflösungs-Timeout](/docs/de/amazon-bedrock#credential-caching-and-resolution-timeout). Erfordert Claude Code v2.1.207 oder später |375| `CLAUDE_CODE_SKIP_AWS_CRED_CACHE` | Setzen Sie auf `1`, um den In-Process-Cache von Anmeldedaten, die von der AWS-Standard-Anmeldedaten-Provider-Kette aufgelöst werden, auszuschalten, daher löst Claude Code die Kette bei jeder API-Anfrage auf. Mit dem Cache aus fordert ein SSO-gestütztes Profil Anmeldedaten von IAM Identity Center bei jeder Anfrage an. Siehe [Anmeldedaten-Caching und Auflösungs-Timeout](/docs/de/amazon-bedrock#credential-caching-and-resolution-timeout). Erfordert Claude Code v2.1.207 oder später |

376| `CLAUDE_CODE_SKIP_BEDROCK_AUTH` | Überspringen Sie die AWS-Authentifizierung für Amazon Bedrock (zum Beispiel, wenn Sie ein LLM-Gateway verwenden) |376| `CLAUDE_CODE_SKIP_BEDROCK_AUTH` | Überspringen Sie AWS-Authentifizierung für Amazon Bedrock (zum Beispiel, wenn Sie ein LLM-Gateway verwenden) |

377| `CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS` | Setzen Sie auf `1`, um eine fehlgeschlagene [Fast-Mode](/docs/de/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways)-Verfügbarkeitsprüfung als verfügbar zu behandeln, für Netzwerke, die die direkte Anfrage der Überprüfung an `api.anthropic.com` blockieren. Claude Code respektiert immer noch eine "disabled by your organization"-Antwort |377| `CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS` | Setzen Sie auf `1`, um eine fehlgeschlagene [Fast-Mode](/docs/de/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways)-Verfügbarkeitsprüfung als verfügbar zu behandeln, für Netzwerke, die die Prüfungs-direkte Anfrage an `api.anthropic.com` blockieren. Claude Code ehrt immer noch eine "disabled by your organization"-Antwort |

378| `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK` | Setzen Sie auf `1`, um die Client-seitige [Fast-Mode](/docs/de/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways)-Verfügbarkeitsprüfung zu überspringen, für Proxies, die die Anfrage der Überprüfung abfangen, anstatt sie zu weigern. Die API lehnt Fast-Mode-Anfragen immer noch ab, wenn Ihre Organisation Fast Mode deaktiviert hat |378| `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK` | Setzen Sie auf `1`, um die Client-seitige [Fast-Mode](/docs/de/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways)-Verfügbarkeitsprüfung zu überspringen, für Proxies, die die Prüfungs-Anfrage abfangen, anstatt sie zu weigern. Die API lehnt immer noch Fast-Mode-Anfragen ab, wenn Ihre Organisation Fast Mode deaktiviert hat |

379| `CLAUDE_CODE_SKIP_FOUNDRY_AUTH` | Überspringen Sie die Azure-Authentifizierung für Microsoft Foundry, für einen Proxy oder ein Gateway, das seinen eigenen `Authorization`-Header injiziert. Claude Code sendet Anfragen ohne Azure-Credential und bewahrt den `Authorization`-Header, den Sie liefern, zum Beispiel durch `ANTHROPIC_CUSTOM_HEADERS`. Wird ignoriert, wenn `ANTHROPIC_FOUNDRY_API_KEY` oder `ANTHROPIC_FOUNDRY_AUTH_TOKEN` gesetzt ist. Vor v2.1.203 ließ diese Variable den Microsoft Foundry-Client unfähig, Anfragen zu senden, es sei denn, ein API-Schlüssel war auch gesetzt |379| `CLAUDE_CODE_SKIP_FOUNDRY_AUTH` | Überspringen Sie Azure-Authentifizierung für Microsoft Foundry, für einen Proxy oder ein Gateway, das seinen eigenen `Authorization`-Header injiziert. Claude Code sendet Anfragen ohne Azure-Anmeldedaten und bewahrt den `Authorization`-Header, den Sie liefern, zum Beispiel durch `ANTHROPIC_CUSTOM_HEADERS`. Wird ignoriert, wenn `ANTHROPIC_FOUNDRY_API_KEY` oder `ANTHROPIC_FOUNDRY_AUTH_TOKEN` gesetzt ist. Vor v2.1.203 ließ diese Variable den Microsoft Foundry-Client unfähig, Anfragen zu senden, es sei denn, ein API-Schlüssel war auch gesetzt |

380| `CLAUDE_CODE_SKIP_MANTLE_AUTH` | Überspringen Sie die AWS-Authentifizierung für Amazon Bedrock Mantle (zum Beispiel, wenn Sie ein LLM-Gateway verwenden) |380| `CLAUDE_CODE_SKIP_MANTLE_AUTH` | Überspringen Sie AWS-Authentifizierung für Amazon Bedrock Mantle (zum Beispiel, wenn Sie ein LLM-Gateway verwenden) |

381| `CLAUDE_CODE_SKIP_PROMPT_HISTORY` | Setzen Sie auf `1`, um das Schreiben von Prompt-Verlauf und Sitzungs-Transkripten auf die Festplatte zu überspringen. Sitzungen, die mit dieser Variablen gesetzt gestartet werden, erscheinen nicht in `--resume`, `--continue` oder Up-Arrow-Verlauf. Nützlich für ephemere Skript-Sitzungen |381| `CLAUDE_CODE_SKIP_PROMPT_HISTORY` | Setzen Sie auf `1`, um das Schreiben von Prompt-Verlauf und Sitzungs-Transkripten auf die Festplatte zu überspringen. Sitzungen, die mit dieser Variable gesetzt gestartet werden, erscheinen nicht in `--resume`, `--continue` oder Up-Arrow-Verlauf. Nützlich für ephemere Skript-Sitzungen |

382| `CLAUDE_CODE_SKIP_VERTEX_AUTH` | Überspringen Sie die Google-Authentifizierung für Google Cloud's Agent Platform (zum Beispiel, wenn Sie ein LLM-Gateway verwenden) |382| `CLAUDE_CODE_SKIP_VERTEX_AUTH` | Überspringen Sie Google-Authentifizierung für Google Cloud's Agent Platform (zum Beispiel, wenn Sie ein LLM-Gateway verwenden) |

383| `CLAUDE_CODE_STARTUP_FAILURE_RESULTS` | Setzen Sie auf `1`, um eine Sitzung, die mit `--output-format stream-json` gestartet wurde, eine [Result-Nachricht zu schreiben, die benennt, warum Claude Code sich weigerte zu starten](/docs/de/agent-sdk/typescript#startup_failure_reason) für Startup-Fehler, die andernfalls nur mit stderr enden. Erfordert Claude Code v2.1.274 oder später |383| `CLAUDE_CODE_STARTUP_FAILURE_RESULTS` | Setzen Sie auf `1`, um eine Sitzung, die mit `--output-format stream-json` gestartet wird, eine [Result-Nachricht zu schreiben, die benennt, warum Claude Code sich weigerte zu starten](/docs/de/agent-sdk/typescript#startup_failure_reason) für Startup-Fehler, die andernfalls nur mit stderr enden. Erfordert Claude Code v2.1.274 oder später |

384| `CLAUDE_CODE_STOP_HOOK_BLOCK_CAP` | Maximale Anzahl aufeinanderfolgender Male, die ein [Stop](/docs/de/hooks#stop)- oder [SubagentStop](/docs/de/hooks#subagentstop)-Hook den Turn vom Beenden blockieren kann, bevor Claude Code es überschreibt und den Turn trotzdem beendet (Standard: 8). Setzen Sie auf `0`, um die Obergrenze zu deaktivieren. Erhöhen Sie dies, wenn Ihr Hook legitim mehr Iterationen braucht, um zu lösen |384| `CLAUDE_CODE_STOP_HOOK_BLOCK_CAP` | Maximale Anzahl aufeinanderfolgender Male, die ein [Stop](/docs/de/hooks#stop)- oder [SubagentStop](/docs/de/hooks#subagentstop)-Hook den Turn-Ende blockieren kann, bevor Claude Code es überschreibt und den Turn trotzdem beendet (Standard: 8). Setzen Sie auf `0`, um die Obergrenze zu deaktivieren. Erhöhen Sie dies, wenn Ihr Hook legitim mehr Iterationen braucht, um sich zu lösen |

385| `CLAUDE_CODE_SUBAGENT_MODEL` | Das Standard-Modell für [Subagents](/docs/de/sub-agents#choose-a-model), [Agent-Team](/docs/de/agent-teams#specify-teammates-and-models)-Teammates und [Workflow](/docs/de/workflows)-Agents, die nicht auf andere Weise ein Modell zugewiesen bekommen. Akzeptiert einen Alias wie `haiku` oder einen vollständigen Modellnamen. Zwei Quellen haben Vorrang vor ihm: ein Modell, das Claude beim Spawnen des Agents übergibt, und ein `model`-Feld in der Agent-Definition, einschließlich `inherit`. Um das zu ändern, setzen Sie [`CLAUDE_CODE_SUBAGENT_MODEL_FORCE`](/docs/de/sub-agents#run-every-subagent-on-one-model). Siehe [Modell wählen](/docs/de/sub-agents#choose-a-model) für die vollständige Reihenfolge. Das Setzen auf `inherit` ist das gleiche wie das Nicht-Setzen. Vor v2.1.251 überschrieb diese Variable sowohl das Pro-Aufrufs-Modell als auch das `model`-Feld der Definition |385| `CLAUDE_CODE_SUBAGENT_MODEL` | Das Standard-Modell für [Subagents](/docs/de/sub-agents#choose-a-model), [Agent-Team](/docs/de/agent-teams#specify-teammates-and-models)-Teammates und [Workflow](/docs/de/workflows)-Agents, die nicht auf andere Weise ein Modell zugewiesen bekommen. Akzeptiert einen Alias wie `haiku` oder einen vollständigen Modell-Namen. Zwei Quellen haben Vorrang vor ihm: ein Modell, das Claude beim Spawnen des Agents übergibt, und ein `model`-Feld in der Agent-Definition, einschließlich `inherit`. Um das zu ändern, setzen Sie [`CLAUDE_CODE_SUBAGENT_MODEL_FORCE`](/docs/de/sub-agents#run-every-subagent-on-one-model). Siehe [Modell wählen](/docs/de/sub-agents#choose-a-model) für die vollständige Reihenfolge. Das Setzen auf `inherit` ist das gleiche wie das Nicht-Setzen. Vor v2.1.251 überschrieb diese Variable sowohl das Pro-Aufrufs-Modell als auch das `model`-Feld der Definition |

386| `CLAUDE_CODE_SUBAGENT_MODEL_FORCE` | Setzen Sie auf `1`, um ein Modell auf Subagents, Teammates und Workflow-Agents zu erzwingen. [Jeden Subagent auf einem Modell ausführen](/docs/de/sub-agents#run-every-subagent-on-one-model) sagt, welches Modell das ist. Erfordert Claude Code v2.1.257 oder später |386| `CLAUDE_CODE_SUBAGENT_MODEL_FORCE` | Setzen Sie auf `1`, um ein Modell auf Subagents, Teammates und Workflow-Agents zu erzwingen. [Jeden Subagent auf einem Modell ausführen](/docs/de/sub-agents#run-every-subagent-on-one-model) sagt, welches Modell das ist. Erfordert Claude Code v2.1.257 oder später |

387| `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL` | Setzen Sie `5m` oder `1h`, die einzigen Werte, die Claude Code akzeptiert, um die [Prompt-Cache-TTL](/docs/de/prompt-caching#cache-lifetime) für Anfragen außerhalb der Hauptkonversation zu wählen, wie [Subagents](/docs/de/sub-agents), Workflows und Hintergrundarbeit. Hat Vorrang vor der `subagentPromptCacheTtl`-Einstellung und über `ENABLE_PROMPT_CACHING_1H`, und `FORCE_PROMPT_CACHING_5M` überschreibt es. Die API berechnet 1-Stunden-Cache-Schreibvorgänge mit einer höheren Rate. Erfordert Claude Code v2.1.242 oder später |387| `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL` | Setzen Sie `5m` oder `1h`, die einzigen Werte, die Claude Code akzeptiert, um die [Prompt-Cache-TTL](/docs/de/prompt-caching#cache-lifetime) für Anfragen außerhalb der Hauptkonversation zu wählen, wie [Subagents](/docs/de/sub-agents), Workflows und Hintergrundarbeit. Hat Vorrang vor der `subagentPromptCacheTtl`-Einstellung und über `ENABLE_PROMPT_CACHING_1H`, und `FORCE_PROMPT_CACHING_5M` überschreibt es. Die API berechnet 1-Stunden-Cache-Schreibvorgänge mit einer höheren Rate. Erfordert Claude Code v2.1.242 oder später |

388| `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` | Setzen Sie auf `1`, um Credentials aus Subprocess-Umgebungen zu entfernen (Bash-Tool, Hooks, MCP-Stdio-Server): Anthropic- und Cloud-Provider-Credentials, jede andere Variable, die Claude Code als Credential erkennt, und Credentials, die in Package-Registry-URLs eingebettet sind. Der übergeordnete Claude-Prozess behält diese Credentials für API-Aufrufe, aber Child-Prozesse können sie nicht lesen, was die Exposition gegenüber Prompt-Injection-Angriffen reduziert, die versuchen, Secrets über Shell-Expansion zu exfiltrieren. Auf v2.1.251 oder später entfernt der Scrub auch Claude Code's eigene Konfigurationsspeicher-Pointer-Variablen (wie `CLAUDE_CONFIG_DIR`), daher kann ein Child-Prozess ein verlegtes Konfigurationsverzeichnis nicht lokalisieren. Lassen Sie den Scrub nicht gesetzt, wenn ein Subprocess diese Variablen braucht. Auf Linux führt dies auch Bash-Subprozesse in einem isolierten PID-Namespace aus, daher können sie Host-Prozess-Umgebungen über `/proc` nicht lesen; als Nebeneffekt können `ps`, `pgrep` und `kill` Host-Prozesse nicht sehen oder signalisieren. `claude-code-action` setzt dies automatisch, wenn `allowed_non_write_users` konfiguriert ist |388| `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` | Setzen Sie auf `1`, um Anmeldedaten aus Subprocess-Umgebungen zu entfernen (Bash-Tool, Hooks, MCP-Stdio-Server): Anthropic- und Cloud-Provider-Anmeldedaten, jede andere Variable, die Claude Code als Anmeldedaten erkennt, und Anmeldedaten, die in Package-Registry-URLs eingebettet sind. Der übergeordnete Claude-Prozess behält diese Anmeldedaten für API-Aufrufe, aber Kind-Prozesse können sie nicht lesen, was die Exposition gegenüber Prompt-Injection-Angriffen reduziert, die versuchen, Geheimnisse über Shell-Expansion zu exfiltrieren. Auf v2.1.251 oder später entfernt der Scrub auch Claude Code's eigene Konfigurationsspeicher-Pointer-Variablen (wie `CLAUDE_CONFIG_DIR`), daher kann ein Kind-Prozess ein verlegtes Konfigurationsverzeichnis nicht lokalisieren. Lassen Sie den Scrub nicht gesetzt, wenn ein Subprocess diese Variablen braucht. Auf Linux führt dies auch Bash-Subprozesse in einem isolierten PID-Namespace aus, daher können sie Host-Prozess-Umgebungen über `/proc` nicht lesen; als Nebeneffekt können `ps`, `pgrep` und `kill` Host-Prozesse nicht sehen oder signalisieren. `claude-code-action` setzt dies automatisch, wenn `allowed_non_write_users` konfiguriert ist |

389| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL` | Setzen Sie auf `1` im nicht-interaktiven Modus (die `-p`-Flag), um auf die Fertigstellung der Plugin-Installation zu warten, bevor die erste Abfrage. Ohne dies installieren sich Plugins im Hintergrund und sind möglicherweise nicht beim ersten Turn verfügbar. Kombinieren Sie mit `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS`, um das Warten zu begrenzen |389| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL` | Setzen Sie auf `1` im nicht-interaktiven Modus (das `-p`-Flag), um auf die Fertigstellung der Plugin-Installation zu warten, bevor die erste Query. Ohne dies installieren sich Plugins im Hintergrund und sind möglicherweise nicht beim ersten Turn verfügbar. Kombinieren Sie mit `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS`, um das Warten zu begrenzen |

390| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` | Timeout in Millisekunden für synchrone Plugin-Installation. Wenn überschritten, fährt Claude Code ohne Plugins fort und protokolliert einen Fehler. Kein Standard: ohne diese Variable wartet synchrone Installation bis zur Fertigstellung |390| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` | Timeout in Millisekunden für synchrone Plugin-Installation. Wenn überschritten, fährt Claude Code ohne Plugins fort und protokolliert einen Fehler. Kein Standard: ohne diese Variable wartet synchrone Installation bis zur Fertigstellung |

391| `CLAUDE_CODE_SYNC_SKILLS` | Setzen Sie auf `1` im nicht-interaktiven Modus mit der `-p`-Flag, um Claude Code die Skills herunterladen zu lassen, die für Ihr claude.ai-Konto in diesem Lauf aktiviert sind, und auf die Liste von ihnen zu warten, bis zu `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS`, bevor es die erste Abfrage ausführt. Die Downloads selbst beenden sich im Hintergrund, und Claude wartet auf den Download eines Skills, wenn er diesen aufruft. Erfordert claude.ai-Authentifizierung. Terminal-Sitzungen, in denen Sie sich mit Ihrem claude.ai-Konto anmelden, [laden diese Skills](/docs/de/skills#where-synced-skills-load) in `~/.claude/skills/synced/` herunter und resynchronisieren etwa alle 10 Minuten ohne diese Variable, daher setzen Sie es nur, wenn ein `-p`-Lauf Ihre aktuellen Skills bei seiner ersten Abfrage braucht. Vor v2.1.273 luden Terminal-Sitzungen sie nur in einem `-p`-Lauf mit dieser Variablen gesetzt herunter. Der `synced`-Ordnername ist [für diesen Download reserviert](/docs/de/skills#where-skills-live). Vor v2.1.227 luden die Skills in `~/.claude/skills/` direkt herunter. Claude Code wendet [Extra-Regeln auf die heruntergeladenen Skills](/docs/de/skills#how-synced-skills-behave) an, wie das Nicht-Ausführen ihrer `!`-Befehle auf Ihrer Maschine |391| `CLAUDE_CODE_SYNC_SKILLS` | Setzen Sie auf `1` im nicht-interaktiven Modus mit dem `-p`-Flag, um Claude Code die Skills herunterladen zu lassen, die für Ihr claude.ai-Konto in diesem Lauf aktiviert sind, und auf die Liste von ihnen zu warten, bis zu `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS`, bevor es die erste Query ausführt. Die Downloads selbst beenden sich im Hintergrund, und Claude wartet auf den Download eines Skills, wenn er diesen Skill aufruft. Erfordert claude.ai-Authentifizierung. Terminal-Sitzungen, in denen Sie sich mit Ihrem claude.ai-Konto anmelden, [laden diese Skills](/docs/de/skills#where-synced-skills-load) in `~/.claude/skills/synced/` herunter und resynchronisieren etwa alle 10 Minuten ohne diese Variable, daher setzen Sie es nur, wenn ein `-p`-Lauf Ihre aktuellen Skills bei seiner ersten Query braucht. Vor v2.1.273 luden Terminal-Sitzungen sie nur in einem `-p`-Lauf mit dieser Variable gesetzt herunter. Der `synced`-Ordner-Name ist [für diesen Download reserviert](/docs/de/skills#where-skills-live). Vor v2.1.227 luden die Skills in `~/.claude/skills/` direkt herunter. Claude Code wendet [zusätzliche Regeln auf die heruntergeladenen Skills](/docs/de/skills#how-synced-skills-behave) an, wie das Nicht-Ausführen ihrer `!`-Befehle auf Ihrer Maschine |

392| `CLAUDE_CODE_SYNC_SKILLS_INSTALL_TIMEOUT_MS` | Timeout in Millisekunden für die Skills-Resynchronisierung, die mid-session läuft, wenn eine App, die auf dem [Agent SDK](/docs/de/agent-sdk/typescript#query-object) gebaut ist, Skills neu lädt (Standard: 30000). Wenn überschritten, setzt die Neuladeung mit welchen Skills auch immer angekommen sind fort, und die verbleibenden Downloads beenden sich im Hintergrund |392| `CLAUDE_CODE_SYNC_SKILLS_INSTALL_TIMEOUT_MS` | Timeout in Millisekunden für die Skills-Resynchronisierung, die mid-session läuft, wenn eine App, die auf dem [Agent SDK](/docs/de/agent-sdk/typescript#query-object) gebaut ist, Skills neu lädt (Standard: 30000). Wenn überschritten, fährt das Neuladen mit welchen Skills auch immer angekommen sind fort, und die verbleibenden Downloads beenden sich im Hintergrund |

393| `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS` | Timeout in Millisekunden für die erste Abfrage, um auf die anfängliche Skill-Liste zu warten, wenn `CLAUDE_CODE_SYNC_SKILLS` gesetzt ist (Standard: 5000). Wenn überschritten, läuft die erste Abfrage mit welchen Skills auch immer angekommen sind. Die Downloads beenden sich im Hintergrund in jedem Fall, und Claude wartet auf den Download eines Skills, wenn er diesen aufruft |393| `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS` | Timeout in Millisekunden für die erste Query zum Warten auf die anfängliche Skill-Liste, wenn `CLAUDE_CODE_SYNC_SKILLS` gesetzt ist (Standard: 5000). Wenn überschritten, läuft die erste Query mit welchen Skills auch immer angekommen sind. Die Downloads beenden sich im Hintergrund in jedem Fall, und Claude wartet auf den Download eines Skills, wenn er diesen Skill aufruft |

394| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | Setzen Sie auf `false`, um Syntax-Highlighting in Diff-Ausgabe zu deaktivieren. Nützlich, wenn Farben Ihr Terminal-Setup stören. Um Highlighting auch in Code-Blöcken und Datei-Vorschauen zu deaktivieren, verwenden Sie die [`syntaxHighlightingDisabled`](/docs/de/settings-reference#syntaxhighlightingdisabled)-Einstellung |394| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | Setzen Sie auf `false`, um Syntax-Highlighting in Diff-Ausgabe zu deaktivieren. Nützlich, wenn Farben Ihr Terminal-Setup stören. Um Highlighting auch in Code-Blöcken und Datei-Vorschauen zu deaktivieren, verwenden Sie die [`syntaxHighlightingDisabled`](/docs/de/settings-reference#syntaxhighlightingdisabled)-Einstellung |

395| `CLAUDE_CODE_TASK_LIST_ID` | Teilen Sie eine Task-Liste über Sitzungen. Setzen Sie die gleiche ID in mehreren Claude Code-Instanzen, um an einer gemeinsamen Task-Liste zu koordinieren, in [Sitzungen, die die Task-Tools haben](/docs/de/tools-reference#task-tool-availability). Siehe [Task-Liste](/docs/de/interactive-mode#task-list) |395| `CLAUDE_CODE_TASK_LIST_ID` | Teilen Sie eine Task-Liste über Sitzungen. Setzen Sie die gleiche ID in mehreren Claude Code-Instanzen, um an einer gemeinsamen Task-Liste zu koordinieren, in [Sitzungen, die die Task-Tools haben](/docs/de/tools-reference#task-tool-availability). Siehe [Task-Liste](/docs/de/interactive-mode#task-list) |

396| `CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS` | Überschreiben Sie in Millisekunden, wie lange eine nicht-interaktive Sitzung beim Exit auf ihr [Agent-Team](/docs/de/agent-teams) wartet, um sich abzubauen. Akzeptiert 1000 bis 60000; ein Out-of-Range-Wert wird ignoriert und der Standard von 10000 gilt. Erfordert Claude Code v2.1.206 oder später |396| `CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS` | Überschreiben Sie, in Millisekunden, wie lange eine nicht-interaktive Sitzung beim Beenden auf ihr [Agent-Team](/docs/de/agent-teams) wartet, um sich abzubauen. Akzeptiert 1000 bis 60000; ein Out-of-Range-Wert wird ignoriert und der Standard von 10000 gilt. Erfordert Claude Code v2.1.206 oder später |

397| `CLAUDE_CODE_TMPDIR` | Überschreiben Sie das Temp-Verzeichnis, das für interne Temp-Dateien verwendet wird. Claude Code hängt `/claude-{uid}/` auf Unix oder `/claude/` auf Windows an diesen Pfad an. Standard: `/tmp` auf macOS, `os.tmpdir()` auf Linux und Windows. Auf macOS und Linux erhalten [Sandboxed](/docs/de/sandboxing)-Bash-Subprozesse einen kurzen Fallback-`$TMPDIR` unter dem System-Standard, wenn Ihr Override ein langer Pfad ist, da einige Tools fehlschlagen, wenn Temp-Pfade zu lang werden. Nicht-Sandboxed-Bash-Befehle erben Ihren Shell-`$TMPDIR` unverändert. Claude Code's eigene Temp-Dateien verwenden immer Ihren Override. Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert |397| `CLAUDE_CODE_TMPDIR` | Überschreiben Sie das Temp-Verzeichnis, das für interne Temp-Dateien verwendet wird. Claude Code hängt `/claude-{uid}/` auf Unix oder `/claude/` auf Windows an diesen Pfad an. Standard: `/tmp` auf macOS, `os.tmpdir()` auf Linux und Windows. Auf macOS und Linux erhalten [Sandboxed](/docs/de/sandboxing)-Bash-Subprozesse einen kurzen Fallback-`$TMPDIR` unter dem System-Standard, wenn Ihr Override ein langer Pfad ist, da einige Tools fehlschlagen, wenn Temp-Pfade zu lang werden. Nicht-Sandboxed-Bash-Befehle erben Ihren Shell-`$TMPDIR`, wenn er gesetzt ist. Claude Code's eigene Temp-Dateien verwenden immer Ihren Override. Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert |

398| `CLAUDE_CODE_TMUX_TRUECOLOR` | Setzen Sie auf einen beliebigen nicht-leeren Wert, wie `1`, um 24-Bit-Truecolor-Ausgabe in Tmux zu erlauben. **Das Setzen auf `0` oder `false` erlaubt immer noch Truecolor**, im Gegensatz zu den meisten Ein/Aus-Variablen; heben Sie die Einstellung der Variablen auf, um die 256-Farben-Begrenzung wiederherzustellen. Standardmäßig begrenzt Claude Code auf 256 Farben, wenn `$TMUX` gesetzt ist, da Tmux Truecolor-Escape-Sequenzen nicht durchleitet, es sei denn, es ist konfiguriert. Setzen Sie dies, nachdem Sie `set -ga terminal-overrides ',*:Tc'` zu Ihrer `~/.tmux.conf` hinzugefügt haben. Siehe [Terminal-Konfiguration](/docs/de/terminal-config) für andere Tmux-Einstellungen |398| `CLAUDE_CODE_TMUX_TRUECOLOR` | Setzen Sie auf einen beliebigen nicht-leeren Wert, wie `1`, um 24-Bit-Truecolor-Ausgabe in tmux zu erlauben. **Das Setzen auf `0` oder `false` erlaubt immer noch Truecolor**, im Gegensatz zu den meisten Ein/Aus-Variablen; heben Sie die Variable auf, um die 256-Farben-Begrenzung wiederherzustellen. Standardmäßig begrenzt Claude Code auf 256 Farben, wenn `$TMUX` gesetzt ist, weil tmux Truecolor-Escape-Sequenzen nicht durchleitet, es sei denn, es ist konfiguriert. Setzen Sie dies nach dem Hinzufügen von `set -ga terminal-overrides ',*:Tc'` zu Ihrer `~/.tmux.conf`. Siehe [Terminal-Konfiguration](/docs/de/terminal-config) für andere tmux-Einstellungen |

399| `CLAUDE_CODE_TOOL_MEMORY_CGROUP_EXCLUDE` | Auf Linux und WSL auf eine komma-getrennte Liste der Arten von Prozessen setzen, die Claude Code [von der Tool-Memory-Obergrenze ausschließt](/docs/de/tools-reference#memory-limit-on-linux-and-wsl), wie `mcp` oder `lsp`. Setzen Sie `none`, um jeden Kind zu begrenzen, oder `all-new`, um nur Bash-, PowerShell- und Monitor-Tool-Befehle zu begrenzen. Claude Code hält Bash-, PowerShell- und Monitor-Tool-Befehle unter der Obergrenze, was auch immer Sie auflisten. Erfordert Claude Code v2.1.246 oder später |399| `CLAUDE_CODE_TOOL_MEMORY_CGROUP_EXCLUDE` | Auf Linux und WSL setzen Sie auf eine komma-getrennte Liste der Arten von Prozessen, die Claude Code [von der Tool-Memory-Obergrenze ausschließt](/docs/de/tools-reference#memory-limit-on-linux-and-wsl), wie `mcp` oder `lsp`. Setzen Sie `none`, um jeden Kind zu deckeln, oder `all-new`, um nur Bash-, PowerShell- und Monitor-Tool-Befehle zu deckeln. Claude Code hält Bash-, PowerShell- und Monitor-Tool-Befehle unter der Obergrenze, was auch immer Sie auflisten. Erfordert Claude Code v2.1.246 oder später |

400| `CLAUDE_CODE_TOOL_MEMORY_LIMIT` | Auf Linux und WSL auf eine Größe wie `4G` setzen, um [die Memory, die Bash- und PowerShell-Tool-Befehle verwenden können, zu begrenzen](/docs/de/tools-reference#memory-limit-on-linux-and-wsl), und Monitor-Tool-Befehle auf v2.1.246 oder später. Schreiben Sie die Größe in einfachen Ziffern, allein für eine Anzahl von Bytes oder mit einem `K`, `M`, `G` oder `T`-Suffix. Setzen Sie `0` oder `off`, um die Obergrenze auszuschalten. Sobald der erste Prozess, den Claude Code startet, die Obergrenze ein- oder ausgeschaltet hat, hat ein geänderter Wert Auswirkung, wenn Sie `claude` nächstes Mal starten. Erfordert Claude Code v2.1.233 oder später |400| `CLAUDE_CODE_TOOL_MEMORY_LIMIT` | Auf Linux und WSL setzen Sie auf eine Größe wie `4G`, um [den Speicher, den Bash- und PowerShell-Tool-Befehle verwenden können, zu deckeln](/docs/de/tools-reference#memory-limit-on-linux-and-wsl), und Monitor-Tool-Befehle auf v2.1.246 oder später. Schreiben Sie die Größe in einfachen Ziffern, allein für eine Anzahl von Bytes oder mit einem `K`-, `M`-, `G`- oder `T`-Suffix. Setzen Sie `0` oder `off`, um die Obergrenze auszuschalten. Sobald der erste Prozess, den Claude Code startet, die Obergrenze ein- oder ausgeschaltet hat, hat ein geänderter Wert Auswirkung, wenn Sie `claude` nächstes Mal starten. Erfordert Claude Code v2.1.233 oder später |

401| `CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS` | Deadline in Millisekunden, bevor Claude Code einen Dialog abbricht, den es an einen Remote-Client wie einen [Remote Control](/docs/de/remote-control) oder SDK-Host weiterleitet, oder den Genehmigungsdialog für eine [gehaltene Cross-Session-Nachricht](/docs/de/cross-session-messaging#control-inbound-messages); Berechtigungsprompts und `AskUserQuestion`-Fragen verwenden ihre eigenen Flows und werden nicht dadurch regiert. Auf Claude Code v2.1.236 oder später begrenzt es auch den mid-session [Fable-Nutzungs-Credits-Zustimmungs-Prompt](/docs/de/model-config#fable-and-usage-credits) in einer Sitzung, die möglicherweise unbeaufsichtigt läuft. [Inbound-Nachrichten kontrollieren](/docs/de/cross-session-messaging#control-inbound-messages) und [nicht-interaktive Sitzungen](/docs/de/cross-session-messaging#non-interactive-sessions) decken die vollständigen gehaltenen-Nachricht-Ablauf-Regeln ab, einschließlich der Fälle, wo die Deadline nicht gilt. Überschreibt die [`dialogExpiry`](/docs/de/settings-reference#dialogexpiry)-Einstellung. `0` oder ein negativer Wert deaktiviert die Deadline |401| `CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS` | Frist in Millisekunden, bevor Claude Code einen Dialog abbricht, den es an einen Remote-Client wie einen [Remote Control](/docs/de/remote-control) oder SDK-Host weiterleitet, oder den Genehmigungsdialog für eine [gehaltene Cross-Session-Nachricht](/docs/de/cross-session-messaging#control-inbound-messages); Permission-Prompts und `AskUserQuestion`-Fragen verwenden ihre eigenen Flows und werden nicht dadurch gesteuert. Auf Claude Code v2.1.236 oder später begrenzt es auch den Mid-Session-[Fable-Nutzungs-Credits-Zustimmungs-Prompt](/docs/de/model-config#fable-and-usage-credits) in einer Sitzung, die möglicherweise unbeaufsichtigt läuft. [Inbound-Nachrichten steuern](/docs/de/cross-session-messaging#control-inbound-messages) und [nicht-interaktive Sitzungen](/docs/de/cross-session-messaging#non-interactive-sessions) decken die vollständigen gehaltenen-Nachrichten-Ablauf-Regeln ab, einschließlich der Fälle, wo die Frist nicht gilt. Überschreibt die [`dialogExpiry`](/docs/de/settings-reference#dialogexpiry)-Einstellung. `0` oder ein negativer Wert deaktiviert die Frist |

402| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | Verwenden Sie [Claude Platform on AWS](/docs/de/claude-platform-on-aws) |402| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | Verwenden Sie [Claude Platform on AWS](/docs/de/claude-platform-on-aws) |

403| `CLAUDE_CODE_USE_BEDROCK` | Verwenden Sie [Amazon Bedrock](/docs/de/amazon-bedrock) |403| `CLAUDE_CODE_USE_BEDROCK` | Verwenden Sie [Amazon Bedrock](/docs/de/amazon-bedrock) |

404| `CLAUDE_CODE_USE_FOUNDRY` | Verwenden Sie [Microsoft Foundry](/docs/de/microsoft-foundry) |404| `CLAUDE_CODE_USE_FOUNDRY` | Verwenden Sie [Microsoft Foundry](/docs/de/microsoft-foundry) |

405| `CLAUDE_CODE_USE_MANTLE` | Verwenden Sie den Amazon Bedrock [Mantle-Endpunkt](/docs/de/amazon-bedrock#use-the-mantle-endpoint) |405| `CLAUDE_CODE_USE_MANTLE` | Verwenden Sie den Amazon Bedrock [Mantle-Endpunkt](/docs/de/amazon-bedrock#use-the-mantle-endpoint) |

406| `CLAUDE_CODE_USE_NATIVE_FILE_SEARCH` | Setzen Sie auf `1`, um benutzerdefinierte Befehle, Subagents und Output-Stile mit Node.js-Datei-APIs zu entdecken, anstatt Ripgrep. Setzen Sie dies, wenn die gebündelte Ripgrep-Binärdatei in Ihrer Umgebung nicht verfügbar oder blockiert ist. Betrifft nicht die Grep- oder Datei-Such-Tools |406| `CLAUDE_CODE_USE_NATIVE_FILE_SEARCH` | Setzen Sie auf `1`, um benutzerdefinierte Befehle, Subagents und Ausgabe-Stile mit Node.js-Datei-APIs statt ripgrep zu entdecken. Setzen Sie dies, wenn die gebündelte ripgrep-Binärdatei in Ihrer Umgebung nicht verfügbar oder blockiert ist. Betrifft nicht die Grep- oder Datei-Such-Tools |

407| `CLAUDE_CODE_USE_POWERSHELL_TOOL` | Kontrolliert das PowerShell-Tool. Auf Windows ohne Git Bash ist das Tool automatisch aktiviert; setzen Sie auf `0`, um es zu deaktivieren. Auf Windows mit Git Bash installiert ist das Tool standardmäßig für claude.ai und Console-Konten aktiviert; setzen Sie auf `1`, um es in Amazon Bedrock-, Google Cloud's Agent Platform- und Microsoft Foundry-Sitzungen zu aktivieren, oder `0`, um es auszuschalten. Auf Linux, macOS und WSL setzen Sie auf `1`, um es zu aktivieren, was `pwsh` auf Ihrem `PATH` erfordert. Wenn aktiviert auf Windows, kann Claude PowerShell-Befehle nativ ausführen, anstatt durch Git Bash zu leiten. Siehe [PowerShell-Tool](/docs/de/tools-reference#powershell-tool) |407| `CLAUDE_CODE_USE_POWERSHELL_TOOL` | Steuert das PowerShell-Tool. Auf Windows ohne Git Bash ist das Tool automatisch aktiviert; setzen Sie auf `0`, um es zu deaktivieren. Auf Windows mit Git Bash installiert ist das Tool standardmäßig für claude.ai und Console-Konten eingeschaltet; setzen Sie auf `1`, um es in Amazon Bedrock-, Google Cloud's Agent Platform- und Microsoft Foundry-Sitzungen zu aktivieren, oder `0`, um es auszuschalten. Auf Linux, macOS und WSL setzen Sie auf `1`, um es zu aktivieren, was `pwsh` auf Ihrem `PATH` erfordert. Wenn aktiviert auf Windows, kann Claude PowerShell-Befehle nativ ausführen, anstatt durch Git Bash zu leiten. Siehe [PowerShell-Tool](/docs/de/tools-reference#powershell-tool) |

408| `CLAUDE_CODE_USE_VERTEX` | Verwenden Sie [Google Cloud's Agent Platform](/docs/de/google-vertex-ai) |408| `CLAUDE_CODE_USE_VERTEX` | Verwenden Sie [Google Cloud's Agent Platform](/docs/de/google-vertex-ai) |

409| `CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS` | Setzen Sie auf die Anzahl der Millisekunden, die [WebFetch](/docs/de/tools-reference#webfetch-tool-behavior) jede abgerufene URL's Antwort cached. Der Standard ist `900000`, was 15 Minuten ist. Akzeptiert nur einfache Ziffern; `0`, eine Dezimalzahl oder jede andere Schreibweise behält den Standard. Claude Code liest den Wert einmal pro Start, daher gilt eine Änderung in einem Einstellungs-`env`-Block, wenn Sie `claude` nächstes Mal starten. Erfordert Claude Code v2.1.233 oder später |409| `CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS` | Setzen Sie auf die Anzahl der Millisekunden, die [WebFetch](/docs/de/tools-reference#webfetch-tool-behavior) jede abgerufene URL's Antwort zwischenspeichert. Der Standard ist `900000`, was 15 Minuten ist. Akzeptiert nur einfache Ziffern; `0`, ein Dezimal oder jede andere Schreibweise behält den Standard. Claude Code liest den Wert einmal pro Start, daher gilt eine Änderung in einem Einstellungs-`env`-Block, wenn Sie `claude` nächstes Mal starten. Erfordert Claude Code v2.1.233 oder später |

410| `CLAUDE_CODE_WEBFETCH_DEADLINE_MS` | Obergrenze in Millisekunden, wie lange [WebFetch](/docs/de/tools-reference#webfetch-tool-behavior) auf das Herunterladen einer Seite wartet, einschließlich aller Umleitungen, die es folgt. Ein Download, der bis dahin nicht abgeschlossen ist, schlägt mit einem Deadline-Fehler fehl. Der Standard ist `300000`, was fünf Minuten ist. Setzen Sie auf `0`, um die Obergrenze zu entfernen. Akzeptiert nur einfache Ziffern; eine Dezimalzahl oder jede andere Schreibweise behält den Standard. Erfordert Claude Code v2.1.268 oder später |410| `CLAUDE_CODE_WEBFETCH_DEADLINE_MS` | Obergrenze in Millisekunden, wie lange [WebFetch](/docs/de/tools-reference#webfetch-tool-behavior) auf das Herunterladen einer Seite wartet, einschließlich aller Umleitungen, denen es folgt. Ein Download, der bis dahin nicht abgeschlossen ist, schlägt mit einem Deadline-Fehler fehl. Der Standard ist `300000`, was fünf Minuten ist. Setzen Sie auf `0`, um die Obergrenze zu entfernen. Akzeptiert nur einfache Ziffern; ein Dezimal oder jede andere Schreibweise behält den Standard. Erfordert Claude Code v2.1.268 oder später |

411| `CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS` | Wie viele Agents ein einzelner [Workflow](/docs/de/workflows)-Lauf auf einmal ausführt, von `1` bis `256`. Standardmäßig führt ein Lauf bis zu 16 Agents auf einmal aus, weniger, wenn Claude Code weniger CPUs verfügbar hat; wartende `agent()`-Aufrufe warten auf einen freien Slot. Jeder laufende Agent's Transkript bleibt in Claude Code's Memory, daher erhöhen höhere Werte die Memory-Nutzung. Akzeptiert nur einfache Ziffern; Out-of-Range-Werte und andere Schreibweisen behalten den Standard. Erfordert Claude Code v2.1.269 oder später |411| `CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS` | Wie viele Agents ein einzelner [Workflow](/docs/de/workflows)-Lauf gleichzeitig ausführt, von `1` bis `256`. Standardmäßig führt ein Lauf bis zu 16 Agents gleichzeitig aus, weniger, wenn Claude Code weniger CPUs verfügbar hat; wartende `agent()`-Aufrufe warten auf einen freien Slot. Das Transkript jedes laufenden Agents bleibt in Claude Code's Speicher, daher erhöhen höhere Werte die Speichernutzung. Akzeptiert nur einfache Ziffern; Out-of-Range-Werte und andere Schreibweisen behalten den Standard. Erfordert Claude Code v2.1.269 oder später |

412| `CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS` | Obergrenze in Millisekunden, wie lange ein [Workflow](/docs/de/workflows)-Agent auf die erste Antwort eines gleich-Präfix-Siblings wartet, bevor er seine eigene erste Anfrage sendet. Wenn ein Fan-Out mehrere Agents startet, die einen [Prompt-Cache-Präfix](/docs/de/workflows#prompt-caching-in-a-fan-out) teilen, hält Claude Code alle außer dem ersten Agent für bis zu diese lange, daher lesen die Rest den gecachten Präfix, anstatt ihn jeweils ungecacht zu verarbeiten. Standard `5000`. Setzen Sie auf `0`, um das Warten zu deaktivieren. Wenn `DISABLE_PROMPT_CACHING` gesetzt ist, warten Agents nie. Erfordert Claude Code v2.1.229 oder später |412| `CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS` | Obergrenze in Millisekunden, wie lange ein [Workflow](/docs/de/workflows)-Agent auf die erste Antwort eines gleich-Präfix-Siblings wartet, bevor er seine eigene erste Anfrage sendet. Wenn ein Fan-Out mehrere Agents startet, die einen [Prompt-Cache-Präfix](/docs/de/workflows#prompt-caching-in-a-fan-out) teilen, hält Claude Code alle außer dem ersten Agent für bis zu diese lange, daher lesen die restlichen den zwischengespeicherten Präfix, anstatt ihn jeweils nicht zwischengespeichert zu verarbeiten. Standard `5000`. Setzen Sie auf `0`, um das Warten zu deaktivieren. Wenn `DISABLE_PROMPT_CACHING` gesetzt ist, warten Agents nie. Erfordert Claude Code v2.1.229 oder später |

413| `CLAUDE_CONFIG_DIR` | Überschreiben Sie das Konfigurationsverzeichnis (Standard: `~/.claude`). Alle Einstellungen, Sitzungs-Verlauf und Plugins werden unter diesem Pfad gespeichert. Für Credentials siehe [wo Claude Code Credentials speichert](/docs/de/authentication#credential-management). Nützlich zum Ausführen mehrerer Konten nebeneinander: zum Beispiel `alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'`. Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert |413| `CLAUDE_CONFIG_DIR` | Überschreiben Sie das Konfigurationsverzeichnis (Standard: `~/.claude`). Alle Einstellungen, Sitzungs-Verlauf und Plugins werden unter diesem Pfad gespeichert. Für Anmeldedaten siehe [wo Claude Code Anmeldedaten speichert](/docs/de/authentication#credential-management). Nützlich zum Ausführen mehrerer Konten nebeneinander: zum Beispiel `alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'`. Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert |

414| `CLAUDE_DISABLE_ADOPT` | Setzen Sie auf `1`, um laufende Hintergrundarbeit zu stoppen, anstatt sie zu tragen, wenn Sie eine Sitzung backgrounden, indem Sie `←` drücken oder [`/background`](/docs/de/agent-view#from-inside-a-session) verwenden. Claude Code fragt Sie, um zu bestätigen, bevor Sie backgrounden, dann stoppt die Aufgaben, die andernfalls getragen würden. Erfordert Claude Code v2.1.195 oder später |414| `CLAUDE_DISABLE_ADOPT` | Setzen Sie auf `1`, um laufende Hintergrundarbeit zu stoppen, anstatt sie zu tragen, wenn Sie eine Sitzung durch Drücken von `←` oder mit [`/background`](/docs/de/agent-view#from-inside-a-session) hintergrund-verschieben. Claude Code fragt Sie, um zu bestätigen, bevor Sie hintergrund-verschieben, dann stoppt die Aufgaben, die andernfalls getragen würden. Erfordert Claude Code v2.1.195 oder später |

415| `CLAUDE_EFFORT` | Wird automatisch in Bash-Tool-Subprozessen und Hook-Befehlen auf die [Effort-Ebene](/docs/de/model-config#adjust-effort-level) gesetzt, die in Kraft ist, wenn der Subprocess startet: `low`, `medium`, `high`, `xhigh` oder `max`. Ultracode ist keine unterschiedliche Ebene und meldet sich als `xhigh`. Entspricht dem `effort.level`-Feld, das an [Hooks](/docs/de/hooks) übergeben wird. Wird nur gesetzt, wenn das aktuelle Modell den Effort-Parameter unterstützt |415| `CLAUDE_EFFORT` | Wird automatisch in Bash-Tool-Subprozessen und Hook-Befehlen auf die [Effort-Ebene](/docs/de/model-config#adjust-effort-level) gesetzt, die in Kraft ist, wenn der Subprocess startet: `low`, `medium`, `high`, `xhigh` oder `max`. Ultracode ist keine unterschiedliche Ebene und meldet sich als `xhigh`. Entspricht dem `effort.level`-Feld, das an [Hooks](/docs/de/hooks) übergeben wird. Wird nur gesetzt, wenn das aktuelle Modell den Effort-Parameter unterstützt |

416| `CLAUDE_ENABLE_BYTE_WATCHDOG` | Setzen Sie auf `1`, um den Byte-Level-Streaming-Idle-Watchdog zu erzwingen, oder setzen Sie auf `0`, um ihn zu erzwingen-deaktivieren. `0` schaltet auch die [First-Byte-Deadline](/docs/de/network-config#streaming-idle-watchdogs) auf den Verbindungen aus, wo diese Deadline läuft. Wenn nicht gesetzt, ist der Watchdog standardmäßig für direkte Anthropic API und [Claude Platform on AWS](/docs/de/claude-platform-on-aws)-Verbindungen aktiviert, und für Streaming-Antworten auf [Gateway](/docs/de/gateways)-Verbindungen, die über `ANTHROPIC_BASE_URL` oder `ANTHROPIC_AWS_BASE_URL` erreicht werden; vor v2.1.222 lief er nicht auf diesen Gateway-Verbindungen, daher konnte der Event-Level-Watchdog einen Stall dort melden, auch während Keep-Alive-Pings ankamen. Für Timeouts und wie die Timer interagieren, siehe [Streaming-Idle-Watchdogs](/docs/de/network-config#streaming-idle-watchdogs) |416| `CLAUDE_ENABLE_BYTE_WATCHDOG` | Setzen Sie auf `1`, um den Byte-Level-Streaming-Idle-Watchdog zu erzwingen, oder setzen Sie auf `0`, um ihn zu erzwingen-deaktivieren. `0` schaltet auch die [First-Byte-Frist](/docs/de/network-config#streaming-idle-watchdogs) auf den Verbindungen aus, wo diese Frist läuft. Wenn nicht gesetzt, ist der Watchdog standardmäßig für direkte Anthropic API- und [Claude Platform on AWS](/docs/de/claude-platform-on-aws)-Verbindungen aktiviert, und für Streaming-Antworten auf [Gateway](/docs/de/gateways)-Verbindungen, die über `ANTHROPIC_BASE_URL` oder `ANTHROPIC_AWS_BASE_URL` erreicht werden; vor v2.1.222 lief er nicht auf diesen Gateway-Verbindungen, daher konnte der Event-Level-Watchdog dort einen Stall melden, auch während Keep-Alive-Pings ankamen. Für Timeouts und wie die Timer interagieren, siehe [Streaming-Idle-Watchdogs](/docs/de/network-config#streaming-idle-watchdogs) |

417| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | Setzen Sie auf `1`, um den Byte-Level-Streaming-Idle-Watchdog auf Amazon Bedrock `vnd.amazon.eventstream`-Antworten zu aktivieren, was auch die [First-Byte-Deadline](/docs/de/network-config#streaming-idle-watchdogs) auf Bedrock-Streaming-Anfragen aktiviert. Standardmäßig aus. Konfigurieren Sie das Timeout mit `CLAUDE_STREAM_IDLE_TIMEOUT_MS` |417| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | Setzen Sie auf `1`, um den Byte-Level-Streaming-Idle-Watchdog auf Amazon Bedrock `vnd.amazon.eventstream`-Antworten zu aktivieren, was auch die [First-Byte-Frist](/docs/de/network-config#streaming-idle-watchdogs) auf Bedrock-Streaming-Anfragen aktiviert. Standardmäßig aus. Konfigurieren Sie das Timeout mit `CLAUDE_STREAM_IDLE_TIMEOUT_MS` |

418| `CLAUDE_ENABLE_STREAM_WATCHDOG` | Setzen Sie auf `0`, um den Event-Level-Streaming-Idle-Watchdog zu erzwingen-deaktivieren, oder setzen Sie auf `1`, um ihn zu erzwingen-aktivieren. Wenn nicht gesetzt, ist der Watchdog standardmäßig für alle Provider aktiviert. Vor v2.1.196 war der nicht-gesetzte Standard Server-kontrolliert auf der direkten Anthropic API und aus auf anderen Providern. Konfigurieren Sie das Timeout mit `CLAUDE_STREAM_IDLE_TIMEOUT_MS`; für die anderen Stall-Timer, die neben diesem laufen, siehe [Streaming-Idle-Watchdogs](/docs/de/network-config#streaming-idle-watchdogs) |418| `CLAUDE_ENABLE_STREAM_WATCHDOG` | Setzen Sie auf `0`, um den Event-Level-Streaming-Idle-Watchdog zu erzwingen-deaktivieren, oder setzen Sie auf `1`, um ihn zu erzwingen-aktivieren. Wenn nicht gesetzt, ist der Watchdog standardmäßig für alle Provider eingeschaltet. Vor v2.1.196 war der nicht-gesetzte Standard Server-gesteuert auf der direkten Anthropic API und aus auf anderen Providern. Konfigurieren Sie das Timeout mit `CLAUDE_STREAM_IDLE_TIMEOUT_MS`; für die anderen Stall-Timer, die neben diesem laufen, siehe [Streaming-Idle-Watchdogs](/docs/de/network-config#streaming-idle-watchdogs) |

419| `CLAUDE_ENV_FILE` | Pfad zu einem Shell-Skript, dessen Inhalt Claude Code vor jedem Bash-Befehl im gleichen Shell-Prozess ausführt, daher sind Exports in der Datei für den Befehl sichtbar. Verwenden Sie, um Virtualenv- oder Conda-Aktivierung über Befehle hinweg zu persistieren. Wird auch dynamisch von [SessionStart](/docs/de/hooks#persist-environment-variables), [Setup](/docs/de/hooks#setup), [CwdChanged](/docs/de/hooks#cwdchanged) und [FileChanged](/docs/de/hooks#filechanged)-Hooks gefüllt |419| `CLAUDE_ENV_FILE` | Pfad zu einem Shell-Skript, dessen Inhalt Claude Code vor jedem Bash-Befehl im gleichen Shell-Prozess ausführt, daher sind Exports in der Datei für den Befehl sichtbar. Verwenden Sie, um virtualenv- oder Conda-Aktivierung über Befehle hinweg zu persistieren. Wird auch dynamisch von [SessionStart](/docs/de/hooks#persist-environment-variables), [Setup](/docs/de/hooks#setup), [CwdChanged](/docs/de/hooks#cwdchanged) und [FileChanged](/docs/de/hooks#filechanged)-Hooks gefüllt |

420| `CLAUDE_JOB_DIR` | Wird von Claude Code in jeder [Background-Sitzung](/docs/de/agent-view) auf das `~/.claude/jobs/<id>`-Verzeichnis dieser Sitzung gesetzt. Shell-Befehle, die die Sitzung ausführt, erben es. Schreiben Sie Scratch-Dateien zu [`$CLAUDE_JOB_DIR/tmp`](/docs/de/agent-view#where-state-is-stored). Claude's `Write`- und `Edit`-Aufrufe dort fragen nicht nach Genehmigung, und das Verzeichnis wird entfernt, wenn die Sitzung gelöscht wird |420| `CLAUDE_JOB_DIR` | Wird von Claude Code in jeder [Hintergrund-Sitzung](/docs/de/agent-view) auf das `~/.claude/jobs/<id>`-Verzeichnis dieser Sitzung gesetzt. Shell-Befehle, die die Sitzung ausführt, erben es. Schreiben Sie Scratch-Dateien zu [`$CLAUDE_JOB_DIR/tmp`](/docs/de/agent-view#where-state-is-stored). Claude's `Write`- und `Edit`-Aufrufe dort fragen nicht nach Genehmigung, und das Verzeichnis wird entfernt, wenn die Sitzung gelöscht wird |

421| `CLAUDE_PID` | Claude Code setzt dies auf seine eigene Prozess-ID in den Subprozessen, die es spawnt: Bash- und PowerShell-Tool-Befehle und Hook-Befehle. Auf Linux verwendet die Bash-Tool's Shell-Integration es, um einen `pkill`-Pattern zu weigern, der den Claude Code-Prozess selbst entsprechen würde; siehe [die Fehler-Referenz](/docs/de/errors#pkill-pattern-matches-the-claude-code-process). Lesen Sie es aus Ihren eigenen Skripten, um den übergeordneten Claude Code-Prozess absichtlich zu identifizieren oder zu signalisieren. Erfordert Claude Code v2.1.214 oder später |421| `CLAUDE_PID` | Claude Code setzt dies auf seine eigene Prozess-ID in den Subprozessen, die es spawnt: Bash- und PowerShell-Tool-Befehle und Hook-Befehle. Auf Linux verwendet die Bash-Tool's Shell-Integration es, um ein `pkill`-Muster zu weigern, das den Claude Code-Prozess selbst entsprechen würde; siehe [die Fehler-Referenz](/docs/de/errors#pkill-pattern-matches-the-claude-code-process). Lesen Sie es aus Ihren eigenen Skripten, um den übergeordneten Claude Code-Prozess absichtlich zu identifizieren oder zu signalisieren. Erfordert Claude Code v2.1.214 oder später |

422| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | Präfix für auto-generierte [Remote Control](/docs/de/remote-control)-Sitzungs-Namen, wenn kein expliziter Name bereitgestellt wird. Standardmäßig der Hostname Ihrer Maschine, produziert Namen wie `myhost-graceful-unicorn`. Die `--remote-control-session-name-prefix`-CLI-Flag setzt den gleichen Wert für einen einzelnen Aufruf |422| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | Präfix für Auto-generierte [Remote Control](/docs/de/remote-control)-Sitzungs-Namen, wenn kein expliziter Name bereitgestellt wird. Standard ist der Hostname Ihrer Maschine, was Namen wie `myhost-graceful-unicorn` produziert. Das `--remote-control-session-name-prefix`-CLI-Flag setzt den gleichen Wert für einen einzelnen Aufruf |

423| `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` | Deadline in Millisekunden für das erste Response-Byte einer Streaming-Anfrage, auf den Verbindungen, wo die [First-Byte-Deadline](/docs/de/network-config#streaming-idle-watchdogs) läuft. Für wie Claude Code es begrenzt, die Extra-Zeit, die es für große Request-Bodies hinzufügt, und wie es die Deadline wählt, wenn Sie dies nicht gesetzt lassen, siehe [Keine Antwort von API](/docs/de/errors#no-response-from-api). Erfordert Claude Code v2.1.242 oder später |423| `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` | Frist in Millisekunden für das erste Response-Byte einer Streaming-Anfrage, auf den Verbindungen, wo die [First-Byte-Frist](/docs/de/network-config#streaming-idle-watchdogs) läuft. Für wie Claude Code es begrenzt, die zusätzliche Zeit, die es für große Request-Bodies hinzufügt, und wie es die Frist wählt, wenn Sie dies nicht gesetzt lassen, siehe [Keine Antwort von API](/docs/de/errors#no-response-from-api). Erfordert Claude Code v2.1.242 oder später |

424| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Timeout in Millisekunden, bevor die Event- und Byte-Level-Streaming-Idle-Watchdogs eine steckengebliebene Verbindung schließen. Wenn Sie diese Variable explizit setzen, ist das Minimum `300000` (5 Minuten); niedrigere Werte werden stillschweigend auf die Obergrenze geklemmt, um Extended-Thinking-Pausen und Proxy-Buffering zu absorbieren, und der Byte-Level-Watchdog begrenzt den Wert auf 30 Minuten. `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` hat Vorrang über diese Variable für den Byte-Level-Watchdog. Für die Pro-Watchdog-nicht-gesetzten Standards siehe [Streaming-Idle-Watchdogs](/docs/de/network-config#streaming-idle-watchdogs) |424| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Timeout in Millisekunden, bevor die Event- und Byte-Level-Streaming-Idle-Watchdogs eine steckengebliebene Verbindung schließen. Wenn Sie diese Variable explizit setzen, ist das Minimum `300000` (5 Minuten); niedrigere Werte werden stillschweigend auf die Obergrenze begrenzt, um Extended-Thinking-Pausen und Proxy-Buffering zu absorbieren, und der Byte-Level-Watchdog begrenzt den Wert auf 30 Minuten. `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` hat Vorrang über diese Variable für den Byte-Level-Watchdog. Für die Pro-Watchdog-nicht-gesetzten Standards siehe [Streaming-Idle-Watchdogs](/docs/de/network-config#streaming-idle-watchdogs) |

425| `CLAUDE_SUBAGENT_BG_SHELL_MAX_MS` | Entfernt in v2.1.260 und jetzt ein No-Op. Begrenzte zuvor, wie lange ein [Background-Shell-Befehl](/docs/de/interactive-mode#background-bash-commands), den ein [Subagent](/docs/de/sub-agents) gestartet hat, laufen konnte, in Millisekunden, mit einem 60-Minuten-Standard. Siehe [die Background-Befehl-Lebensdauer-Regeln](/docs/de/tools-reference#background-commands) |425| `CLAUDE_SUBAGENT_BG_SHELL_MAX_MS` | Entfernt in v2.1.260 und jetzt ein No-Op. Begrenzte zuvor, wie lange ein [Hintergrund-Shell-Befehl](/docs/de/interactive-mode#background-bash-commands), den ein [Subagent](/docs/de/sub-agents) gestartet hat, in Millisekunden laufen konnte, mit einem 60-Minuten-Standard. Siehe [die Hintergrund-Befehls-Lebenszyklusregeln](/docs/de/tools-reference#background-commands) |

426| `DEBUG` | Setzen Sie auf `1`, um Debug-Modus zu aktivieren, äquivalent zum Starten mit [`--debug`](/docs/de/cli-reference#cli-flags). Debug-Logs werden zu `~/.claude/debug/<session-id>.txt` geschrieben, oder zum Pfad, der von `CLAUDE_CODE_DEBUG_LOGS_DIR` gesetzt wird. Nur die Truthy-Werte `1`, `true`, `yes` und `on` aktivieren Debug-Modus, daher aktivieren Namespace-Muster wie `DEBUG=express:*`, die für andere Tools gesetzt sind, es nicht |426| `DEBUG` | Setzen Sie auf `1`, um Debug-Modus zu aktivieren, entsprechend dem Start mit [`--debug`](/docs/de/cli-reference#cli-flags). Debug-Logs werden zu `~/.claude/debug/<session-id>.txt` geschrieben, oder zum Pfad, der von `CLAUDE_CODE_DEBUG_LOGS_DIR` gesetzt wird. Nur die Truthy-Werte `1`, `true`, `yes` und `on` aktivieren Debug-Modus, daher triggern Namespace-Muster wie `DEBUG=express:*`, die für andere Tools gesetzt sind, es nicht |

427| `DISABLE_AUTOUPDATER` | Setzen Sie auf `1`, um automatische Background-Updates zu deaktivieren. Manuelles `claude update` funktioniert immer noch. Verwenden Sie `DISABLE_UPDATES`, um beides zu blockieren |427| `DISABLE_AUTOUPDATER` | Setzen Sie auf `1`, um automatische Hintergrund-Updates zu deaktivieren. Manuelles `claude update` funktioniert immer noch. Verwenden Sie `DISABLE_UPDATES`, um beides zu blockieren |

428| `DISABLE_AUTO_COMPACT` | Setzen Sie auf `1`, um automatische Compaction zu deaktivieren, wenn sich dem Kontext-Limit nähert. Der manuelle `/compact`-Befehl bleibt verfügbar. Verwenden Sie, wenn Sie explizite Kontrolle darüber möchten, wann Compaction auftritt. Überschreibt die [`autoCompactEnabled`](/docs/de/settings-reference#autocompactenabled)-Einstellung |428| `DISABLE_AUTO_COMPACT` | Setzen Sie auf `1`, um automatische Compaction zu deaktivieren, wenn sich dem Kontext-Limit nähert. Der manuelle `/compact`-Befehl bleibt verfügbar. Verwenden Sie, wenn Sie explizite Kontrolle darüber möchten, wann Compaction auftritt. Überschreibt die [`autoCompactEnabled`](/docs/de/settings-reference#autocompactenabled)-Einstellung |

429| `DISABLE_COMPACT` | Setzen Sie auf `1`, um alle Compaction zu deaktivieren: sowohl automatische Compaction als auch den manuellen `/compact`-Befehl |429| `DISABLE_COMPACT` | Setzen Sie auf `1`, um alle Compaction zu deaktivieren: sowohl automatische Compaction als auch den manuellen `/compact`-Befehl |

430| `DISABLE_COST_WARNINGS` | Setzen Sie auf `1`, um Kosten-Warnungs-Nachrichten zu deaktivieren |430| `DISABLE_COST_WARNINGS` | Setzen Sie auf `1`, um Kosten-Warnungs-Nachrichten zu deaktivieren |

431| `DISABLE_DOCTOR_COMMAND` | Setzen Sie auf `1`, um den [`/doctor`](/docs/de/commands#all-commands)-Setup-Checkup-Skill und seinen `/checkup`-Alias zu verbergen. Nützlich für verwaltete Deployments, wo Benutzer Setup-Diagnosen nicht von einer Sitzung ausführen sollten. Betrifft nicht den `claude doctor`-Terminal-Befehl. Vor v2.1.205 verbarg diese Variable den `/doctor`-Diagnose-Bildschirm-Befehl |431| `DISABLE_DOCTOR_COMMAND` | Setzen Sie auf `1`, um den [`/doctor`](/docs/de/commands#all-commands)-Setup-Checkup-Skill und seinen `/checkup`-Alias zu verbergen. Nützlich für verwaltete Deployments, wo Benutzer Setup-Diagnostiken nicht von einer Sitzung ausführen sollten. Betrifft nicht den `claude doctor`-Terminal-Befehl. Vor v2.1.205 verbarg diese Variable den `/doctor`-Diagnostik-Bildschirm-Befehl |

432| `DISABLE_ERROR_REPORTING` | Setzen Sie auf einen beliebigen nicht-leeren Wert, wie `1`, um sich von Fehlerberichterstattung abzumelden. **Das Setzen auf `0` oder `false` meldet sich immer noch ab**, im Gegensatz zu den meisten Ein/Aus-Variablen; heben Sie die Einstellung der Variablen auf, um Fehlerberichterstattung wieder einzuschalten |432| `DISABLE_ERROR_REPORTING` | Setzen Sie auf einen beliebigen nicht-leeren Wert, wie `1`, um sich von Fehlerberichterstattung abzumelden. **Das Setzen auf `0` oder `false` meldet sich immer noch ab**, im Gegensatz zu den meisten Ein/Aus-Variablen; heben Sie die Variable auf, um Fehlerberichterstattung wieder einzuschalten |

433| `DISABLE_EXTRA_USAGE_COMMAND` | Setzen Sie auf `1`, um den `/usage-credits`-Befehl zu verbergen, der Benutzern erlaubt, zusätzliche Nutzung über Rate-Limits hinaus zu kaufen |433| `DISABLE_EXTRA_USAGE_COMMAND` | Setzen Sie auf `1`, um den `/usage-credits`-Befehl zu verbergen, der Benutzern ermöglicht, zusätzliche Nutzung über Rate-Limits zu kaufen |

434| `DISABLE_FEEDBACK_COMMAND` | Setzen Sie auf `1`, um den `/feedback`-Befehl und [Claude-entworfenes Feedback](/docs/de/tools-reference#sendfeedback-tool-behavior) zu deaktivieren. Deaktiviert auch `/bug` und `/share`, die durch den gleichen Pfad berichten; vor v2.1.212 waren sie Aliase von `/feedback`, daher war der Befehl unter jedem Namen deaktiviert. Der ältere Name `DISABLE_BUG_COMMAND` wird auch akzeptiert |434| `DISABLE_FEEDBACK_COMMAND` | Setzen Sie auf `1`, um den `/feedback`-Befehl und [Claude-entworfenes Feedback](/docs/de/tools-reference#sendfeedback-tool-behavior) zu deaktivieren. Deaktiviert auch `/bug` und `/share`, die über den gleichen Pfad berichten; vor v2.1.212 waren sie Aliase von `/feedback`, daher war der Befehl unter jedem Namen deaktiviert. Der ältere Name `DISABLE_BUG_COMMAND` wird auch akzeptiert |

435| `DISABLE_GROWTHBOOK` | Setzen Sie auf `1` oder `true`, um GrowthBook-Feature-Flag-Abruf zu deaktivieren und Code-Standards für jedes Flag zu verwenden. Dies macht [Remote Control](/docs/de/remote-control#requirements) und die anderen [Features, die Feature-Flag-Abruf benötigen](#features-that-need-feature-flag-fetching) nicht verfügbar. Das Setzen auf `0` oder `false` lässt Abruf an. Telemetrie-Event-Protokollierung bleibt an, es sei denn, `DISABLE_TELEMETRY` ist auch gesetzt |435| `DISABLE_GROWTHBOOK` | Setzen Sie auf `1` oder `true`, um GrowthBook-Feature-Flag-Abrufe zu deaktivieren und Code-Standards für jedes Flag zu verwenden. Dies macht [Remote Control](/docs/de/remote-control#requirements) und die anderen [Features, die Feature-Flag-Abrufe benötigen](#features-that-need-feature-flag-fetching) nicht verfügbar. Das Setzen auf `0` oder `false` lässt Abrufe eingeschaltet. Telemetrie-Event-Protokollierung bleibt eingeschaltet, es sei denn, `DISABLE_TELEMETRY` ist auch gesetzt |

436| `DISABLE_INSTALLATION_CHECKS` | Setzen Sie auf `1`, um Installationswarnungen zu deaktivieren. Verwenden Sie nur, wenn Sie den Installationsort manuell verwalten, da dies Probleme mit Standard-Installationen maskieren kann |436| `DISABLE_INSTALLATION_CHECKS` | Setzen Sie auf `1`, um Installationswarnungen zu deaktivieren. Verwenden Sie nur, wenn Sie den Installationsort manuell verwalten, da dies Probleme mit Standard-Installationen maskieren kann |

437| `DISABLE_INSTALL_GITHUB_APP_COMMAND` | Setzen Sie auf `1`, um den `/install-github-app`-Befehl zu verbergen. Bereits verborgen, wenn Sie Drittanbieter-Provider verwenden (Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry) |437| `DISABLE_INSTALL_GITHUB_APP_COMMAND` | Setzen Sie auf `1`, um den `/install-github-app`-Befehl zu verbergen. Bereits verborgen, wenn Sie Drittanbieter-Provider verwenden (Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry) |

438| `DISABLE_INTERLEAVED_THINKING` | Setzen Sie auf `1`, um das Senden des Interleaved-Thinking-Beta-Headers zu verhindern. Nützlich, wenn Ihr LLM-Gateway oder Provider [Interleaved Thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#interleaved-thinking) nicht unterstützt |438| `DISABLE_INTERLEAVED_THINKING` | Setzen Sie auf `1`, um zu verhindern, dass der Interleaved-Thinking-Beta-Header gesendet wird. Nützlich, wenn Ihr LLM-Gateway oder Provider [Interleaved Thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#interleaved-thinking) nicht unterstützt |

439| `DISABLE_LOGIN_COMMAND` | Setzen Sie auf `1`, um den `/login`-Befehl zu verbergen. Nützlich, wenn Authentifizierung extern über API-Schlüssel oder `apiKeyHelper` behandelt wird |439| `DISABLE_LOGIN_COMMAND` | Setzen Sie auf `1`, um den `/login`-Befehl zu verbergen. Nützlich, wenn Authentifizierung extern über API-Schlüssel oder `apiKeyHelper` gehandhabt wird |

440| `DISABLE_LOGOUT_COMMAND` | Setzen Sie auf `1`, um den `/logout`-Befehl zu verbergen |440| `DISABLE_LOGOUT_COMMAND` | Setzen Sie auf `1`, um den `/logout`-Befehl zu verbergen |

441| `DISABLE_PROMPT_CACHING` | Setzen Sie auf `1`, um [Prompt-Caching](/docs/de/prompt-caching#disable-prompt-caching) für alle Modelle zu deaktivieren (hat Vorrang vor Pro-Modell-Einstellungen) |441| `DISABLE_PROMPT_CACHING` | Setzen Sie auf `1`, um [Prompt-Caching](/docs/de/prompt-caching#disable-prompt-caching) für alle Modelle zu deaktivieren (hat Vorrang vor Pro-Modell-Einstellungen) |

442| `DISABLE_PROMPT_CACHING_FABLE` | Setzen Sie auf `1`, um Prompt-Caching für Fable-Modelle zu deaktivieren |442| `DISABLE_PROMPT_CACHING_FABLE` | Setzen Sie auf `1`, um Prompt-Caching für Fable-Modelle zu deaktivieren |

443| `DISABLE_PROMPT_CACHING_HAIKU` | Setzen Sie auf `1`, um Prompt-Caching für Haiku-Modelle zu deaktivieren |443| `DISABLE_PROMPT_CACHING_HAIKU` | Setzen Sie auf `1`, um Prompt-Caching für Haiku-Modelle zu deaktivieren |

444| `DISABLE_PROMPT_CACHING_OPUS` | Setzen Sie auf `1`, um Prompt-Caching für Opus-Modelle zu deaktivieren |444| `DISABLE_PROMPT_CACHING_OPUS` | Setzen Sie auf `1`, um Prompt-Caching für Opus-Modelle zu deaktivieren |

445| `DISABLE_PROMPT_CACHING_SONNET` | Setzen Sie auf `1`, um Prompt-Caching für Sonnet-Modelle zu deaktivieren |445| `DISABLE_PROMPT_CACHING_SONNET` | Setzen Sie auf `1`, um Prompt-Caching für Sonnet-Modelle zu deaktivieren |

446| `DISABLE_TELEMETRY` | Setzen Sie auf einen beliebigen nicht-leeren Wert, wie `1`, um sich von Telemetrie abzumelden. **Das Setzen auf `0` oder `false` meldet sich immer noch ab**, im Gegensatz zu den meisten Ein/Aus-Variablen; heben Sie die Einstellung der Variablen auf, um Telemetrie wieder einzuschalten. Telemetrie-Events enthalten keine Benutzerdaten wie Code, Dateipfade oder Bash-Befehle. Deaktiviert auch Feature-Flag-Abruf mit der gleichen Auswirkung wie `DISABLE_GROWTHBOOK`, was [Remote Control](/docs/de/remote-control#requirements) und die anderen [Features, die Feature-Flag-Abruf benötigen](#features-that-need-feature-flag-fetching) nicht verfügbar macht. Siehe [Telemetrie für Ihre Organisation ausschalten](/docs/de/managed-settings#turn-telemetry-off-for-your-organization) |446| `DISABLE_TELEMETRY` | Setzen Sie auf einen beliebigen nicht-leeren Wert, wie `1`, um sich von Telemetrie abzumelden. **Das Setzen auf `0` oder `false` meldet sich immer noch ab**, im Gegensatz zu den meisten Ein/Aus-Variablen; heben Sie die Variable auf, um Telemetrie wieder einzuschalten. Telemetrie-Events enthalten keine Benutzerdaten wie Code, Dateipfade oder Bash-Befehle. Deaktiviert auch Feature-Flag-Abrufe mit der gleichen Auswirkung wie `DISABLE_GROWTHBOOK`, was [Remote Control](/docs/de/remote-control#requirements) und die anderen [Features, die Feature-Flag-Abrufe benötigen](#features-that-need-feature-flag-fetching) nicht verfügbar macht. Siehe [Telemetrie für Ihre Organisation ausschalten](/docs/de/managed-settings#turn-telemetry-off-for-your-organization) |

447| `DISABLE_UPDATES` | Setzen Sie auf `1`, um alle Updates zu blockieren, einschließlich manuelles `claude update` und `claude install`. Stricter als `DISABLE_AUTOUPDATER`. Verwenden Sie, wenn Sie Claude Code über Ihre eigenen Kanäle verteilen und Benutzer sich nicht selbst aktualisieren sollten |447| `DISABLE_UPDATES` | Setzen Sie auf `1`, um alle Updates zu blockieren, einschließlich manuelles `claude update` und `claude install`. Strenger als `DISABLE_AUTOUPDATER`. Verwenden Sie, wenn Sie Claude Code über Ihre eigenen Kanäle verteilen und Benutzer sich nicht selbst aktualisieren sollten |

448| `DISABLE_UPGRADE_COMMAND` | Setzen Sie auf `1`, um den `/upgrade`-Befehl zu verbergen |448| `DISABLE_UPGRADE_COMMAND` | Setzen Sie auf `1`, um den `/upgrade`-Befehl zu verbergen |

449| `DO_NOT_TRACK` | Setzen Sie auf `1`, um sich von Telemetrie abzumelden, mit der gleichen Auswirkung wie `DISABLE_TELEMETRY`, einschließlich der Nicht-Verfügbarkeit von [Remote Control](/docs/de/remote-control#requirements) und den anderen [Features, die Feature-Flag-Abruf benötigen](#features-that-need-feature-flag-fetching). Claude Code liest diese Variable als Standard-Boolean, daher lässt `0` Telemetrie an, und ehrt sie als die Cross-Tool-Konvention, die von vielen Developer-CLIs erkannt wird |449| `DO_NOT_TRACK` | Setzen Sie auf `1`, um sich von Telemetrie abzumelden, mit der gleichen Auswirkung wie `DISABLE_TELEMETRY`, einschließlich der Nicht-Verfügbarkeit von [Remote Control](/docs/de/remote-control#requirements) und den anderen [Features, die Feature-Flag-Abrufe benötigen](#features-that-need-feature-flag-fetching). Claude Code liest diese Variable als Standard-Boolean, daher lässt `0` Telemetrie eingeschaltet, und ehrt sie als die Cross-Tool-Konvention, die von vielen Developer-CLIs erkannt wird |

450| `ENABLE_BETA_TRACING_DETAILED` | Setzen Sie auf `1`, zusammen mit `BETA_TRACING_ENDPOINT`, um [detailliertes Beta-Tracing](/docs/de/monitoring-usage#traces-beta) zu aktivieren, das Content-tragende Span-Attribute und den `claude_code.hook`-Span hinzufügt. Interaktive CLI-Sitzungen erfordern auch, dass Ihre Organisation für das Beta auf die Allowlist gesetzt ist. Beide Variablen werden in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert |450| `ENABLE_BETA_TRACING_DETAILED` | Setzen Sie auf `1`, zusammen mit `BETA_TRACING_ENDPOINT`, um [detailliertes Beta-Tracing](/docs/de/monitoring-usage#traces-beta) einzuschalten, das Content-tragende Span-Attribute und den `claude_code.hook`-Span hinzufügt. Interaktive CLI-Sitzungen erfordern auch, dass Ihre Organisation für das Beta auf die Allowlist gesetzt ist. Beide Variablen werden in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert |

451| `ENABLE_CLAUDEAI_MCP_SERVERS` | Setzen Sie auf `false`, um Claude Code davon abzuhalten, [claude.ai-MCP-Server](/docs/de/mcp#use-mcp-servers-from-claude-ai) zu fetchen. Standardmäßig für angemeldete Benutzer aktiviert. Um Pro-Projekt oder Pro-Org zu deaktivieren, setzen Sie stattdessen [`disableClaudeAiConnectors`](/docs/de/settings-reference#disableclaudeaiconnectors) in Einstellungen |451| `ENABLE_CLAUDEAI_MCP_SERVERS` | Setzen Sie auf `false`, um Claude Code daran zu hindern, [claude.ai MCP-Server](/docs/de/mcp#use-mcp-servers-from-claude-ai) zu fetchen. Standardmäßig für angemeldete Benutzer aktiviert. Um Pro-Projekt oder Pro-Org zu deaktivieren, setzen Sie stattdessen [`disableClaudeAiConnectors`](/docs/de/settings-reference#disableclaudeaiconnectors) in Einstellungen |

452| `ENABLE_PROMPT_CACHING_1H` | Setzen Sie auf `1`, um eine 1-Stunden-[Prompt-Cache-TTL](/docs/de/prompt-caching#cache-lifetime) anstelle der Standard-5-Minuten anzufordern. Gedacht für API-Schlüssel-, [Amazon Bedrock](/docs/de/amazon-bedrock)-, [Google Cloud's Agent Platform](/docs/de/google-vertex-ai)-, [Microsoft Foundry](/docs/de/microsoft-foundry)- und [Claude Platform on AWS](/docs/de/claude-platform-on-aws)-Benutzer. Abonnement-Benutzer innerhalb der enthaltenen Nutzung erhalten die 1-Stunden-TTL automatisch auf der [Hauptkonversation](/docs/de/prompt-caching#which-ttl-each-request-gets). Abonnement-Benutzer, die auf [Nutzungs-Credits](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) zeichnen, können es setzen, um die 1-Stunden-TTL zu behalten. 1-Stunden-Cache-Schreibvorgänge werden mit einer höheren Rate berechnet. Um die TTL stattdessen Pro-Request-Bucket zu wählen, verwenden Sie `CLAUDE_CODE_PROMPT_CACHE_TTL` und `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, die Vorrang vor dieser Variablen haben |452| `ENABLE_PROMPT_CACHING_1H` | Setzen Sie auf `1`, um eine 1-Stunden-[Prompt-Cache-TTL](/docs/de/prompt-caching#cache-lifetime) statt der Standard-5-Minuten anzufordern. Gedacht für API-Schlüssel-, [Amazon Bedrock](/docs/de/amazon-bedrock)-, [Google Cloud's Agent Platform](/docs/de/google-vertex-ai)-, [Microsoft Foundry](/docs/de/microsoft-foundry)- und [Claude Platform on AWS](/docs/de/claude-platform-on-aws)-Benutzer. Abonnement-Benutzer innerhalb der enthaltenen Nutzung erhalten die 1-Stunden-TTL automatisch auf der [Hauptkonversation](/docs/de/prompt-caching#which-ttl-each-request-gets). Abonnement-Benutzer, die auf [Nutzungs-Credits](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) zeichnen, können es setzen, um die 1-Stunden-TTL zu behalten. 1-Stunden-Cache-Schreibvorgänge werden mit einer höheren Rate berechnet. Um die TTL statt pro Request-Bucket zu wählen, verwenden Sie `CLAUDE_CODE_PROMPT_CACHE_TTL` und `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, die Vorrang vor dieser Variable haben |

453| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | Veraltet. Verwenden Sie stattdessen `ENABLE_PROMPT_CACHING_1H` |453| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | Veraltet. Verwenden Sie stattdessen `ENABLE_PROMPT_CACHING_1H` |

454| `ENABLE_TOOL_SEARCH` | Kontrolliert [MCP-Tool-Suche](/docs/de/mcp#scale-with-mcp-tool-search). Nicht gesetzt, Claude Code verschiebt alle MCP-Tools standardmäßig. Es lädt sie immer noch upfront auf Google Cloud's Agent Platform-Modellen früher als die Claude 4.5-Generation, auf einer Microsoft Foundry-Deployment auf Azure gehostet, und wenn `ANTHROPIC_BASE_URL` auf einen Nicht-First-Party-Host verweist. `true` verschiebt immer und sendet den Beta-Header, außer auf diesen gleichen Agent Platform-Modellen und Microsoft Foundry-Deployments; Anfragen schlagen auf Proxies fehl, die `tool_reference` nicht unterstützen. `auto` lädt upfront, wenn Tool-Definitionen in 10% des Kontexts passen. `auto:N` setzt einen benutzerdefinierten Schwellenwert, wie `auto:5` für 5%. `false` lädt alle Tools upfront. Ein Wert, den Sie selbst setzen, wird ignoriert, wenn `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` gesetzt ist. Vor v2.1.221 deaktivierte Claude Code Tool-Suche für alle Modelle auf Google Cloud's Agent Platform, es sei denn, Sie setzen diese Variable auf `true` |454| `ENABLE_TOOL_SEARCH` | Steuert [MCP-Tool-Suche](/docs/de/mcp#scale-with-mcp-tool-search). Nicht gesetzt, Claude Code verschiebt alle MCP-Tools standardmäßig. Es lädt sie immer noch upfront auf Google Cloud's Agent Platform-Modellen früher als die Claude 4.5-Generation, auf einer Microsoft Foundry-Bereitstellung, die auf Azure gehostet wird, und wenn `ANTHROPIC_BASE_URL` auf einen Host eines Drittanbieters zeigt. `true` verschiebt immer und sendet den Beta-Header, außer auf diesen gleichen Agent Platform-Modellen und Microsoft Foundry-Bereitstellungen; Anfragen schlagen auf Proxies fehl, die `tool_reference` nicht unterstützen. `auto` lädt upfront, wenn Tool-Definitionen in 10% des Kontexts passen. `auto:N` setzt einen benutzerdefinierten Schwellenwert, wie `auto:5` für 5%. `false` lädt alle Tools upfront. Ein Wert, den Sie selbst setzen, wird ignoriert, wenn `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` gesetzt ist. Vor v2.1.221 deaktivierte Claude Code Tool-Suche für alle Modelle auf Google Cloud's Agent Platform, es sei denn, Sie setzen diese Variable auf `true` |

455| `FALLBACK_FOR_ALL_PRIMARY_MODELS` | Setzen Sie auf einen beliebigen nicht-leeren Wert, wie `1`, um Claude Code zu veranlassen, bei wiederholten Overload-Fehlern für jedes Modell zu stoppen, wenn kein Fallback-Modell konfiguriert ist. **Das Setzen auf `0` oder `false` aktiviert dies immer noch**, im Gegensatz zu den meisten Ein/Aus-Variablen; heben Sie die Einstellung der Variablen auf, um das Standard-Wiederholungs-Verhalten wiederherzustellen. Ohne dies stoppt Claude Code das Wiederholen auf diese Weise auf Modellen, die es als Opus-, Fable- oder Mythos-Modelle erkennt, wenn Sie sich mit einem API-Schlüssel oder einem [Drittanbieter-Provider](/docs/de/third-party-integrations) authentifizieren, anstelle eines Claude-Abonnements. Auf Claude Code v2.1.160 oder später wechselt Claude Code zu Ihrem konfigurierten [Fallback-Modell-Kette](/docs/de/model-config#fallback-model-chains) bei wiederholten Overload-Fehlern für jedes primäre Modell, daher betrifft diese Variable nicht das Wechseln zu einem Fallback-Modell |455| `FALLBACK_FOR_ALL_PRIMARY_MODELS` | Setzen Sie auf einen beliebigen nicht-leeren Wert, wie `1`, um Claude Code zu veranlassen, bei wiederholten Überladungs-Fehlern für jedes Modell zu stoppen, wenn kein Fallback-Modell konfiguriert ist. **Das Setzen auf `0` oder `false` aktiviert dies immer noch**, im Gegensatz zu den meisten Ein/Aus-Variablen; heben Sie die Variable auf, um das Standard-Wiederholungs-Verhalten wiederherzustellen. Ohne es stoppt Claude Code das Wiederholen auf diese Weise auf Modellen, die es als Opus-, Fable- oder Mythos-Modelle erkennt, wenn Sie sich mit einem API-Schlüssel oder einem [Drittanbieter-Provider](/docs/de/third-party-integrations) statt einem Claude-Abonnement authentifizieren. Auf Claude Code v2.1.160 oder später wechselt Claude Code zu Ihrer konfigurierten [Fallback-Modell-Kette](/docs/de/model-config#fallback-model-chains) bei wiederholten Überladungs-Fehlern für jedes primäre Modell, daher betrifft diese Variable nicht den Wechsel zu einem Fallback-Modell |

456| `FORCE_AUTOUPDATE_PLUGINS` | Setzen Sie auf `1`, um Plugin-Auto-Updates zu erzwingen, auch wenn der Haupt-Auto-Updater über `DISABLE_AUTOUPDATER` deaktiviert ist |456| `FORCE_AUTOUPDATE_PLUGINS` | Setzen Sie auf `1`, um Plugin-Auto-Updates zu erzwingen, auch wenn der Haupt-Auto-Updater über `DISABLE_AUTOUPDATER` deaktiviert ist |

457| `FORCE_HYPERLINK` | Setzen Sie auf `1`, um klickbare OSC 8-Hyperlinks zu aktivieren, wenn Ihr Terminal sie unterstützt, aber nicht auto-erkannt wird, oder `0`, um sie zu deaktivieren. Wenn nicht gesetzt, aktiviert Claude Code Hyperlinks nur, wenn es Terminal-Unterstützung erkennt. Claude Code parst diesen Wert als Zahl, nicht als Boolean, daher aktiviert ein Wert wie `false`, `no` oder `off` Hyperlinks, anstatt sie zu deaktivieren. Der Footer [PR- oder Merge-Request-Badge](/docs/de/interactive-mode#pr-review-status) wird als Hyperlink gerendert, auch wenn Claude Code Terminal-Unterstützung nicht erkennen kann, wie über SSH. Setzen Sie `0`, um den Badge als einfachen Text zu rendern |457| `FORCE_HYPERLINK` | Setzen Sie auf `1`, um klickbare OSC 8-Hyperlinks zu aktivieren, wenn Ihr Terminal sie unterstützt, aber nicht auto-erkannt wird, oder `0`, um sie zu deaktivieren. Wenn nicht gesetzt, aktiviert Claude Code Hyperlinks nur, wenn es Terminal-Unterstützung erkennt. Claude Code analysiert diesen Wert als Zahl, nicht als Boolean, daher aktiviert ein Wert wie `false`, `no` oder `off` Hyperlinks, anstatt sie zu deaktivieren. Der Footer [PR- oder Merge-Request-Badge](/docs/de/interactive-mode#pr-review-status) wird als Hyperlink gerendert, auch wenn Claude Code Terminal-Unterstützung nicht erkennen kann, wie über SSH. Setzen Sie `0`, um den Badge als einfachen Text zu rendern |

458| `FORCE_PROMPT_CACHING_5M` | Setzen Sie auf `1`, um die 5-Minuten-Prompt-Cache-TTL zu erzwingen, auch wenn 1-Stunden-TTL andernfalls gelten würde. Überschreibt `CLAUDE_CODE_PROMPT_CACHE_TTL`, `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, `ENABLE_PROMPT_CACHING_1H` und die `promptCacheTtl`- und `subagentPromptCacheTtl`-Einstellungen |458| `FORCE_PROMPT_CACHING_5M` | Setzen Sie auf `1`, um die 5-Minuten-Prompt-Cache-TTL zu erzwingen, auch wenn 1-Stunden-TTL andernfalls gelten würde. Überschreibt `CLAUDE_CODE_PROMPT_CACHE_TTL`, `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, `ENABLE_PROMPT_CACHING_1H` und die `promptCacheTtl`- und `subagentPromptCacheTtl`-Einstellungen |

459| `HTTP_PROXY` | Geben Sie HTTP-Proxy-Server für Netzwerk-Verbindungen an |459| `HTTP_PROXY` | Geben Sie HTTP-Proxy-Server für Netzwerk-Verbindungen an |

460| `HTTPS_PROXY` | Geben Sie HTTPS-Proxy-Server für Netzwerk-Verbindungen an |460| `HTTPS_PROXY` | Geben Sie HTTPS-Proxy-Server für Netzwerk-Verbindungen an |

461| `IS_DEMO` | Setzen Sie auf einen beliebigen nicht-leeren Wert, wie `1`, um Demo-Modus zu aktivieren: verbirgt Ihre E-Mail und Organisations-Namen aus dem Header und `/status`-Ausgabe, und überspringt Onboarding. **Das Setzen auf `0` oder `false` aktiviert immer noch Demo-Modus**, im Gegensatz zu den meisten Ein/Aus-Variablen; heben Sie die Einstellung der Variablen auf, um es auszuschalten. Nützlich beim Streamen oder Aufzeichnen einer Sitzung |461| `IS_DEMO` | Setzen Sie auf einen beliebigen nicht-leeren Wert, wie `1`, um Demo-Modus zu aktivieren: verbirgt Ihre E-Mail und Organisations-Namen aus dem Header und `/status`-Ausgabe, und überspringt Onboarding. **Das Setzen auf `0` oder `false` aktiviert immer noch Demo-Modus**, im Gegensatz zu den meisten Ein/Aus-Variablen; heben Sie die Variable auf, um ihn auszuschalten. Nützlich beim Streamen oder Aufzeichnen einer Sitzung |

462| `MAX_MCP_OUTPUT_TOKENS` | Maximale Anzahl von Tokens, die in MCP-Tool-Antworten erlaubt sind. Claude Code zeigt eine Warnung an, wenn die Ausgabe 10.000 Tokens überschreitet. Tools, die [`anthropic/maxResultSizeChars`](/docs/de/mcp#raise-the-limit-for-a-specific-tool) deklarieren, verwenden stattdessen dieses Zeichen-Limit für Text-Inhalt, aber Bild-Inhalt von diesen Tools unterliegt immer noch dieser Variablen (Standard: 25000) |462| `MAX_MCP_OUTPUT_TOKENS` | Maximale Anzahl von Tokens, die in MCP-Tool-Antworten erlaubt sind. Claude Code zeigt eine Warnung an, wenn die Ausgabe 10.000 Tokens überschreitet. Tools, die [`anthropic/maxResultSizeChars`](/docs/de/mcp#raise-the-limit-for-a-specific-tool) deklarieren, verwenden stattdessen dieses Zeichen-Limit für Text-Inhalt, aber Bild-Inhalt von diesen Tools unterliegt immer noch dieser Variable (Standard: 25000) |

463| `MAX_STRUCTURED_OUTPUT_RETRIES` | Anzahl der Versuche, die Claude Code erlaubt, wenn die Antwort des Modells die Validierung gegen das [`--json-schema`](/docs/de/cli-reference#cli-flags) im nicht-interaktiven Modus mit der `-p`-Flag fehlschlägt; nach so vielen fehlgeschlagenen Versuchen ohne gültige Ausgabe schlägt der Lauf fehl. Die gleiche Obergrenze gilt, wenn die strukturierte Ausgabe eines [Workflow](/docs/de/workflows)-Subagents die Validierung fehlschlägt. Standardmäßig 5, ein erster Versuch plus vier Wiederholungen |463| `MAX_STRUCTURED_OUTPUT_RETRIES` | Anzahl der Versuche, die Claude Code erlaubt, wenn die Antwort des Modells die Validierung gegen das [`--json-schema`](/docs/de/cli-reference#cli-flags) im nicht-interaktiven Modus mit dem `-p`-Flag fehlschlägt; nach so vielen fehlgeschlagenen Versuchen ohne gültige Ausgabe schlägt der Lauf fehl. Die gleiche Obergrenze gilt, wenn die strukturierte Ausgabe eines [Workflow](/docs/de/workflows)-Subagents die Validierung fehlschlägt. Standard 5, ein erster Versuch plus vier Wiederholungen |

464| `MAX_THINKING_TOKENS` | Festes Token-Budget für [Extended Thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking). Claude Code begrenzt es auf ein Token unter den Max-Output-Tokens der Anfrage und nie unter 1.024. Siehe `CLAUDE_CODE_MAX_OUTPUT_TOKENS` für wie dieses Limit gesetzt wird. Wenn nicht gesetzt und Denken aktiviert ist, wählen Modelle mit [adaptivem Denken](/docs/de/model-config#adjust-effort-level) ihre eigene Denk-Tiefe, und andere Modelle verwenden die Obergrenze. Setzen Sie auf `0`, um Denken auf der Anthropic API zu deaktivieren, außer auf Opus 5.5 und den Fable-Modellen, die Denken nicht ausschalten können. Bei [Drittanbieter-Providern](/docs/de/third-party-integrations) lässt `0` den `thinking`-Parameter aus statt. Mit Denken auf der Anthropic API ausgeschaltet sendet Claude Code Effort `high` statt einer höheren Ebene zu Modellen, die es weiß, [akzeptieren diese Kombination nicht](/docs/de/errors#effort-isnt-available-with-thinking-turned-off), wie Opus 5. Claude Code ignoriert nicht-Null-Werte auf adaptiven Denk-Modellen, außer auf den Modellen, wo `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` adaptives Denken ausschaltet |464| `MAX_THINKING_TOKENS` | Festes Token-Budget für [Extended Thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking). Claude Code begrenzt es auf ein Token unter den Max-Output-Tokens der Anfrage und nie unter 1.024. Siehe `CLAUDE_CODE_MAX_OUTPUT_TOKENS` für wie dieses Limit gesetzt wird. Wenn nicht gesetzt und Denken aktiviert ist, wählen Modelle mit [adaptivem Denken](/docs/de/model-config#adjust-effort-level) ihre eigene Denk-Tiefe, und andere Modelle verwenden die Obergrenze. Setzen Sie auf `0`, um Denken auf der Anthropic API zu deaktivieren, außer auf Opus 5.5 und den Fable-Modellen, die Denken nicht ausschalten können. Bei [Drittanbieter-Providern](/docs/de/third-party-integrations) lässt `0` den `thinking`-Parameter aus statt. Mit Denken auf der Anthropic API ausgeschaltet sendet Claude Code Effort `high` statt einer höheren Ebene an Modelle, die es weiß, [akzeptieren diese Kombination nicht](/docs/de/errors#effort-isnt-available-with-thinking-turned-off), wie Opus 5. Claude Code ignoriert nicht-Null-Werte auf adaptiven Denk-Modellen, außer auf den Modellen, wo `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` adaptives Denken ausschaltet |

465| `MCP_CLIENT_SECRET` | OAuth-Client-Secret für MCP-Server, die [vorkonfigurierte Credentials](/docs/de/mcp#use-pre-configured-oauth-credentials) erfordern. Vermeidet den interaktiven Prompt beim Hinzufügen eines Servers mit `--client-secret` |465| `MCP_CLIENT_SECRET` | OAuth-Client-Secret für MCP-Server, die [vorkonfigurierte Anmeldedaten](/docs/de/mcp#use-pre-configured-oauth-credentials) erfordern. Vermeidet den interaktiven Prompt beim Hinzufügen eines Servers mit `--client-secret` |

466| `MCP_CONNECTION_NONBLOCKING` | Kontrolliert, ob Startup auf MCP-Server wartet, um sich zu verbinden, bevor die erste Abfrage. MCP-Startup ist standardmäßig nicht-blockierend: Server verbinden sich im Hintergrund und ihre Tools werden verfügbar, wenn sie fertig sind. Setzen Sie auf `0`, um Claude Code auf Server-Verbindung vor der ersten Abfrage zu warten. Server, die mit [`alwaysLoad: true`](/docs/de/mcp#exempt-a-server-from-deferral) konfiguriert sind, machen Startup immer noch warten, außer wenn sie vom [Discovery-Cache](/docs/de/mcp#server-status-detail) serviert werden, da ihre Tools vorhanden sein müssen, wenn der erste Prompt gebaut wird. Im nicht-interaktiven Modus (`-p`) ohne `--input-format stream-json` wartet Claude Code auch auf noch ausstehende Server vor dem ersten Turn, unabhängig von dieser Variablen. Wenn Sie [`--mcp-config`](/docs/de/cli-reference#cli-flags) explizit übergeben, hat das Warten eine längere Deadline; siehe diesen Flag-Eintrag für die Cached-Server-Ausnahme |466| `MCP_CONNECTION_NONBLOCKING` | Steuert, ob Startup auf MCP-Server wartet, um sich zu verbinden, bevor die erste Query. MCP-Startup ist standardmäßig nicht-blockierend: Server verbinden sich im Hintergrund und ihre Tools werden verfügbar, wenn sie fertig sind. Setzen Sie auf `0`, um Claude Code auf Server-Verbindung vor der ersten Query zu warten. Server, die mit [`alwaysLoad: true`](/docs/de/mcp#exempt-a-server-from-deferral) konfiguriert sind, machen Startup immer noch warten, außer wenn sie vom [Discovery-Cache](/docs/de/mcp#server-status-detail) bedient werden, da ihre Tools vorhanden sein müssen, wenn der erste Prompt gebaut wird. Im nicht-interaktiven Modus (`-p`) ohne `--input-format stream-json` wartet Claude Code auch auf noch ausstehende Server vor dem ersten Turn, unabhängig von dieser Variable. Wenn Sie [`--mcp-config`](/docs/de/cli-reference#cli-flags) explizit übergeben, hat das Warten eine längere Frist; siehe diesen Flag-Eintrag für die Cached-Server-Ausnahme |

467| `MCP_CONNECT_TIMEOUT_MS` | Wie lange blockierendes MCP-Startup wartet, in Millisekunden, für den Verbindungs-Batch, bevor die Tool-Liste Snapshot wird (Standard: 5000). Gilt, wenn `MCP_CONNECTION_NONBLOCKING=0` oder für Server, die mit [`alwaysLoad: true`](/docs/de/mcp#exempt-a-server-from-deferral) markiert sind. Server, die immer noch ausstehend sind, bei der Deadline, verbinden sich weiter im Hintergrund. Unterschiedlich von `MCP_TIMEOUT`, das einen einzelnen Server's Verbindungs-Versuch begrenzt |467| `MCP_CONNECT_TIMEOUT_MS` | Wie lange blockierendes MCP-Startup wartet, in Millisekunden, auf den Verbindungs-Batch, bevor die Tool-Liste snapshot wird (Standard: 5000). Gilt, wenn `MCP_CONNECTION_NONBLOCKING=0` oder für Server, die mit [`alwaysLoad: true`](/docs/de/mcp#exempt-a-server-from-deferral) markiert sind. Server, die immer noch ausstehend sind, wenn die Frist abläuft, verbinden sich weiter im Hintergrund. Unterschiedlich von `MCP_TIMEOUT`, das einen einzelnen Server's Verbindungs-Versuch begrenzt |

468| `MCP_DISCOVERY_CACHE` | Schaltet den [MCP-Discovery-Cache](/docs/de/mcp#server-status-detail) ein oder aus. Mit dem Cache an kann ein Remote-HTTP- oder SSE-Server, den Sie zuvor verwendet haben, den [`cached`-Status](/docs/de/mcp#server-status-detail) zeigen, und Claude Code verbindet ihn beim ersten Tool-Aufruf, anstatt beim Startup. Der Cache ist standardmäßig aus, es sei denn, ein gradueller Rollout hat ihn für Ihr Konto aktiviert. Setzen Sie auf `1`, um ihn einzuschalten, oder `0`, um ihn aus zu halten, auch wenn der Rollout ihn aktiviert hat. Vor v2.1.238 war der Cache standardmäßig an. Der `cached`-Status erfordert Claude Code v2.1.221 oder später |468| `MCP_DISCOVERY_CACHE` | Schaltet den [MCP-Discovery-Cache](/docs/de/mcp#server-status-detail) ein oder aus. Mit dem Cache ein kann ein Remote-HTTP- oder SSE-Server, den Sie zuvor verwendet haben, den [`cached`-Status](/docs/de/mcp#server-status-detail) zeigen, und Claude Code verbindet ihn beim ersten Tool-Aufruf statt beim Startup. Der Cache ist standardmäßig aus, es sei denn, ein gradueller Rollout hat ihn für Ihr Konto aktiviert. Setzen Sie auf `1`, um ihn einzuschalten, oder `0`, um ihn ausgeschaltet zu halten, auch wenn der Rollout ihn aktiviert hat. Vor v2.1.238 war der Cache standardmäßig ein. Der `cached`-Status erfordert Claude Code v2.1.221 oder später |

469| `MCP_DISCOVERY_CACHE_MAX_STALE_S` | Maximales Alter, in Sekunden, eines [Discovery-Cache](/docs/de/mcp#server-status-detail)-Eintrags (Standard: 14400 oder 4 Stunden). Bei einem Start, wo der Eintrag älter als das ist, verwirft Claude Code ihn und verbindet den Server beim Startup, wie es mit dem Cache aus tut. Claude Code begrenzt den Wert auf 7 Tage. Vor v2.1.238 war der Standard 86400 oder 24 Stunden, und Claude Code begrenzte den Wert nicht |469| `MCP_DISCOVERY_CACHE_MAX_STALE_S` | Maximales Alter, in Sekunden, eines [Discovery-Cache](/docs/de/mcp#server-status-detail)-Eintrags (Standard: 14400 oder 4 Stunden). Bei einem Start, wo der Eintrag älter als das ist, verwirft Claude Code ihn und verbindet den Server beim Startup, wie es mit dem Cache aus tut. Claude Code begrenzt den Wert auf 7 Tage. Vor v2.1.238 war der Standard 86400 oder 24 Stunden, und Claude Code begrenzte den Wert nicht |

470| `MCP_DISCOVERY_CACHE_STRIKES` | Bei einem Start, wo ein [Discovery-Cache](/docs/de/mcp#server-status-detail)-Eintrag älter als `MCP_DISCOVERY_CACHE_TTL_S` ist, aktualisiert Claude Code ihn im Hintergrund. Diese Variable setzt, wie viele Aktualisierungen in einer Reihe fehlschlagen können, bevor Claude Code den Eintrag verwirft und den Server beim nächsten Start statt verbindet (Standard: 1). Erhöhen Sie es, wenn Ihre Netzwerk-Verbindung gelegentlich ausfällt, daher verwirft eine fehlgeschlagene Aktualisierung nicht den Eintrag. Erfordert Claude Code v2.1.238 oder später |470| `MCP_DISCOVERY_CACHE_STRIKES` | Bei einem Start, wo ein [Discovery-Cache](/docs/de/mcp#server-status-detail)-Eintrag älter als `MCP_DISCOVERY_CACHE_TTL_S` ist, aktualisiert Claude Code ihn im Hintergrund. Diese Variable setzt, wie viele Aktualisierungen hintereinander fehlschlagen können, bevor Claude Code den Eintrag verwirft und den Server beim nächsten Start statt verbindet (Standard: 1). Erhöhen Sie es, wenn Ihre Netzwerk-Verbindung gelegentlich ausfällt, daher verwirft eine fehlgeschlagene Aktualisierung nicht den Eintrag. Erfordert Claude Code v2.1.238 oder später |

471| `MCP_DISCOVERY_CACHE_TTL_S` | Sekunden, für die Claude Code einen [Discovery-Cache](/docs/de/mcp#server-status-detail)-Eintrag verwendet, ohne ihn zu aktualisieren (Standard: 900). Bei einem Start, wo der Eintrag älter als das ist, verwendet Claude Code ihn immer noch, aber aktualisiert ihn im Hintergrund. Sobald der Eintrag älter als `MCP_DISCOVERY_CACHE_MAX_STALE_S` ist, verwirft Claude Code ihn statt. Claude Code begrenzt den Wert auf `MCP_DISCOVERY_CACHE_MAX_STALE_S`, was 4 Stunden standardmäßig ist. Vor v2.1.238 begrenzte Claude Code den Wert nicht |471| `MCP_DISCOVERY_CACHE_TTL_S` | Sekunden, für die Claude Code einen [Discovery-Cache](/docs/de/mcp#server-status-detail)-Eintrag verwendet, ohne ihn zu aktualisieren (Standard: 900). Bei einem Start, wo der Eintrag älter als das ist, verwendet Claude Code ihn immer noch, aber aktualisiert ihn im Hintergrund. Sobald der Eintrag älter als `MCP_DISCOVERY_CACHE_MAX_STALE_S` ist, verwirft Claude Code ihn statt. Claude Code begrenzt den Wert auf `MCP_DISCOVERY_CACHE_MAX_STALE_S`, was 4 Stunden standardmäßig ist. Vor v2.1.238 begrenzte Claude Code den Wert nicht |

472| `MCP_OAUTH_CALLBACK_PORT` | Fester Port für den OAuth-Redirect-Callback, als Alternative zu `--callback-port`, wenn ein MCP-Server mit [vorkonfigurierten Credentials](/docs/de/mcp#use-pre-configured-oauth-credentials) hinzugefügt wird |472| `MCP_OAUTH_CALLBACK_PORT` | Fester Port für den OAuth-Redirect-Callback, als Alternative zu `--callback-port`, wenn ein MCP-Server mit [vorkonfigurierten Anmeldedaten](/docs/de/mcp#use-pre-configured-oauth-credentials) hinzugefügt wird |

473| `MCP_PROTOCOL_NEGOTIATION` | Nur auf der [v2-MCP-Client-Runtime](/docs/de/mcp#mcp-client-runtimes), ob Claude Code Server für MCP-Protokoll-Revision 2026-07-28 prüft. Setzen Sie `auto`, um HTTP-, claude.ai-Connector- und Stdio-Server zu prüfen; ein Server, der nicht auf die Sonde antwortet, verbindet sich auf dem früheren Protokoll statt, wie SSE- und WebSocket-Server immer tun. Setzen Sie `legacy`, um die Sonde für jeden Server zu überspringen. Ohne die Variable prüft Claude Code HTTP-Server, und prüft auch claude.ai-Connector-Server in Sitzungen, wo es [Feature-Flags fetcht](#features-that-need-feature-flag-fetching). Jeder andere Wert wird mit einer Warnung im Debug-Log ignoriert. Erfordert Claude Code v2.1.221 oder später |473| `MCP_PROTOCOL_NEGOTIATION` | Nur auf der [v2 MCP-Client-Runtime](/docs/de/mcp#mcp-client-runtimes), ob Claude Code Server für MCP-Protokoll-Revision 2026-07-28 prüft. Setzen Sie `auto`, um HTTP-, claude.ai-Connector- und Stdio-Server zu prüfen; ein Server, der nicht auf die Prüfung antwortet, verbindet sich auf dem früheren Protokoll statt, wie SSE- und WebSocket-Server immer tun. Setzen Sie `legacy`, um die Prüfung für jeden Server zu überspringen. Ohne die Variable prüft Claude Code HTTP-Server, und prüft auch claude.ai-Connector-Server in Sitzungen, wo es [Feature-Flags fetcht](#features-that-need-feature-flag-fetching). Jeder andere Wert wird mit einer Warnung im Debug-Log ignoriert. Erfordert Claude Code v2.1.221 oder später |

474| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | Maximale Anzahl von Remote-MCP-Servern (HTTP/SSE), um parallel beim Startup zu verbinden (Standard: 20) |474| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | Maximale Anzahl von Remote-MCP-Servern (HTTP/SSE), um parallel beim Startup zu verbinden (Standard: 20) |

475| `MCP_SDK_GENERATION` | Heften Sie, welche [MCP-Client-Runtime](/docs/de/mcp#mcp-client-runtimes) dieser Prozess mit MCP-Servern verbindet: `v1`, gebaut auf MCP TypeScript SDK 1.x, oder `v2`, gebaut auf [MCP TypeScript SDK 2.0](https://ts.sdk.modelcontextprotocol.io/v2/). Ohne die Variable verwendet Claude Code v2, ab den Versionen, die in diesem Abschnitt aufgelistet sind. Auf Claude Code v2.1.221 oder später überprüft die v2-Runtime den Issuer, den ein MCP-OAuth-Server in seiner Autorisierungs-Antwort zurückgibt, und schlägt die Anmeldung mit einem Fehler fehl, der mit `Issuer mismatch in authorization response` beginnt, wenn er nicht übereinstimmt. Die v1-Runtime führt diese Überprüfung nicht aus. 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 später |475| `MCP_SDK_GENERATION` | Heften Sie, welche [MCP-Client-Runtime](/docs/de/mcp#mcp-client-runtimes) dieser Prozess mit MCP-Servern verbindet: `v1`, gebaut auf MCP TypeScript SDK 1.x, oder `v2`, gebaut auf [MCP TypeScript SDK 2.0](https://ts.sdk.modelcontextprotocol.io/v2/). Ohne die Variable verwendet Claude Code v2, ab den Versionen, die in diesem Abschnitt aufgelistet sind. Auf Claude Code v2.1.221 oder später prüft die v2-Runtime den Aussteller, den ein MCP-OAuth-Server in seiner Autorisierungs-Antwort zurückgibt, und schlägt die Anmeldung mit einem Fehler fehl, der mit `Issuer mismatch in authorization response` beginnt, wenn er nicht passt. Die v1-Runtime führt diese Prüfung nicht aus. 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 später |

476| `MCP_SERVER_CONNECTION_BATCH_SIZE` | Maximale Anzahl von lokalen MCP-Servern (Stdio), um parallel beim Startup zu verbinden (Standard: 3) |476| `MCP_SERVER_CONNECTION_BATCH_SIZE` | Maximale Anzahl von lokalen MCP-Servern (Stdio), um parallel beim Startup zu verbinden (Standard: 3) |

477| `MCP_TIMEOUT` | Timeout in Millisekunden für MCP-Server-Startup (Standard: 30000 oder 30 Sekunden) |477| `MCP_TIMEOUT` | Timeout in Millisekunden für MCP-Server-Startup (Standard: 30000 oder 30 Sekunden) |

478| `MCP_TOOL_TIMEOUT` | Timeout in Millisekunden für MCP-Tool-Ausführung (Standard: 100000000, etwa 28 Stunden). Für einen HTTP-, SSE- oder claude.ai-Connector-Server, jede Anfrage timeout auch nach 60 Sekunden standardmäßig; setzen Sie diese Variable oder den Pro-Server-`timeout` über 60000, um dieses Pro-Request-Limit zu erhöhen. Ein niedrigerer Wert verkürzt immer noch das Gesamt-Tool-Ausführungs-Timeout, aber lässt das Pro-Request-Limit bei 60 Sekunden. Stdio- und WebSocket-Server haben keinen Pro-Request-Timer. Ein Pro-Server-`timeout`-Feld in `.mcp.json` überschreibt dies für diesen Server. Ein Pro-Server-`timeout` von mindestens 1000 setzt auch das Minimum-Idle-Fenster für die Tool-Aufrufe dieses Servers, daher bricht `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` sie nie früher ab; diese Untergrenze erfordert Claude Code v2.1.203 oder später. Für die Env-Variable werden Werte unter 1000 auf eine Sekunde begrenzt; für das Pro-Server-Feld werden Werte unter 1000 ignoriert |478| `MCP_TOOL_TIMEOUT` | Timeout in Millisekunden für MCP-Tool-Ausführung (Standard: 100000000, etwa 28 Stunden). Für einen HTTP-, SSE- oder claude.ai-Connector-Server timeout jede Anfrage auch nach 60 Sekunden standardmäßig; setzen Sie diese Variable oder den Pro-Server-`timeout` über 60000, um dieses Pro-Request-Limit zu erhöhen. Ein niedrigerer Wert verkürzt immer noch das gesamte Tool-Ausführungs-Timeout, lässt aber das Pro-Request-Limit bei 60 Sekunden. Stdio- und WebSocket-Server haben keinen Pro-Request-Timer. Ein Pro-Server-`timeout`-Feld in `.mcp.json` überschreibt dies für diesen Server. Ein Pro-Server-`timeout` von mindestens 1000 setzt auch das minimale Idle-Fenster für die Tool-Aufrufe dieses Servers, daher bricht `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` sie nie früher ab; diese Untergrenze erfordert Claude Code v2.1.203 oder später. Für die Env-Variable werden Werte unter 1000 auf eine Sekunde begrenzt; für das Pro-Server-Feld werden Werte unter 1000 ignoriert |

479| `NO_PROXY` | Liste von Domains und IPs, an die Anfragen direkt ausgegeben werden, Proxy umgehend |479| `NO_PROXY` | Liste von Domains und IPs, an die Anfragen direkt ausgegeben werden, Proxy umgehend |

480| `OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT` | Standard-OpenTelemetry-SDK-Limit auf Attribut-Wert-Länge. Claude Code begrenzt Content-tragende Telemetrie-Attribute auf das kleinere von diesem und `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH`, daher bleibt der Kürzungs-Marker innerhalb des SDK-Limits. Claude Code liest die `OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT`- und `OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT`-Varianten gleich, und der kleinste gesetzte Wert gilt für alle Signale. Erfordert Claude Code v2.1.214 oder später. Siehe [Monitoring](/docs/de/monitoring-usage#common-configuration-variables) |480| `OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT` | Standard-OpenTelemetry-SDK-Limit auf Attribut-Wert-Länge. Claude Code begrenzt Content-tragende Telemetrie-Attribute auf das kleinere von diesem und `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH`, daher bleibt der Kürzungs-Marker innerhalb des SDK-Limits. Claude Code liest die `OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT`- und `OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT`-Varianten auf die gleiche Weise, und der kleinste gesetzte Wert gilt für alle Signale. Erfordert Claude Code v2.1.214 oder später. Siehe [Monitoring](/docs/de/monitoring-usage#common-configuration-variables) |

481| `OTEL_LOG_ASSISTANT_RESPONSES` | Setzen Sie auf `1`, um den Antwort-Text des Modells auf `assistant_response`-OpenTelemetry-Log-Events einzuschließen. Wenn nicht gesetzt, wird der Wert von `OTEL_LOG_USER_PROMPTS` statt verwendet. Setzen Sie auf `0`, um Antworten redaktiert zu halten, auch wenn `OTEL_LOG_USER_PROMPTS` gesetzt ist. Erfordert Claude Code v2.1.193 oder später. Siehe [Monitoring](/docs/de/monitoring-usage#assistant-response-event) |481| `OTEL_LOG_ASSISTANT_RESPONSES` | Setzen Sie auf `1`, um den Text der Modell-Antwort auf `assistant_response`-OpenTelemetry-Log-Events einzuschließen. Wenn nicht gesetzt, verwendet Claude Code den Wert von `OTEL_LOG_USER_PROMPTS` statt. Setzen Sie auf `0`, um Antworten redaktiert zu halten, auch wenn `OTEL_LOG_USER_PROMPTS` gesetzt ist. Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert. Erfordert Claude Code v2.1.193 oder später. Siehe [Monitoring](/docs/de/monitoring-usage#assistant-response-event) |

482| `OTEL_LOG_MANAGED_SETTINGS` | Setzen Sie auf `1`, um die redaktierte verwaltete Einstellungen, und einen SHA-256-Digest der Einstellungen vor Redaktion, zu `managed_settings_resolved`-OpenTelemetry-Log-Events hinzuzufügen. Standardmäßig deaktiviert. Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen; ein Wert in Projekt- oder lokalen Einstellungen schaltet es nicht ein. Erfordert Claude Code v2.1.274 oder später. Siehe [Monitoring](/docs/de/monitoring-usage#managed-settings-resolved-event) |482| `OTEL_LOG_MANAGED_SETTINGS` | Setzen Sie auf `1`, um die redaktierten verwalteten Einstellungen und einen SHA-256-Digest der Einstellungen vor Redaktion zu `managed_settings_resolved`-OpenTelemetry-Log-Events hinzuzufügen. Standardmäßig deaktiviert. Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen; ein Wert in Projekt- oder lokalen Einstellungen schaltet es nicht ein. Erfordert Claude Code v2.1.274 oder später. Siehe [Monitoring](/docs/de/monitoring-usage#managed-settings-resolved-event) |

483| `OTEL_LOG_RAW_API_BODIES` | Geben Sie Anthropic Messages API Request- und Response-JSON als `api_request_body` / `api_response_body`-Log-Events aus. Setzen Sie auf `1` für Inline-Bodies, die beim Content-Limit gekürzt werden, oder `file:<dir>`, um ungekürzte Bodies auf die Festplatte zu schreiben und statt einen `body_ref`-Pfad auszugeben. `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` konfiguriert das Content-Limit, 60 KB standardmäßig. Standardmäßig deaktiviert; Bodies enthalten die gesamte Konversations-Historie. Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert. Siehe [Monitoring](/docs/de/monitoring-usage#api-request-body-event) |483| `OTEL_LOG_RAW_API_BODIES` | Emittieren Sie Anthropic Messages API Request- und Response-JSON als `api_request_body` / `api_response_body`-Log-Events. Setzen Sie auf `1` für Inline-Bodies, die auf dem Content-Limit gekürzt sind, oder `file:<dir>`, um nicht gekürzte Bodies auf die Festplatte zu schreiben und statt einen `body_ref`-Pfad zu emittieren. `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` konfiguriert das Content-Limit, 60 KB standardmäßig. Standardmäßig deaktiviert; Bodies enthalten die gesamte Konversations-Historie. Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert. Siehe [Monitoring](/docs/de/monitoring-usage#api-request-body-event) |

484| `OTEL_LOG_TOOL_CONTENT` | Setzen Sie auf `1`, um Tool-Inhalt in das `tool.output`-OpenTelemetry-Span-Event einzuschließen. Span-Attribute tragen Tool-Inhalt unter [ihren eigenen Gates](/docs/de/monitoring-usage#new-context-gates). Erfordert [Tracing](/docs/de/monitoring-usage#traces-beta). Standardmäßig deaktiviert zum Schutz sensibler Daten. Siehe [Monitoring](/docs/de/monitoring-usage#tool-output-span-event) |484| `OTEL_LOG_TOOL_CONTENT` | Setzen Sie auf `1`, um Tool-Inhalt in das `tool.output`-OpenTelemetry-Span-Event einzuschließen. Span-Attribute tragen Tool-Inhalt unter [ihren eigenen Gates](/docs/de/monitoring-usage#new-context-gates). Erfordert [Tracing](/docs/de/monitoring-usage#traces-beta). Standardmäßig deaktiviert zum Schutz sensibler Daten. Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert, außer den Off-Werten, die dieser Abschnitt beschreibt. Siehe [Monitoring](/docs/de/monitoring-usage#tool-output-span-event) |

485| `OTEL_LOG_TOOL_DETAILS` | Setzen Sie auf `1`, um Tool-Input-Argumente, MCP-Server-Namen, Benutzer-erstellte Workflow-Namen, rohe Error-Strings bei Tool-Fehlern, die Refusal-`category` auf `api_refusal`-Events und andere Tool-Details in OpenTelemetry-Traces und Logs einzuschließen. Standardmäßig deaktiviert zum Schutz von PII. Siehe [Monitoring](/docs/de/monitoring-usage) |485| `OTEL_LOG_TOOL_DETAILS` | Setzen Sie auf `1`, um Tool-Input-Argumente, MCP-Server-Namen, Benutzer-erstellte Workflow-Namen, rohe Error-Strings bei Tool-Fehlern, die Refusal-`category` auf `api_refusal`-Events und andere Tool-Details in OpenTelemetry-Traces und Logs einzuschließen. Standardmäßig deaktiviert zum Schutz von PII. Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert, außer den Off-Werten, die dieser Abschnitt beschreibt. Siehe [Monitoring](/docs/de/monitoring-usage) |

486| `OTEL_LOG_USER_PROMPTS` | Setzen Sie auf `1`, um Benutzer-Prompt-Text in OpenTelemetry-Traces und Logs einzuschließen. Standardmäßig deaktiviert (Prompts sind redaktiert). Siehe [Monitoring](/docs/de/monitoring-usage) |486| `OTEL_LOG_USER_PROMPTS` | Setzen Sie auf `1`, um Benutzer-Prompt-Text in OpenTelemetry-Traces und Logs einzuschließen. Standardmäßig deaktiviert (Prompts sind redaktiert). Setzen Sie es in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert, außer den Off-Werten, die dieser Abschnitt beschreibt. Siehe [Monitoring](/docs/de/monitoring-usage) |

487| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | Setzen Sie auf `false`, um Account-UUID aus Metrik-Attributen auszuschließen (Standard: enthalten). Siehe [Monitoring](/docs/de/monitoring-usage) |487| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | Setzen Sie auf `false`, um Account-UUID aus Metriken-Attributen auszuschließen (Standard: enthalten). Siehe [Monitoring](/docs/de/monitoring-usage) |

488| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | Setzen Sie auf `true`, um den Sitzungs-Entrypoint in Metrik-Attributen einzuschließen (Standard: ausgeschlossen). Hinzugefügt in v2.1.152. Siehe [Monitoring](/docs/de/monitoring-usage) |488| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | Setzen Sie auf `true`, um den Sitzungs-Entrypoint in Metriken-Attributen einzuschließen (Standard: ausgeschlossen). Hinzugefügt in v2.1.152. Siehe [Monitoring](/docs/de/monitoring-usage) |

489| `OTEL_METRICS_INCLUDE_REPOSITORY` | Setzen Sie auf `true`, um OpenTelemetry-Metriken und Events mit `vcs.*`-Attributen zu taggen, die das Repository der Sitzung identifizieren (Standard: ausgeschlossen). Erfordert Claude Code v2.1.269 oder später. Siehe [Repository-Attribute](/docs/de/monitoring-usage#repository-attributes) |489| `OTEL_METRICS_INCLUDE_REPOSITORY` | Setzen Sie auf `true`, um OpenTelemetry-Metriken und Events mit `vcs.*`-Attributen zu taggen, die das Repository der Sitzung identifizieren (Standard: ausgeschlossen). Erfordert Claude Code v2.1.269 oder später. Siehe [Repository-Attribute](/docs/de/monitoring-usage#repository-attributes) |

490| `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` | Ab v2.1.161 hängt Claude Code `OTEL_RESOURCE_ATTRIBUTES`-Schlüssel an Metrik-Datenpunkt-Labels an. Setzen Sie auf `false`, um sie auszuschließen (Standard: enthalten). Siehe [Monitoring](/docs/de/monitoring-usage#multi-team-organization-support) |490| `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` | Ab v2.1.161 hängt Claude Code `OTEL_RESOURCE_ATTRIBUTES`-Schlüssel an Metriken-Datenpunkt-Labels an. Setzen Sie auf `false`, um sie auszuschließen (Standard: enthalten). Siehe [Monitoring](/docs/de/monitoring-usage#multi-team-organization-support) |

491| `OTEL_METRICS_INCLUDE_SESSION_ID` | Setzen Sie auf `false`, um Sitzungs-ID aus Metrik-Attributen auszuschließen (Standard: enthalten). Siehe [Monitoring](/docs/de/monitoring-usage) |491| `OTEL_METRICS_INCLUDE_SESSION_ID` | Setzen Sie auf `false`, um Sitzungs-ID aus Metriken-Attributen auszuschließen (Standard: enthalten). Siehe [Monitoring](/docs/de/monitoring-usage) |

492| `OTEL_METRICS_INCLUDE_VERSION` | Setzen Sie auf `true`, um Claude Code-Version in Metrik-Attributen einzuschließen (Standard: ausgeschlossen). Siehe [Monitoring](/docs/de/monitoring-usage) |492| `OTEL_METRICS_INCLUDE_VERSION` | Setzen Sie auf `true`, um Claude Code-Version in Metriken-Attributen einzuschließen (Standard: ausgeschlossen). Siehe [Monitoring](/docs/de/monitoring-usage) |

493| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | Überschreiben Sie das Zeichen-Budget für Skill-Metadaten, die dem [Skill-Tool](/docs/de/skills#control-who-invokes-a-skill) gezeigt werden. Das Budget skaliert dynamisch bei 1% des Kontext-Fensters, mit einem Fallback von 8.000 Zeichen. Legacy-Name für Rückwärts-Kompatibilität behalten |493| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | Überschreiben Sie das Zeichen-Budget für Skill-Metadaten, die dem [Skill-Tool](/docs/de/skills#control-who-invokes-a-skill) gezeigt werden. Das Budget skaliert dynamisch bei 1% des Kontext-Fensters, mit einem Fallback von 8.000 Zeichen. Legacy-Name behalten für Rückwärts-Kompatibilität |

494| `TASK_MAX_OUTPUT_LENGTH` | Entfernt in v2.1.277 und jetzt ein No-Op, zusammen mit dem `TaskOutput`-Tool, das es dimensioniert. Setzen Sie zuvor die maximale Anzahl von Zeichen einer [Background-Aufgabe](/docs/de/tools-reference#background-commands)-Ausgabe, die das `TaskOutput`-Tool behielt. Claude liest eine Background-Aufgabe's Ausgabedatei mit `Read` statt |494| `TASK_MAX_OUTPUT_LENGTH` | Entfernt in v2.1.277 und jetzt ein No-Op, zusammen mit dem `TaskOutput`-Tool, das es dimensioniert. Setzte zuvor die maximale Anzahl von Zeichen der [Hintergrund-Task](/docs/de/tools-reference#background-commands)-Ausgabe, die das `TaskOutput`-Tool behielt. Claude liest die Ausgabedatei einer Hintergrund-Task mit `Read` statt |

495| `USE_BUILTIN_RIPGREP` | Setzen Sie auf `0`, um System-installiertes `rg` anstelle von `rg`, das mit Claude Code enthalten ist, zu verwenden |495| `USE_BUILTIN_RIPGREP` | Setzen Sie auf `0`, um System-installiertes `rg` statt `rg` zu verwenden, das mit Claude Code enthalten ist |

496| `VERTEX_REGION_CLAUDE_3_5_HAIKU` | Überschreiben Sie Region für Claude 3.5 Haiku bei Verwendung von Google Cloud's Agent Platform |496| `VERTEX_REGION_CLAUDE_3_5_HAIKU` | Überschreiben Sie Region für Claude 3.5 Haiku bei Verwendung von Google Cloud's Agent Platform |

497| `VERTEX_REGION_CLAUDE_3_5_SONNET` | Überschreiben Sie Region für Claude 3.5 Sonnet bei Verwendung von Google Cloud's Agent Platform |497| `VERTEX_REGION_CLAUDE_3_5_SONNET` | Überschreiben Sie Region für Claude 3.5 Sonnet bei Verwendung von Google Cloud's Agent Platform |

498| `VERTEX_REGION_CLAUDE_3_7_SONNET` | Überschreiben Sie Region für Claude 3.7 Sonnet bei Verwendung von Google Cloud's Agent Platform |498| `VERTEX_REGION_CLAUDE_3_7_SONNET` | Überschreiben Sie Region für Claude 3.7 Sonnet bei Verwendung von Google Cloud's Agent Platform |


514 514 

515Standard-OpenTelemetry-Exporter-Variablen (`OTEL_METRICS_EXPORTER`, `OTEL_LOGS_EXPORTER`, `OTEL_EXPORTER_OTLP_ENDPOINT`, `OTEL_EXPORTER_OTLP_PROTOCOL`, `OTEL_EXPORTER_OTLP_HEADERS`, `OTEL_METRIC_EXPORT_INTERVAL`, `OTEL_RESOURCE_ATTRIBUTES` und Signal-spezifische Varianten) werden auch unterstützt. Siehe [Monitoring](/docs/de/monitoring-usage) für Konfigurationsdetails.515Standard-OpenTelemetry-Exporter-Variablen (`OTEL_METRICS_EXPORTER`, `OTEL_LOGS_EXPORTER`, `OTEL_EXPORTER_OTLP_ENDPOINT`, `OTEL_EXPORTER_OTLP_PROTOCOL`, `OTEL_EXPORTER_OTLP_HEADERS`, `OTEL_METRIC_EXPORT_INTERVAL`, `OTEL_RESOURCE_ATTRIBUTES` und Signal-spezifische Varianten) werden auch unterstützt. Siehe [Monitoring](/docs/de/monitoring-usage) für Konfigurationsdetails.

516 516 

517Setzen Sie `CLAUDE_CODE_ENABLE_TELEMETRY` und die OpenTelemetry-Variablen, die Export einschalten, sein Ziel wählen oder Inhalt erfassen, in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Claude Code [ignoriert sie in Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env), außer den Off-Werten, die dieser Abschnitt beschreibt. `OTEL_RESOURCE_ATTRIBUTES` und die Export-Intervall-, Timeout- und Komprimierungs-Variablen, wie `OTEL_METRIC_EXPORT_INTERVAL`, gelten immer noch aus Projekt- und lokalen Einstellungen.

518 

517<h2 id="features-that-need-feature-flag-fetching">519<h2 id="features-that-need-feature-flag-fetching">

518 Funktionen, die das Abrufen von Feature-Flags erfordern520 Funktionen, die das Abrufen von Feature-Flags erfordern

519</h2>521</h2>


533* [Sitzungen über diese Maschine hinaus Nachrichten senden](/docs/de/cross-session-messaging#message-sessions-on-other-machines); das Messaging zwischen Sitzungen auf dieser Maschine funktioniert mit deaktiviertem Abrufen535* [Sitzungen über diese Maschine hinaus Nachrichten senden](/docs/de/cross-session-messaging#message-sessions-on-other-machines); das Messaging zwischen Sitzungen auf dieser Maschine funktioniert mit deaktiviertem Abrufen

534* [`claude import` oder den `/import`-Befehl](/docs/de/cli-reference#cli-commands) ausführen536* [`claude import` oder den `/import`-Befehl](/docs/de/cli-reference#cli-commands) ausführen

535* [`/skill-doctor`](/docs/de/skills#find-unused-skills) ausführen oder seinen Bericht in der `/plugin` **Stats**-Registerkarte öffnen537* [`/skill-doctor`](/docs/de/skills#find-unused-skills) ausführen oder seinen Bericht in der `/plugin` **Stats**-Registerkarte öffnen

536* Die [Skills](/docs/de/skills#where-synced-skills-load) und [Plugins](/docs/de/plugins-reference#synced-plugins) synchronisieren, die für Ihr claude.ai-Konto aktiviert sind, in Ihre Terminal-Sitzungen538* Die [Skills](/docs/de/skills#where-synced-skills-load) und [Plugins](/docs/de/plugins/loading#synced-plugins) synchronisieren, die für Ihr claude.ai-Konto aktiviert sind, in Ihre Terminal-Sitzungen

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

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

539* Claude Code Sonden auf claude.ai-Connector-Servern für [MCP-Protokollrevision 2026-07-28](/docs/de/mcp#mcp-client-runtimes) durchführen lassen, es sei denn, Sie setzen `MCP_PROTOCOL_NEGOTIATION=auto`541* Claude Code Sonden auf claude.ai-Connector-Servern für [MCP-Protokollrevision 2026-07-28](/docs/de/mcp#mcp-client-runtimes) durchführen lassen, es sei denn, Sie setzen `MCP_PROTOCOL_NEGOTIATION=auto`

errors.md +153 −22

Details

36| `Auto mode could not evaluate this action and is blocking it for safety` | [Serverfehler](#auto-mode-cannot-determine-the-safety-of-an-action) |36| `Auto mode could not evaluate this action and is blocking it for safety` | [Serverfehler](#auto-mode-cannot-determine-the-safety-of-an-action) |

37| `Auto mode classifier transcript exceeded context window` | [Serverfehler](#auto-mode-cannot-determine-the-safety-of-an-action) |37| `Auto mode classifier transcript exceeded context window` | [Serverfehler](#auto-mode-cannot-determine-the-safety-of-an-action) |

38| `Agent aborted: auto mode classifier request refused by the safety safeguard` | [Serverfehler](#auto-mode-cannot-determine-the-safety-of-an-action) |38| `Agent aborted: auto mode classifier request refused by the safety safeguard` | [Serverfehler](#auto-mode-cannot-determine-the-safety-of-an-action) |

39| `The server-side auto mode classifier gave no verdict` | [Serverfehler](#the-server-returned-no-safety-verdict) |

40| `Auto mode is unavailable — the server returned no safety verdict for the last 10 responses` | [Serverfehler](#the-server-returned-no-safety-verdict) |

39| `Agent terminated early due to an API error` | [Serverfehler](#agent-terminated-early-due-to-an-api-error) |41| `Agent terminated early due to an API error` | [Serverfehler](#agent-terminated-early-due-to-an-api-error) |

40| `You've hit your session limit` / `You've hit your weekly limit` / `You've hit your Opus limit` / `You've hit your Sonnet limit` | [Nutzungslimits](#youve-hit-your-session-limit) |42| `You've hit your session limit` / `You've hit your weekly limit` / `You've hit your Opus limit` / `You've hit your Sonnet limit` | [Nutzungslimits](#youve-hit-your-session-limit) |

41| `Usage credits required for 1M context` | [Nutzungslimits](#usage-credits-required-for-1m-context) |43| `Usage credits required for 1M context` | [Nutzungslimits](#usage-credits-required-for-1m-context) |


154| `API Error: 400 orphaned tool_result in conversation history` | [Anfragefehler](#tool-use-or-thinking-block-mismatch) |156| `API Error: 400 orphaned tool_result in conversation history` | [Anfragefehler](#tool-use-or-thinking-block-mismatch) |

155| `API Error: 400 duplicate tool_use ID in conversation history` | [Anfragefehler](#tool-use-or-thinking-block-mismatch) |157| `API Error: 400 duplicate tool_use ID in conversation history` | [Anfragefehler](#tool-use-or-thinking-block-mismatch) |

156| `[Unsupported tool content removed]` | [Anfragefehler](#unsupported-tool-content-removed) |158| `[Unsupported tool content removed]` | [Anfragefehler](#unsupported-tool-content-removed) |

159| `role 'system' must precede an 'assistant' message` | [Anfragefehler](#role-system-must-precede-an-assistant-message) |

160| `Invalid encrypted_content in search_result block` / `Invalid encrypted_index in text block` / `Failed to decrypt web search result content` | [Anfragefehler](#invalid-encrypted-content-in-search-result-block) |

157| `server_tool_use.name: Input should be` auf jedem Turn einer fortgesetzten Sitzung | [Anfragefehler](#unsupported-tool-content-removed) |161| `server_tool_use.name: Input should be` auf jedem Turn einer fortgesetzten Sitzung | [Anfragefehler](#unsupported-tool-content-removed) |

158| `<model> can't help with this. Start a new session to continue` | [Anfragefehler](#usage-policy-refusal) |162| `<model> can't help with this. Start a new session to continue` | [Anfragefehler](#usage-policy-refusal) |

159| `Claude Code is unable to respond to this request, which appears to violate our Usage Policy` | [Anfragefehler](#usage-policy-refusal) |163| `Claude Code is unable to respond to this request, which appears to violate our Usage Policy` | [Anfragefehler](#usage-policy-refusal) |

160| `<model>'s safeguards flagged this message` | [Anfragefehler](#safety-measures-flagged-a-cybersecurity-topic) |164| `<model>'s safeguards flagged this message` | [Anfragefehler](#safety-measures-flagged-a-cybersecurity-topic) |

165| `Opus 5.5's safeguards flagged this session` | [Anfragefehler](#safety-measures-flagged-a-cybersecurity-topic) |

161| `<model> has safety measures that flagged this message for a cybersecurity topic` | [Anfragefehler](#safety-measures-flagged-a-cybersecurity-topic) |166| `<model> has safety measures that flagged this message for a cybersecurity topic` | [Anfragefehler](#safety-measures-flagged-a-cybersecurity-topic) |

162| `Installation was killed before it could finish (exit code 137)` | [Installationsfehler](#installation-was-killed-before-it-could-finish) |167| `Installation was killed before it could finish (exit code 137)` | [Installationsfehler](#installation-was-killed-before-it-could-finish) |

163| `The connection dropped while downloading the update` | [Installationsfehler](#the-connection-dropped-while-downloading-the-update) |168| `The connection dropped while downloading the update` | [Installationsfehler](#the-connection-dropped-while-downloading-the-update) |


170| `Error: Invalid --agents configuration:` | [Befehlszeilenfehler](#invalid-agents-configuration) |175| `Error: Invalid --agents configuration:` | [Befehlszeilenfehler](#invalid-agents-configuration) |

171| `Error: Settings file exceeds the 2MiB limit` | [Befehlszeilenfehler](#settings-file-exceeds-the-2mib-limit) |176| `Error: Settings file exceeds the 2MiB limit` | [Befehlszeilenfehler](#settings-file-exceeds-the-2mib-limit) |

172| `The current directory no longer exists (it was deleted or moved)` / `Can't read the current directory` | [Befehlszeilenfehler](#the-current-directory-no-longer-exists) |177| `The current directory no longer exists (it was deleted or moved)` / `Can't read the current directory` | [Befehlszeilenfehler](#the-current-directory-no-longer-exists) |

178| `Temp directory <dir> ... Refusing to use it` / `ENOSPC: no space left on device, mkdir '<dir>'` | [Befehlszeilenfehler](#temp-directory-refused-or-cannot-be-created) |

173| `couldn't be resolved to a real location, so its skills, commands, and agents weren't loaded` | [Befehlszeilenfehler](#directory-couldnt-be-resolved-to-a-real-location) |179| `couldn't be resolved to a real location, so its skills, commands, and agents weren't loaded` | [Befehlszeilenfehler](#directory-couldnt-be-resolved-to-a-real-location) |

174| `Error: Workspace not trusted` beim Starten von Remote Control | [Befehlszeilenfehler](#workspace-not-trusted-when-starting-remote-control) |180| `Error: Workspace not trusted` beim Starten von Remote Control | [Befehlszeilenfehler](#workspace-not-trusted-when-starting-remote-control) |

175| `` `<flag>` before `remote-control` is not carried over to the sessions Remote Control starts `` | [Befehlszeilenfehler](#not-carried-over-to-the-sessions-remote-control-starts) |181| `` `<flag>` before `remote-control` is not carried over to the sessions Remote Control starts `` | [Befehlszeilenfehler](#not-carried-over-to-the-sessions-remote-control-starts) |


213| `` `plugin eval` is currently in early access `` / `` `plugin eval` is currently unavailable `` | [Plugin-Fehler](#plugin-eval-is-currently-in-early-access) |219| `` `plugin eval` is currently in early access `` / `` `plugin eval` is currently unavailable `` | [Plugin-Fehler](#plugin-eval-is-currently-in-early-access) |

214| `Marketplace "<name>" is registered from an untrusted source` | [Plugin-Fehler](#marketplace-is-registered-from-an-untrusted-source) |220| `Marketplace "<name>" is registered from an untrusted source` | [Plugin-Fehler](#marketplace-is-registered-from-an-untrusted-source) |

215| `Marketplace "<name>" is already added from a different source` | [Plugin-Fehler](#marketplace-is-already-added-from-a-different-source) |221| `Marketplace "<name>" is already added from a different source` | [Plugin-Fehler](#marketplace-is-already-added-from-a-different-source) |

222| `"<name>" is another spelling of "<reserved>", a reserved marketplace name` | [Plugin-Fehler](#marketplace-name-is-another-spelling-of-a-reserved-name) |

216| `references ${user_config.*} in a shell-form command` | [Plugin-Fehler](#plugin-command-references-user-config) |223| `references ${user_config.*} in a shell-form command` | [Plugin-Fehler](#plugin-command-references-user-config) |

217| `Monitor "<name>" from plugin <plugin> references ${user_config.*} in its command` | [Plugin-Fehler](#plugin-command-references-user-config) |224| `Monitor "<name>" from plugin <plugin> references ${user_config.*} in its command` | [Plugin-Fehler](#plugin-command-references-user-config) |

218| `headersHelper for MCP server '<name>' references ${user_config.*}` | [Plugin-Fehler](#plugin-command-references-user-config) |225| `headersHelper for MCP server '<name>' references ${user_config.*}` | [Plugin-Fehler](#plugin-command-references-user-config) |


565* Genehmigen oder lehnen Sie die Aktion in der angezeigten Aufforderung ab572* Genehmigen oder lehnen Sie die Aktion in der angezeigten Aufforderung ab

566* Führen Sie in einer interaktiven Sitzung `/compact` aus, um die Konversationsgröße zu reduzieren, damit nachfolgende Aktionen wieder in das Klassifizierer-Fenster passen573* Führen Sie in einer interaktiven Sitzung `/compact` aus, um die Konversationsgröße zu reduzieren, damit nachfolgende Aktionen wieder in das Klassifizierer-Fenster passen

567 574 

575<h3 id="the-server-returned-no-safety-verdict">

576 Der Server hat kein Sicherheitsurteil zurückgegeben

577</h3>

578 

579Unter [serverseitiger Klassifiziererüberprüfung](/docs/de/permission-modes#server-side-classifier-review) verweigert der Auto-Modus eine Aktion, wenn der Server kein Urteil dafür gibt. Die Verweigerung nennt eine Kategorie in Klammern, wenn Claude Code eine bestimmen kann, wie z. B. `(timed out)`:

580 

581```text theme={null}

582The server-side auto mode classifier gave no verdict (timed out), so auto mode cannot determine the safety of <tool>.

583```

584 

585Der Rest der Nachricht teilt Claude mit, ob ein Wiederholungsversuch helfen kann. Vor einigen dieser Verweigerungen wartet Claude Code, damit Claudes nächster Versuch nicht sofort folgt. Während des Wartens in einer interaktiven Sitzung zeigt der Spinner `Auto mode check unavailable` mit einem Countdown an, und das Drücken von `Esc` unterbricht den Zug.

586 

587Nach zehn Antworten hintereinander ohne Urteil stoppt der Auto-Modus den Zug:

588 

589```text theme={null}

590Auto mode is unavailable — the server returned no safety verdict for the last 10 responses, so Claude stopped. Send a message to try again, or switch out of auto mode.

591```

592 

593Die Stopmeldung wird an einer anderen Stelle in jeder Art von Sitzung angezeigt:

594 

595* In einer interaktiven Sitzung wird die Nachricht als Warnung im Transkript angezeigt und der Zug endet

596* In einem [nicht-interaktiven](/docs/de/headless) `-p`-Lauf endet der Lauf und meldet einen Ausführungsfehler. Mit der Standard-Textausgabe wird die Nachricht auf stderr gedruckt.

597* Wenn ein [Subagent](/docs/de/sub-agents) das Limit erreicht hat, stoppt der Subagent vor Abschluss, und Claude erhält das, was er mit einer Notiz produziert hat, dass der Auto-Modus ihn gestoppt hat

598 

599**Was zu tun ist:**

600 

601* Senden Sie eine weitere Nachricht, damit Claude es erneut versucht. Die Anzahl der Antworten beginnt von vorne.

602* Wenn der Stopp sich wiederholt und Ihre Anfragen durch ein [LLM-Gateway oder einen Proxy](/docs/de/llm-gateway) gehen, überprüfen Sie, ob dieser Streaming-Antworten kürzt oder umschreibt. [Serverseitige Klassifiziererüberprüfung](/docs/de/permission-modes#server-side-classifier-review) sagt, welches Gateway-Verhalten Verweigerungen verursacht, und der [Gateway-Kompatibilitätsleitfaden](/docs/de/llm-gateway-protocol#feature-pass-through) listet auf, was unverändert durchgeleitet werden muss.

603* Setzen Sie `CLAUDE_CODE_AUTO_MODE_SERVER=0`, bevor Sie Claude Code starten, um stattdessen seine eigenen Klassifiziereranfragen zu verwenden. Vor v2.1.281 las Claude Code die Variable nicht bei einer direkten Verbindung zur Anthropic API.

604* Um die Aktionen selbst zu genehmigen, [wechseln Sie aus dem Auto-Modus](/docs/de/permission-modes#switch-permission-modes)

605 

606Vor v2.1.280 verweigerte Claude Code jede Aktion aus einer Antwort ohne Urteil sofort und stoppte den Zug nie.

607 

568<h3 id="agent-terminated-early-due-to-an-api-error">608<h3 id="agent-terminated-early-due-to-an-api-error">

569 Agent wurde vorzeitig aufgrund eines API-Fehlers beendet609 Agent wurde vorzeitig aufgrund eines API-Fehlers beendet

570</h3>610</h3>


1942 1982 

1943Claude Code überspringt diese Wiederherstellung, wenn der Inhalt, den es weitergeben würde, keine Modellantworte enthält und weniger als etwa 1.000 Token Ihres eigenen Textes, wie z. B. eine kurze Wiederholung nach einem übergroßen Einfügen. Führen Sie `/clear` aus, um neu zu beginnen. Vor v2.1.269 schlug die Komprimierung fehl, wenn sie keinen ganzen Austausch zusammenfassen konnte, daher traf eine Sitzung in diesem Zustand bei jedem Durchgang diesen Fehler erneut.1983Claude Code überspringt diese Wiederherstellung, wenn der Inhalt, den es weitergeben würde, keine Modellantworte enthält und weniger als etwa 1.000 Token Ihres eigenen Textes, wie z. B. eine kurze Wiederholung nach einem übergroßen Einfügen. Führen Sie `/clear` aus, um neu zu beginnen. Vor v2.1.269 schlug die Komprimierung fehl, wenn sie keinen ganzen Austausch zusammenfassen konnte, daher traf eine Sitzung in diesem Zustand bei jedem Durchgang diesen Fehler erneut.

1944 1984 

1945Ein Gespräch mit nur einem Austausch hat keine früheren Runden zum Zusammenfassen. Wenn die automatische Komprimierung auf einer ausgeführt worden wäre, überspringt Claude Code den Versuch und erklärt stattdessen, was die Anfrage ausfüllt. Wenn die API keine Token-Zählungen in ihrem Fehler meldet, lautet die Meldung:1985Ein Gespräch mit nur einem Austausch hat keine früheren Runden zum Zusammenfassen. Wenn die automatische Komprimierung auf einem ausgeführt worden wäre, überspringt Claude Code den Versuch und erklärt stattdessen, was die Anfrage ausfüllt. Wenn die API keine Token-Zählungen in ihrem Fehler meldet, lautet die Meldung:

1946 1986 

1947```text theme={null}1987```text theme={null}

1948Prompt is too long · this conversation is a single exchange and cannot be compacted — the request size comes mostly from system prompt, tool definitions, or attachments.1988Prompt is too long · this conversation is a single exchange and cannot be compacted — the request size comes mostly from system prompt, tool definitions, or attachments.


2314 2354 

2315**Was zu tun ist:**2355**Was zu tun ist:**

2316 2356 

2317* Führen Sie `claude update` aus und starten Sie Claude Code neu. Opus 4.7 benötigt v2.1.111 oder später. Opus 4.8 benötigt v2.1.154 oder später. Sonnet 5 benötigt v2.1.197 oder später. Opus 5 benötigt v2.1.219 oder später2357* Führen Sie `claude update` aus und starten Sie Claude Code neu. Opus 4.7 benötigt v2.1.111 oder später. Opus 4.8 benötigt v2.1.154 oder später. Sonnet 5 benötigt v2.1.197 oder später. Opus 5 benötigt v2.1.219 oder später. Opus 5.5 benötigt v2.1.280 oder später

2318* Wenn Sie nicht aktualisieren können, führen Sie `/model` aus und wählen Sie stattdessen Opus 4.6 oder Sonnet 4.62358* Wenn Sie nicht aktualisieren können, führen Sie `/model` aus und wählen Sie stattdessen Opus 4.6 oder Sonnet 4.6

2319* Wenn Sie dies im [Agent SDK](/docs/de/agent-sdk/overview) treffen, aktualisieren Sie stattdessen das SDK-Paket. Opus 4.8 benötigt TypeScript SDK v0.3.154 oder später und Python SDK v0.2.88 oder später. Sonnet 5 benötigt TypeScript SDK v0.3.197 oder später. Opus 5 benötigt TypeScript SDK v0.3.219 oder später2359* Wenn Sie dies im [Agent SDK](/docs/de/agent-sdk/overview) treffen, aktualisieren Sie stattdessen das SDK-Paket. Opus 4.8 benötigt TypeScript SDK v0.3.154 oder später und Python SDK v0.2.88 oder später. Sonnet 5 benötigt TypeScript SDK v0.3.197 oder später. Opus 5 benötigt TypeScript SDK v0.3.219 oder später. Opus 5.5 benötigt TypeScript SDK v0.3.280 oder später

2320 2360 

2321<h3 id="effort-isnt-available-with-thinking-turned-off">2361<h3 id="effort-isnt-available-with-thinking-turned-off">

2322 Effort ist nicht verfügbar, wenn Thinking ausgeschaltet ist2362 Effort ist nicht verfügbar, wenn Thinking ausgeschaltet ist


2390* Keine Aktion erforderlich, wenn Sie die Platzhalterzeile sehen. Die Sitzung wird ohne den entfernten Inhalt fortgesetzt.2430* Keine Aktion erforderlich, wenn Sie die Platzhalterzeile sehen. Die Sitzung wird ohne den entfernten Inhalt fortgesetzt.

2391* Wenn jede Runde einer wiederaufgenommenen Sitzung stattdessen mit dem 400-Fehler fehlschlägt, führen Sie `claude update` aus und nehmen Sie die Sitzung erneut auf. Versionen vor v2.1.246 entfernen den Inhalt nicht.2431* Wenn jede Runde einer wiederaufgenommenen Sitzung stattdessen mit dem 400-Fehler fehlschlägt, führen Sie `claude update` aus und nehmen Sie die Sitzung erneut auf. Versionen vor v2.1.246 entfernen den Inhalt nicht.

2392 2432 

2433<h3 id="role-system-must-precede-an-assistant-message">

2434 role 'system' must precede an 'assistant' message

2435</h3>

2436 

2437Die API lehnte die Anfrage mit einem 400 ab, weil eine Systemnachricht an einer Position im Gespräch sitzt, die sie nicht akzeptiert:

2438 

2439```text theme={null}

2440API Error: 400 messages.6: role 'system' must precede an 'assistant' message or end the array; ...

2441```

2442 

2443Claude Code sendet einige seiner Erinnerungs- und Anhang-Texte als Systemnachrichten innerhalb des Gesprächs. Wenn die API die Position einer ablehnt, versucht Claude Code die Anfrage einmal erneut mit diesem Text, der stattdessen als gewöhnliche Benutzernachrichten gesendet wird. Die Geschwister-Platzierungs-Formulierungen der API, wie `use the top-level 'system' parameter for the initial system prompt`, erhalten die gleiche Wiederherstellung.

2444 

2445Wenn der Fehler angezeigt wird, ist die abgelehnte Systemnachricht nicht eine, die Claude Code entfernen kann. Das bedeutet normalerweise, dass ein Proxy oder [LLM-Gateway](/docs/de/llm-gateway) zwischen Claude Code und der API eine Systemnachricht hinzugefügt oder das Gespräch neu angeordnet hat.

2446 

2447**Was zu tun ist:**

2448 

2449* Führen Sie `/clear` aus, um ein neues Gespräch zu starten. Wenn der Fehler dort auch zurückkommt, ist die Ursache auf dem Anfragepfad, nicht im gespeicherten Gespräch.

2450* Wenn der Fehler sich bei jedem Durchgang hinter einem Proxy oder Gateway wiederholt, das durch [`ANTHROPIC_BASE_URL`](/docs/de/env-vars) konfiguriert ist, verbinden Sie sich ohne den Proxy, um die Quelle zu bestätigen, und melden Sie den Fehler demjenigen, der ihn betreibt

2451 

2452Vor v2.1.280 erkannte Claude Code diese Formulierung nicht, daher erschien der Fehler auch, wenn die abgelehnte Systemnachricht eine war, die Claude Code selbst sendete, und jeder spätere Durchgang des Gesprächs schlug auf die gleiche Weise fehl.

2453 

2454<h3 id="invalid-encrypted-content-in-search-result-block">

2455 Invalid encrypted\_content in search\_result block

2456</h3>

2457 

2458Die API lehnte die Anfrage mit einem 400 ab, weil die Gesprächshistorie gehostete Web-Such-Inhalte enthält, die sie nicht entschlüsseln kann. Die Formulierung nennt das Feld, das sie nicht lesen kann:

2459 

2460```text theme={null}

2461API Error: 400 messages.21.content.0: Invalid `encrypted_content` in `search_result` block

2462API Error: 400 messages.21.content.3.citations.0: Invalid `encrypted_index` in `text` block

2463API Error: 400 Failed to decrypt web search result content

2464```

2465 

2466Ergebnisse aus dem gehosteten [Web-Such-Werkzeug](https://platform.claude.com/docs/en/agents-and-tools/tool-use/web-search-tool) der API enthalten verschlüsselte Felder, die nur die API lesen kann. Die API lehnt eine Anfrage ab, die Inhalte wiederholt, die sie nicht entschlüsseln kann, wie Inhalte, die für eine andere Organisation erzeugt wurden.

2467 

2468Das eigene [WebSearch-Werkzeug](/docs/de/tools-reference#websearch-tool-behavior) von Claude Code zeichnet Suchergebnisse als Klartext auf, daher erreichen diese Blöcke ein Gespräch normalerweise über einen Proxy oder [LLM-Gateway](/docs/de/llm-gateway), der selbst gehostete Web-Suche ausgeführt hat.

2469 

2470Die abgelehnten Blöcke bleiben in der Gesprächshistorie, daher schlagen jeder spätere Durchgang und `/compact` auf die gleiche Weise fehl.

2471 

2472**Was zu tun ist:**

2473 

2474* Führen Sie `/clear` aus oder starten Sie eine neue Sitzung; das neue Gespräch trägt nicht die abgelehnten Blöcke

2475* Wenn Sie Claude Code hinter einem Proxy oder Gateway ausführen, melden Sie den Fehler demjenigen, der ihn betreibt

2476 

2393<h3 id="usage-policy-refusal">2477<h3 id="usage-policy-refusal">

2394 Nutzungsrichtlinie-Ablehnung2478 Nutzungsrichtlinie-Ablehnung

2395</h3>2479</h3>


2424API Error: Opus 4.8's safeguards flagged this message. Our intentionally broad safeguards allow us to deliver more capabilities faster, but can sometimes flag legitimate cybersecurity work. Apply to the Cyber Verification Program to reduce these interruptions. Send feedback with /feedback or learn more: https://support.claude.com/en/articles/14604842-real-time-cyber-safeguards-on-claude2508API Error: Opus 4.8's safeguards flagged this message. Our intentionally broad safeguards allow us to deliver more capabilities faster, but can sometimes flag legitimate cybersecurity work. Apply to the Cyber Verification Program to reduce these interruptions. Send feedback with /feedback or learn more: https://support.claude.com/en/articles/14604842-real-time-cyber-safeguards-on-claude

2425```2509```

2426 2510 

2427Die Meldung verlinkt auf das [Cyber Verification Program](https://support.claude.com/en/articles/14604842-real-time-cyber-safeguards-on-claude), das Zugriff für legitime Cybersicherheitsarbeit gewährt.2511Die Meldung verlinkt auf das [Cyber Verification Program](https://support.claude.com/en/articles/14604842-real-time-cyber-safeguards-on-claude), das Zugriff für legitime Cybersicherheitsarbeit gewährt. Auf Opus 5.5, das v2.1.280 oder später erfordert, beginnt die Meldung mit `Opus 5.5's safeguards flagged this session` statt. Wenn die gekennzeichnete Kategorie ein verfügbares Fallback-Modell hat, [wechselt Claude Code Modelle](/docs/de/model-config#automatic-model-fallback), statt diesen Fehler anzuzeigen.

2428 2512 

2429Auf [Amazon Bedrock](/docs/de/amazon-bedrock), [Google Clouds Agent Platform](/docs/de/google-vertex-ai) und [Microsoft Foundry](/docs/de/microsoft-foundry) erzeugt eine Cybersicherheits-Kennzeichnung stattdessen die [Nutzungsrichtlinie-Ablehnung](#usage-policy-refusal)-Meldung.2513Auf [Amazon Bedrock](/docs/de/amazon-bedrock), [Google Clouds Agent Platform](/docs/de/google-vertex-ai) und [Microsoft Foundry](/docs/de/microsoft-foundry) erzeugt eine Cybersicherheits-Kennzeichnung stattdessen die [Nutzungsrichtlinie-Ablehnung](#usage-policy-refusal)-Meldung.

2430 2514 


2626* Wenn das Verzeichnis unter demselben Pfad neu erstellt wurde, hält Ihre Shell immer noch das gelöschte. Führen Sie `cd "$PWD"` aus oder verlassen Sie das Verzeichnis und betreten Sie es erneut, dann führen Sie `claude` erneut aus2710* Wenn das Verzeichnis unter demselben Pfad neu erstellt wurde, hält Ihre Shell immer noch das gelöschte. Führen Sie `cd "$PWD"` aus oder verlassen Sie das Verzeichnis und betreten Sie es erneut, dann führen Sie `claude` erneut aus

2627* Für `EPERM` auf macOS beenden Sie Ihre Terminal-App mit Cmd+Q, öffnen Sie sie erneut, kehren Sie zu diesem Ordner zurück und führen Sie `claude` aus. Wenn `ls` in diesem Ordner immer noch fehlschlägt, öffnen Sie **Systemeinstellungen > Datenschutz & Sicherheit > Dateien und Ordner**, aktivieren Sie den Ordner für Ihre Terminal-App und öffnen Sie das Terminal erneut2711* Für `EPERM` auf macOS beenden Sie Ihre Terminal-App mit Cmd+Q, öffnen Sie sie erneut, kehren Sie zu diesem Ordner zurück und führen Sie `claude` aus. Wenn `ls` in diesem Ordner immer noch fehlschlägt, öffnen Sie **Systemeinstellungen > Datenschutz & Sicherheit > Dateien und Ordner**, aktivieren Sie den Ordner für Ihre Terminal-App und öffnen Sie das Terminal erneut

2628 2712 

2713<h3 id="temp-directory-refused-or-cannot-be-created">

2714 Temp-Verzeichnis verweigert oder kann nicht erstellt werden

2715</h3>

2716 

2717Auf macOS und Linux erstellt Claude Code beim Start ein privates Temp-Verzeichnis, `claude-<uid>` unter dem System-Temp-Verzeichnis oder der [`CLAUDE_CODE_TMPDIR`](/docs/de/env-vars)-Überschreibung. Wenn das Verzeichnis nicht erstellt werden kann oder ein Eintrag, der bereits unter diesem Pfad existiert, die Sicherheitsprüfungen nicht besteht, druckt Claude Code den Fehler auf stderr und beendet sich mit Code 1, anstatt die Sitzung zu starten:

2718 

2719```text wrap theme={null}

2720ENOSPC: no space left on device, mkdir '/tmp/claude-501'

2721 

2722Temp directory /tmp/claude-501 is not a directory (may be an attacker-planted symlink). Refusing to use it. Set CLAUDE_CODE_TMPDIR to a directory you control, or ask an administrator to remove it.

2723 

2724Temp directory /tmp/claude-501 is owned by uid 502, expected 501. Refusing to use it — another user may have pre-created it. Set CLAUDE_CODE_TMPDIR to a directory you control, or ask an administrator to remove it.

2725 

2726Temp directory /tmp/claude-501 is not readable (its mode may have been altered, or a path component denies search). Refusing to use it — restore its permissions (chmod 0700) or remove it. Set CLAUDE_CODE_TMPDIR to a directory you control, or ask an administrator to remove it.

2727```

2728 

2729**Was zu tun ist:**

2730 

2731* Für `ENOSPC` geben Sie Speicherplatz auf dem Volume frei, das das Temp-Verzeichnis enthält

2732* Für die `Refusing to use it`-Formen entfernen Sie den benannten Eintrag selbst, nicht das, auf das ein Link zeigt, und starten Sie Claude Code erneut; für die `owned by uid`-Form kann nur ein Administrator oder dieser Benutzer ihn entfernen

2733* Für `is not readable` führen Sie `chmod 0700` auf dem benannten Verzeichnis aus oder entfernen Sie es und starten Sie erneut

2734* Setzen Sie in jedem dieser Fälle [`CLAUDE_CODE_TMPDIR`](/docs/de/env-vars) auf ein Verzeichnis, das Sie kontrollieren, und starten Sie Claude Code erneut, wobei Sie den abgelehnten Pfad allein lassen

2735 

2629<h3 id="directory-couldnt-be-resolved-to-a-real-location">2736<h3 id="directory-couldnt-be-resolved-to-a-real-location">

2630 Verzeichnis konnte nicht zu einem echten Ort aufgelöst werden2737 Verzeichnis konnte nicht zu einem echten Ort aufgelöst werden

2631</h3>2738</h3>


2951 3058 

2952* Ein Tippfehler, wie `/hepl` für `/help`. [Wie das Befehlsmenü das, was Sie eingeben, abgleicht](/docs/de/commands#how-the-command-menu-matches-what-you-type) behandelt das Auswählen einer nahen Übereinstimmung, bevor Sie einreichen3059* Ein Tippfehler, wie `/hepl` für `/help`. [Wie das Befehlsmenü das, was Sie eingeben, abgleicht](/docs/de/commands#how-the-command-menu-matches-what-you-type) behandelt das Auswählen einer nahen Übereinstimmung, bevor Sie einreichen

2953* Ein Befehl, der existiert, aber in dieser Sitzung nicht verfügbar ist, weil eine Anforderung nicht erfüllt ist, wie Ihre Plattform, Ihr Plan oder Ihre Authentifizierungsmethode. Die Troubleshooting-Einträge für [`/web-setup`](/docs/de/web-quickstart#web-setup-shows-no-commands-match-or-unknown-command) und [`/schedule`](/docs/de/routines#schedule-returns-unknown-command) gehen durch zwei häufige Fälle. Einige Befehle antworten mit ihrer eigenen Meldung, wenn die Richtlinie Ihrer Organisation sie deaktiviert, wie [`Cloud sessions are disabled by your organization's policy`](#cloud-sessions-are-disabled-by-your-organizations-policy)3060* Ein Befehl, der existiert, aber in dieser Sitzung nicht verfügbar ist, weil eine Anforderung nicht erfüllt ist, wie Ihre Plattform, Ihr Plan oder Ihre Authentifizierungsmethode. Die Troubleshooting-Einträge für [`/web-setup`](/docs/de/web-quickstart#web-setup-shows-no-commands-match-or-unknown-command) und [`/schedule`](/docs/de/routines#schedule-returns-unknown-command) gehen durch zwei häufige Fälle. Einige Befehle antworten mit ihrer eigenen Meldung, wenn die Richtlinie Ihrer Organisation sie deaktiviert, wie [`Cloud sessions are disabled by your organization's policy`](#cloud-sessions-are-disabled-by-your-organizations-policy)

2954* Ein Befehl aus einem [Plugin](/docs/de/plugins) oder [MCP-Server](/docs/de/mcp#use-mcp-prompts-as-commands), der in dieser Sitzung nicht installiert oder verbunden ist3061* Ein Befehl aus einem [Plugin](/docs/de/plugins/overview) oder [MCP-Server](/docs/de/mcp#use-mcp-prompts-as-commands), der in dieser Sitzung nicht installiert oder verbunden ist

2955 3062 

2956Claude Code antwortet auf einen nicht übereinstimmenden `/`-Namen auf diese Weise nur in einer interaktiven Terminal-Sitzung. In jeder anderen Sitzung sendet es die Eingabeaufforderung als normale Nachricht an Claude, mit einer Notiz, dass der Befehl nicht ausgeführt wurde, und einer Liste von Befehlen, die Claude in der Sitzung ausführen kann. Diese Sitzungen umfassen:3063Claude Code antwortet auf einen nicht übereinstimmenden `/`-Namen auf diese Weise nur in einer interaktiven Terminal-Sitzung. In jeder anderen Sitzung sendet es die Eingabeaufforderung als normale Nachricht an Claude, mit einer Notiz, dass der Befehl nicht ausgeführt wurde, und einer Liste von Befehlen, die Claude in der Sitzung ausführen kann. Diese Sitzungen umfassen:

2957 3064 


3283 Plugin-Fehler3390 Plugin-Fehler

3284</h2>3391</h2>

3285 3392 

3286Diese Fehler stammen aus der [Plugin](/docs/de/plugins)- und [Marketplace](/docs/de/plugin-marketplaces)-Konfiguration. Bei Plugin-Problemen, die keine der Meldungen auf dieser Seite erzeugen, wie z. B. eine Marketplace-URL, die nicht geladen wird, oder ein Plugin, das installiert wird, aber nicht angezeigt wird, siehe [Plugin-Fehlerbehebung](/docs/de/discover-plugins#troubleshooting).3393Diese Fehler stammen aus der [Plugin](/docs/de/plugins/overview)- und [Marketplace](/docs/de/plugins/overview)-Konfiguration. Bei Plugin-Problemen, die keine der Meldungen auf dieser Seite erzeugen, wie z. B. eine Marketplace-URL, die nicht geladen wird, oder ein Plugin, das installiert wird, aber nicht angezeigt wird, siehe [Plugin-Fehlerbehebung](/docs/de/plugins/troubleshooting).

3287 3394 

3288<h3 id="plugin-eval-is-currently-in-early-access">3395<h3 id="plugin-eval-is-currently-in-early-access">

3289 plugin eval ist derzeit in Early Access3396 plugin eval ist derzeit in Early Access


3310 Marketplace ist von einer nicht vertrauenswürdigen Quelle registriert3417 Marketplace ist von einer nicht vertrauenswürdigen Quelle registriert

3311</h3>3418</h3>

3312 3419 

3313Der Marketplace ist unter einem Namen registriert, der [für offizielle Anthropic-Marketplaces reserviert ist](/docs/de/plugin-marketplaces#marketplace-schema), aber seine registrierte Quelle ist kein `anthropics` GitHub-Repository. Claude Code überprüft reservierte Namen jedes Mal, wenn es einen Marketplace lädt oder aktualisiert, sodass der Marketplace und die von ihm installierten Plugins nicht mehr geladen werden. Vor v2.1.205 wurde der Name nur überprüft, wenn der Marketplace hinzugefügt wurde, sodass ein Eintrag, der registriert wurde, bevor sein Name reserviert wurde, weiterhin geladen wurde.3420Der Marketplace ist unter einem Namen registriert, der [für offizielle Anthropic-Marketplaces reserviert ist](/docs/de/plugins/marketplace-reference#marketplace-file), aber seine registrierte Quelle ist kein `anthropics` GitHub-Repository. Claude Code überprüft reservierte Namen jedes Mal, wenn es einen Marketplace lädt oder aktualisiert, sodass der Marketplace und die von ihm installierten Plugins nicht mehr geladen werden. Vor v2.1.205 wurde der Name nur überprüft, wenn der Marketplace hinzugefügt wurde, sodass ein Eintrag, der registriert wurde, bevor sein Name reserviert wurde, weiterhin geladen wurde.

3314 3421 

3315```text theme={null}3422```text theme={null}

3316Marketplace "claude-community" is registered from an untrusted source: The name 'claude-community' is reserved for official Anthropic marketplaces. Only repositories from 'github.com/anthropics/' can use this name. To fix it, remove the marketplace and re-add it from the official source.3423Marketplace "claude-community" is registered from an untrusted source: The name 'claude-community' is reserved for official Anthropic marketplaces. Only repositories from 'github.com/anthropics/' can use this name. To fix it, remove the marketplace and re-add it from the official source.


3322 3429 

3323* Wenn der Marketplace bereits registriert ist, führen Sie `claude plugin marketplace remove <name>` aus und fügen Sie ihn dann erneut aus dem offiziellen `github.com/anthropics`-Repository hinzu3430* Wenn der Marketplace bereits registriert ist, führen Sie `claude plugin marketplace remove <name>` aus und fügen Sie ihn dann erneut aus dem offiziellen `github.com/anthropics`-Repository hinzu

3324* Wenn Sie einen Drittanbieter-Marketplace veröffentlichen, der den Namen verwendet hat, bevor er reserviert wurde, benennen Sie ihn um und bitten Sie Benutzer, ihn von Ihrer Quelle erneut hinzuzufügen3431* Wenn Sie einen Drittanbieter-Marketplace veröffentlichen, der den Namen verwendet hat, bevor er reserviert wurde, benennen Sie ihn um und bitten Sie Benutzer, ihn von Ihrer Quelle erneut hinzuzufügen

3325* Siehe die Liste der reservierten Namen unter [Marketplace-Schema](/docs/de/plugin-marketplaces#marketplace-schema)3432* Siehe die Liste der reservierten Namen unter [Marketplace-Schema](/docs/de/plugins/marketplace-reference#marketplace-file)

3433 

3434<h3 id="marketplace-name-is-another-spelling-of-a-reserved-name">

3435 Marketplace-Name ist eine andere Schreibweise eines reservierten Namens

3436</h3>

3437 

3438Der Name des Marketplace ist selbst kein reservierter Name, aber Claude Code behandelt ihn als eine andere Schreibweise eines solchen. [Reservierte Namen](/docs/de/plugins/marketplace-reference#reserved-name-spellings) listet auf, welche Schreibweisen als reservierter Name gelten. Claude Code lehnt einen solchen Namen ab, wenn Sie den Marketplace hinzufügen:

3439 

3440```text theme={null}

3441Failed to add marketplace: "claude.code.plugins" is another spelling of "claude-code-plugins", a reserved marketplace name.

3442```

3443 

3444Wenn ein Marketplace bereits unter einem solchen Namen registriert ist, wird sein Eintrag nicht mehr geladen, und `/plugin`, `claude plugin install` und `claude plugin update` warnen:

3445 

3446```text wrap theme={null}

3447known_marketplaces.json has an entry named "claude.code.plugins", another spelling of the reserved marketplace name "claude-code-plugins", so it is ignored. Remove it with: claude plugin marketplace remove claude.code.plugins

3448```

3449 

3450Wenn der Name Shell-Quoting benötigen würde, lautet die Ablehnung beim Hinzufügen `This marketplace's name is another spelling of "<reserved>", a reserved marketplace name. It is not exactly the reserved name it appears to be.`

3451 

3452**Was zu tun ist:**

3453 

3454* Benennen Sie den Marketplace in einen Namen um, der keine reservierte Schreibweise darstellt, und fügen Sie ihn erneut hinzu

3455* Für die Warnung zu ignoriertem Eintrag führen Sie den `claude plugin marketplace remove`-Befehl aus, den sie angibt, oder entfernen Sie den Eintrag aus `~/.claude/plugins/known_marketplaces.json`

3326 3456 

3327<h3 id="marketplace-is-already-added-from-a-different-source">3457<h3 id="marketplace-is-already-added-from-a-different-source">

3328 Marketplace ist bereits von einer anderen Quelle hinzugefügt3458 Marketplace ist bereits von einer anderen Quelle hinzugefügt

3329</h3>3459</h3>

3330 3460 

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

3332 3462 

3333```text theme={null}3463```text theme={null}

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


3343 Plugin-Befehl referenziert user\_config in einem Shell-Befehl3473 Plugin-Befehl referenziert user\_config in einem Shell-Befehl

3344</h3>3474</h3>

3345 3475 

3346Ein Plugin-Hook, [monitor](/docs/de/plugins-reference#monitors) oder MCP [`headersHelper`](/docs/de/mcp#use-dynamic-headers-for-custom-authentication)-Befehl referenziert eine `${user_config.KEY}` [Plugin-Option](/docs/de/plugins-reference#user-configuration), und die ersetzte Zeichenkette würde an eine Shell übergeben. Ein konfigurierter Wert, der `$(...)`, Backticks oder `;` enthält, würde dort als Code ausgeführt, daher weigert sich Claude Code, die Komponente zu starten, anstatt den Wert zu ersetzen. Die Überprüfung läuft auf der Befehlsvorlage, daher wird der Fehler angezeigt, auch wenn noch kein Wert konfiguriert ist. Vor v2.1.207 wurde der Wert in den Shell-Befehl ersetzt.3476Ein Plugin-Hook, [monitor](/docs/de/plugins/components#monitors) oder MCP [`headersHelper`](/docs/de/mcp#use-dynamic-headers-for-custom-authentication)-Befehl referenziert eine `${user_config.KEY}` [Plugin-Option](/docs/de/plugins/manifest-reference#user-configuration), und die ersetzte Zeichenkette würde an eine Shell übergeben. Ein konfigurierter Wert, der `$(...)`, Backticks oder `;` enthält, würde dort als Code ausgeführt, daher weigert sich Claude Code, die Komponente zu starten, anstatt den Wert zu ersetzen. Die Überprüfung läuft auf der Befehlsvorlage, daher wird der Fehler angezeigt, auch wenn noch kein Wert konfiguriert ist. Vor v2.1.207 wurde der Wert in den Shell-Befehl ersetzt.

3347 3477 

3348Die Formulierung hängt davon ab, welche Oberfläche die Option referenziert hat. Ein Shell-Form-Hook meldet:3478Die Formulierung hängt davon ab, welche Oberfläche die Option referenziert hat. Ein Shell-Form-Hook meldet:

3349 3479 


3373 Plugin-Archiv-Integritätsprüfung fehlgeschlagen3503 Plugin-Archiv-Integritätsprüfung fehlgeschlagen

3374</h3>3504</h3>

3375 3505 

3376Der Marketplace-Eintrag des Plugins verwendet eine [`archive`-Quelle](/docs/de/plugin-marketplaces#zip-archives) mit einem `sha256`-Pin, und der Digest der heruntergeladenen Datei stimmt nicht mit dem Pin überein. Claude Code lehnt die Installation ab, daher ändert sich nichts im Plugin-Cache. Die Nichtübereinstimmung hat drei mögliche Ursachen:3506Der Marketplace-Eintrag des Plugins verwendet eine [`archive`-Quelle](/docs/de/plugins/marketplace-reference#archive-plugin-source) mit einem `sha256`-Pin, und der Digest der heruntergeladenen Datei stimmt nicht mit dem Pin überein. Claude Code lehnt die Installation ab, daher ändert sich nichts im Plugin-Cache. Die Nichtübereinstimmung hat drei mögliche Ursachen:

3377 3507 

3378* Die Datei unter der URL hat sich geändert, nachdem der Autor den Pin berechnet hat3508* Die Datei unter der URL hat sich geändert, nachdem der Autor den Pin berechnet hat

3379* Der Autor hat den falschen Digest im Marketplace-Eintrag eingegeben3509* Der Autor hat den falschen Digest im Marketplace-Eintrag eingegeben


3393 Pfad entweicht dem Plugin-Verzeichnis3523 Pfad entweicht dem Plugin-Verzeichnis

3394</h3>3524</h3>

3395 3525 

3396Ein Plugin-Komponentenpfad, der im `plugin.json` des Plugins oder in seinem [Marketplace-Eintrag](/docs/de/plugin-marketplaces#plugin-entries) deklariert ist, wird außerhalb des eigenen Verzeichnisses des Plugins aufgelöst. Claude Code verwirft diesen Pfad und lädt den Rest des Plugins. Der Komponentenname in der Meldung, wie z. B. `commands` oder `hooks`, benennt das Feld, das den Pfad deklariert hat.3526Ein Plugin-Komponentenpfad, der im `plugin.json` des Plugins oder in seinem [Marketplace-Eintrag](/docs/de/plugins/marketplace-reference#plugin-entries) deklariert ist, wird außerhalb des eigenen Verzeichnisses des Plugins aufgelöst. Claude Code verwirft diesen Pfad und lädt den Rest des Plugins. Der Komponentenname in der Meldung, wie z. B. `commands` oder `hooks`, benennt das Feld, das den Pfad deklariert hat.

3397 3527 

3398```text theme={null}3528```text theme={null}

3399commands path escapes plugin directory: ./../shared.md3529commands path escapes plugin directory: ./../shared.md


3401 3531 

3402In der `claude plugin`-Befehlsausgabe liest sich derselbe Fehler als `Path escapes plugin directory: ./../shared.md (commands)`.3532In der `claude plugin`-Befehlsausgabe liest sich derselbe Fehler als `Path escapes plugin directory: ./../shared.md (commands)`.

3403 3533 

3404Claude Code lehnt sowohl einen Pfad ab, der außerhalb des Plugins zeigt, wie geschrieben, z. B. `../shared-utils`, als auch einen Symlink, der außerhalb des Plugins führt und nicht einer der [Marketplace-Symlink-Regeln](/docs/de/plugins-reference#share-files-within-a-marketplace-with-symlinks) entspricht. Für einen Symlink sagt die Meldung auch, wo der Pfad aufgelöst wird:3534Claude Code lehnt sowohl einen Pfad ab, der außerhalb des Plugins zeigt, wie geschrieben, z. B. `../shared-utils`, als auch einen Symlink, der außerhalb des Plugins führt und nicht einer der [Marketplace-Symlink-Regeln](/docs/de/plugins/host-marketplace#share-files-within-a-marketplace-with-symlinks) entspricht. Für einen Symlink sagt die Meldung auch, wo der Pfad aufgelöst wird:

3405 3535 

3406```text theme={null}3536```text theme={null}

3407commands path escapes plugin directory: ./commands/deploy.md — it resolves to /home/user/shared/deploy.md, outside the plugin directory3537commands path escapes plugin directory: ./commands/deploy.md — it resolves to /home/user/shared/deploy.md, outside the plugin directory


3422* Verschieben Sie die referenzierte Datei in das Plugin-Verzeichnis und zeigen Sie mit einem `./` relativen Pfad darauf3552* Verschieben Sie die referenzierte Datei in das Plugin-Verzeichnis und zeigen Sie mit einem `./` relativen Pfad darauf

3423* Wenn der Pfad ein Symlink zu einer Datei außerhalb des Plugins ist, ersetzen Sie den Symlink durch eine Kopie der Datei3553* Wenn der Pfad ein Symlink zu einer Datei außerhalb des Plugins ist, ersetzen Sie den Symlink durch eine Kopie der Datei

3424* Wenn die Meldung sagt, dass der Pfad einen Backslash enthält, schreiben Sie den Pfad mit Schrägstrichen, z. B. `./commands/deploy.md`3554* Wenn die Meldung sagt, dass der Pfad einen Backslash enthält, schreiben Sie den Pfad mit Schrägstrichen, z. B. `./commands/deploy.md`

3425* Um Dateien mit anderen Plugins im selben Marketplace zu teilen, verlinken Sie sie mit einem Symlink im Plugin-Verzeichnis, gemäß den [Symlink-Regeln](/docs/de/plugins-reference#share-files-within-a-marketplace-with-symlinks)3555* Um Dateien mit anderen Plugins im selben Marketplace zu teilen, verlinken Sie sie mit einem Symlink im Plugin-Verzeichnis, gemäß den [Symlink-Regeln](/docs/de/plugins/host-marketplace#share-files-within-a-marketplace-with-symlinks)

3426 3556 

3427<h3 id="path-could-not-be-checked">3557<h3 id="path-could-not-be-checked">

3428 Pfad konnte nicht überprüft werden3558 Pfad konnte nicht überprüft werden


3430 3560 

3431Claude Code fragte das Betriebssystem, ob ein Plugin-Pfad existiert, und erhielt einen Fehler, der nicht „nicht gefunden" ist, daher wird nicht geladen, was der Pfad benennt. Wie viel des Plugins geladen wird, hängt davon ab, welcher Pfad fehlgeschlagen ist:3561Claude Code fragte das Betriebssystem, ob ein Plugin-Pfad existiert, und erhielt einen Fehler, der nicht „nicht gefunden" ist, daher wird nicht geladen, was der Pfad benennt. Wie viel des Plugins geladen wird, hängt davon ab, welcher Pfad fehlgeschlagen ist:

3432 3562 

3433* Einer der [Standard-Komponentenordner](/docs/de/plugins-reference#file-locations-reference) eines Plugins, wie z. B. der `skills/`-Ordner, die `monitors/monitors.json`-Datei oder eine [`SKILL.md` im Plugin-Stammverzeichnis](/docs/de/plugins-reference#skills): Die anderen Komponenten des Plugins werden weiterhin geladen3563* Einer der [Standard-Komponentenordner](/docs/de/plugins/manifest-reference#standard-layout) eines Plugins, wie z. B. der `skills/`-Ordner, die `monitors/monitors.json`-Datei oder eine [`SKILL.md` im Plugin-Stammverzeichnis](/docs/de/plugins/components#skills): Die anderen Komponenten des Plugins werden weiterhin geladen

3434* Das eigene Verzeichnis des Plugins: Nichts aus diesem Plugin wird geladen3564* Das eigene Verzeichnis des Plugins: Nichts aus diesem Plugin wird geladen

3435 3565 

3436Sie sehen diesen Fehler nicht für einen Pfad, der überhaupt nicht existiert. In `/plugin` wird der Fehler unter dem Plugin angezeigt und benennt den Pfad und den Code, den das Betriebssystem zurückgegeben hat:3566Sie sehen diesen Fehler nicht für einen Pfad, der überhaupt nicht existiert. In `/plugin` wird der Fehler unter dem Plugin angezeigt und benennt den Pfad und den Code, den das Betriebssystem zurückgegeben hat:


3460 Marketplace-Eintragspfad bleibt nicht im Marketplace-Verzeichnis3590 Marketplace-Eintragspfad bleibt nicht im Marketplace-Verzeichnis

3461</h3>3591</h3>

3462 3592 

3463Der [Marketplace-Eintrag](/docs/de/plugin-marketplaces#plugin-entries) des Plugins deklariert einen Quellpfad, den Claude Code nicht zu einem Ort im eigenen Verzeichnis des Marketplace auflösen kann, daher wird das Plugin nicht installiert oder geladen. Die Ablehnung umfasst:3593Der [Marketplace-Eintrag](/docs/de/plugins/marketplace-reference#plugin-entries) des Plugins deklariert einen Quellpfad, den Claude Code nicht zu einem Ort im eigenen Verzeichnis des Marketplace auflösen kann, daher wird das Plugin nicht installiert oder geladen. Die Ablehnung umfasst:

3464 3594 

3465* Ein Eintrags-Pfad, der absolut ist, mit `..` aus dem Marketplace klettert oder wie ein Netzwerkpfad geschrieben ist3595* Ein Eintrags-Pfad, der absolut ist, mit `..` aus dem Marketplace klettert oder wie ein Netzwerkpfad geschrieben ist

3596* Auf macOS und Linux einen Eintrags-Pfad, der an irgendeiner Stelle nach dem führenden `./` einen Backslash enthält

3466* Ein Eintrag in einem Marketplace, der aus einer Remote-Quelle wie Git oder einer URL abgerufen wird, der sein Ziel durch einen Symlink erreicht, der außerhalb des Marketplace-Verzeichnisses aufgelöst wird3597* Ein Eintrag in einem Marketplace, der aus einer Remote-Quelle wie Git oder einer URL abgerufen wird, der sein Ziel durch einen Symlink erreicht, der außerhalb des Marketplace-Verzeichnisses aufgelöst wird

3467* Ein relativer Eintrag in einem Marketplace, der von einer direkten URL zu seiner `marketplace.json` hinzugefügt wurde: Claude Code lädt nur diese Datei herunter, daher existieren keine lokalen Plugin-Dateien für den Pfad zum Benennen. Siehe [Plugins mit relativen Pfaden schlagen in URL-basierten Marketplaces fehl](/docs/de/plugin-marketplaces#plugins-with-relative-paths-fail-in-url-based-marketplaces)3598* Ein relativer Eintrag in einem Marketplace, der von einer direkten URL zu seiner `marketplace.json` hinzugefügt wurde: Claude Code lädt nur diese Datei herunter, daher existieren keine lokalen Plugin-Dateien für den Pfad zum Benennen. Siehe [Plugins mit relativen Pfaden schlagen in URL-basierten Marketplaces fehl](/docs/de/plugins/troubleshooting#plugins-with-relative-paths-fail-in-url-based-marketplaces)

3468 3599 

3469`claude plugin install` meldet die Ablehnung wie folgt:3600`claude plugin install` meldet die Ablehnung wie folgt:

3470 3601 


3480 3611 

3481**Was zu tun ist:**3612**Was zu tun ist:**

3482 3613 

3483* Wenn Sie den Marketplace verwalten, schreiben Sie den `source` des Eintrags als einen einfachen relativen Pfad wie `./plugins/my-plugin`, und halten Sie jeden Symlink, den er kreuzt, auf das Marketplace-Verzeichnis gerichtet3614* Wenn Sie den Marketplace verwalten, schreiben Sie den `source` des Eintrags als einen einfachen relativen Pfad mit Schrägstrichen, wie z. B. `./plugins/my-plugin`, und halten Sie jeden Symlink, den er kreuzt, auf das Marketplace-Verzeichnis gerichtet

3484* Wenn Sie den Marketplace von einer direkten URL hinzugefügt haben, können relative Einträge nicht aufgelöst werden. Bitten Sie den Marketplace-Autor, [eine andere Plugin-Quelle](/docs/de/plugin-marketplaces#plugin-sources) zu verwenden, oder fügen Sie den Marketplace stattdessen aus seinem Git-Repository hinzu3615* Wenn Sie den Marketplace von einer direkten URL hinzugefügt haben, können relative Einträge nicht aufgelöst werden. Bitten Sie den Marketplace-Autor, [eine andere Plugin-Quelle](/docs/de/plugins/marketplace-reference#plugin-sources) zu verwenden, oder fügen Sie den Marketplace stattdessen aus seinem Git-Repository hinzu

3485 3616 

3486<h3 id="failed-to-load-marketplace-configuration">3617<h3 id="failed-to-load-marketplace-configuration">

3487 Fehler beim Laden der Marketplace-Konfiguration3618 Fehler beim Laden der Marketplace-Konfiguration


3511 Plugin ist von Ihrer Organisation erforderlich3642 Plugin ist von Ihrer Organisation erforderlich

3512</h3>3643</h3>

3513 3644 

3514Sie haben `claude plugin disable` ausgeführt oder die `/plugin` **Installiert**-Registerkarte verwendet, um ein [Plugin, das von claude.ai synchronisiert wird](/docs/de/plugins-reference#synced-plugins), auszuschalten, das Ihre Organisation als erforderlich kennzeichnet:3645Sie haben `claude plugin disable` ausgeführt oder die `/plugin` **Installiert**-Registerkarte verwendet, um ein [Plugin, das von claude.ai synchronisiert wird](/docs/de/plugins/loading#synced-plugins), auszuschalten, das Ihre Organisation als erforderlich kennzeichnet:

3515 3646 

3516```text theme={null}3647```text theme={null}

3517Plugin "<name>@synced" is required by your organization and can't be disabled here. Contact your admin to change it.3648Plugin "<name>@synced" is required by your organization and can't be disabled here. Contact your admin to change it.


3553 3684 

3554* Korrigieren Sie jeden Eintrag, den der Fehler benennt, anhand der [für Subagenten verfügbaren Tools](/docs/de/sub-agents#available-tools)3685* Korrigieren Sie jeden Eintrag, den der Fehler benennt, anhand der [für Subagenten verfügbaren Tools](/docs/de/sub-agents#available-tools)

3555* Entfernen Sie Einträge für Tools, die die Sitzung nicht hat, wie MCP-Tools von einem Server, der nicht verbunden ist3686* Entfernen Sie Einträge für Tools, die die Sitzung nicht hat, wie MCP-Tools von einem Server, der nicht verbunden ist

3556* Für ein Tool, das [Hintergrund-Subagenten ablegen](/docs/de/sub-agents#available-tools), wie `LSP`, entfernen Sie den Eintrag. Um das Tool zu behalten, [schalten Sie den Fork-Modus aus](/docs/de/sub-agents#turn-fork-mode-on-or-off) und bitten Sie Claude, den Subagenten im Vordergrund auszuführen3687* Für ein Tool, das [Hintergrund-Subagenten ablegen](/docs/de/sub-agents#available-tools), wie `CronCreate`, entfernen Sie den Eintrag. Um das Tool zu behalten, [schalten Sie den Fork-Modus aus](/docs/de/sub-agents#turn-fork-mode-on-or-off) und bitten Sie Claude, den Subagenten im Vordergrund auszuführen

3557* Löschen Sie das `tools`-Feld, anstatt Tools aufzulisten, um dem Subagenten alle [für Subagenten verfügbaren Tools](/docs/de/sub-agents#available-tools) zu geben3688* Löschen Sie das `tools`-Feld, anstatt Tools aufzulisten, um dem Subagenten alle [für Subagenten verfügbaren Tools](/docs/de/sub-agents#available-tools) zu geben

3558* Für eine `tools`-Liste, die nur `Agent` enthält, erhöhen Sie das [Tiefenlimit](/docs/de/sub-agents#let-subagents-spawn-their-own-subagents) oder geben Sie dem Agenten mindestens ein anderes Tool: Claude Code behält `Agent` bei diesem Limit zurück, daher wird eine Liste mit nichts anderem darin zu keinen Tools aufgelöst3689* Für eine `tools`-Liste, die nur `Agent` enthält, erhöhen Sie das [Tiefenlimit](/docs/de/sub-agents#let-subagents-spawn-their-own-subagents) oder geben Sie dem Agenten mindestens ein anderes Tool: Claude Code behält `Agent` bei diesem Limit zurück, daher wird eine Liste mit nichts anderem darin zu keinen Tools aufgelöst

3559 3690 


4798 4929 

4799* Ein konfiguriertes [`--fallback-model`](/docs/de/cli-reference#cli-flags) übernimmt nach einem Verfügbarkeitsfehler für diesen Zug nur mit einer Notiz im Transkript4930* Ein konfiguriertes [`--fallback-model`](/docs/de/cli-reference#cli-flags) übernimmt nach einem Verfügbarkeitsfehler für diesen Zug nur mit einer Notiz im Transkript

4800* Eine Verfügbarkeitsprüfung von Amazon Bedrock oder Google Cloud's Agent Platform stellt fest, dass Ihr Standardmodell nicht verfügbar ist4931* Eine Verfügbarkeitsprüfung von Amazon Bedrock oder Google Cloud's Agent Platform stellt fest, dass Ihr Standardmodell nicht verfügbar ist

4801* [Automatisches Modell-Fallback](/docs/de/model-config#automatic-model-fallback) auf Fable 5.1, Fable 5 und Opus 5 verschiebt die Sitzung zum Fallback-Modell der gekennzeichneten Kategorie, wenn diese Kategorie über einen verfügt, und zeigt eine Notiz im Transkript an4932* [Automatisches Modell-Fallback](/docs/de/model-config#automatic-model-fallback) auf Fable 5.1, Fable 5, Opus 5.5 und Opus 5 verschiebt die Sitzung zum Fallback-Modell der gekennzeichneten Kategorie, wenn diese Kategorie über einen verfügt, und zeigt eine Notiz im Transkript an

4802 4933 

4803Die Modellauswahlprüfung unten erfasst den zweiten und dritten Fall; der erste erscheint als Transkriptnotiz statt als `/model`-Änderung. [Modellkonfiguration](/docs/de/model-config) erklärt, wann jedes Fallback angewendet wird.4934Die Modellauswahlprüfung unten erfasst den zweiten und dritten Fall; der erste erscheint als Transkriptnotiz statt als `/model`-Änderung. [Modellkonfiguration](/docs/de/model-config) erklärt, wann jedes Fallback angewendet wird.

4804 4935 

Details

32* [CLI](/docs/de/quickstart) und [Agent SDK](/docs/de/agent-sdk/overview)32* [CLI](/docs/de/quickstart) und [Agent SDK](/docs/de/agent-sdk/overview)

33* [VS Code](/docs/de/vs-code) und [JetBrains](/docs/de/jetbrains) Erweiterungen33* [VS Code](/docs/de/vs-code) und [JetBrains](/docs/de/jetbrains) Erweiterungen

34* [Subagents](/docs/de/sub-agents), [hooks](/docs/de/hooks-guide), [commands](/docs/de/commands) und [skills](/docs/de/skills)34* [Subagents](/docs/de/sub-agents), [hooks](/docs/de/hooks-guide), [commands](/docs/de/commands) und [skills](/docs/de/skills)

35* [CLAUDE.md memory](/docs/de/memory), [plugins](/docs/de/plugins) und [MCP servers](/docs/de/mcp)35* [CLAUDE.md memory](/docs/de/memory), [plugins](/docs/de/plugins/overview) und [MCP servers](/docs/de/mcp)

36* [Checkpoints](/docs/de/checkpointing), [sandboxing](/docs/de/sandboxing) und [Workflows](/docs/de/workflows)36* [Checkpoints](/docs/de/checkpointing), [sandboxing](/docs/de/sandboxing) und [Workflows](/docs/de/workflows)

37* [OpenTelemetry metrics](/docs/de/monitoring-usage) und die [verwaltete Einstellungsdatei](/docs/de/managed-settings#delivery-mechanisms)37* [OpenTelemetry metrics](/docs/de/monitoring-usage) und die [verwaltete Einstellungsdatei](/docs/de/managed-settings#delivery-mechanisms)

38 38 

Details

29* **[Dynamische Workflows](/docs/de/workflows)** führen viele Subagents aus einem Skript aus, das Claude schreibt, und geben ein Ergebnis zurück29* **[Dynamische Workflows](/docs/de/workflows)** führen viele Subagents aus einem Skript aus, das Claude schreibt, und geben ein Ergebnis zurück

30* **[Sitzungsübergreifendes Messaging](/docs/de/cross-session-messaging)** ermöglicht es Claude, eine Nachricht von einer Ihrer Sitzungen an eine andere zu übergeben30* **[Sitzungsübergreifendes Messaging](/docs/de/cross-session-messaging)** ermöglicht es Claude, eine Nachricht von einer Ihrer Sitzungen an eine andere zu übergeben

31* **[Hooks](/docs/de/hooks-guide)** führen Ihr Skript, eine HTTP-Anfrage, einen MCP-Tool-Aufruf, einen Prompt oder einen Subagent aus, wenn Claude Code ein Lebenszyklusereignis erreicht31* **[Hooks](/docs/de/hooks-guide)** führen Ihr Skript, eine HTTP-Anfrage, einen MCP-Tool-Aufruf, einen Prompt oder einen Subagent aus, wenn Claude Code ein Lebenszyklusereignis erreicht

32* **[Plugins](/docs/de/plugins)** und **[Marketplaces](/docs/de/plugin-marketplaces)** verpacken und verteilen diese Funktionen32* **[Plugins](/docs/de/plugins/overview)** und **[Marketplaces](/docs/de/plugins/overview)** verpacken und verteilen diese Funktionen

33 33 

34[Skills](/docs/de/skills) sind die flexibelste Erweiterung. Ein Skill ist eine Markdown-Datei, die Wissen, Workflows oder Anweisungen enthält. Sie können Skills mit einem Befehl wie `/deploy` aufrufen, oder Claude kann sie automatisch laden, wenn sie relevant sind. Skills können in Ihrer aktuellen Konversation oder in einem isolierten Kontext über Subagents ausgeführt werden.34[Skills](/docs/de/skills) sind die flexibelste Erweiterung. Ein Skill ist eine Markdown-Datei, die Wissen, Workflows oder Anweisungen enthält. Sie können Skills mit einem Befehl wie `/deploy` aufrufen, oder Claude kann sie automatisch laden, wenn sie relevant sind. Skills können in Ihrer aktuellen Konversation oder in einem isolierten Kontext über Subagents ausgeführt werden.

35 35 


52| **Hook** | Skript, HTTP-Anfrage, MCP-Tool-Aufruf, Prompt oder Subagent, ausgelöst durch Ereignisse | Automatisierung, die bei jedem übereinstimmenden Ereignis ausgeführt werden muss | ESLint nach jeder Dateibearbeitung ausführen |52| **Hook** | Skript, HTTP-Anfrage, MCP-Tool-Aufruf, Prompt oder Subagent, ausgelöst durch Ereignisse | Automatisierung, die bei jedem übereinstimmenden Ereignis ausgeführt werden muss | ESLint nach jeder Dateibearbeitung ausführen |

53| **[Artefakt](/docs/de/artifacts)** | Veröffentlichen Sie die Sitzungsausgabe als private, interaktive Webseite | Ausgabe, die Sie visuell sehen oder teilen möchten, anstatt als Terminaltext | Eine Incident-Timeline, die sich aktualisiert, während Claude untersucht |53| **[Artefakt](/docs/de/artifacts)** | Veröffentlichen Sie die Sitzungsausgabe als private, interaktive Webseite | Ausgabe, die Sie visuell sehen oder teilen möchten, anstatt als Terminaltext | Eine Incident-Timeline, die sich aktualisiert, während Claude untersucht |

54 54 

55**[Plugins](/docs/de/plugins)** sind die Verpackungsebene. Ein Plugin bündelt Skills, Hooks, Subagents und MCP-Server in eine einzelne installierbare Einheit. Plugin-Skills sind namespaced (wie `/my-plugin:review`), sodass mehrere Plugins nebeneinander existieren können. Verwenden Sie Plugins, wenn Sie dieselbe Einrichtung über mehrere Repositories hinweg wiederverwenden möchten oder über einen **[Marketplace](/docs/de/plugin-marketplaces)** an andere verteilen möchten.55**[Plugins](/docs/de/plugins/overview)** sind die Verpackungsebene. Ein Plugin bündelt Skills, Hooks, Subagents und MCP-Server in eine einzelne installierbare Einheit. Plugin-Skills sind namespaced (wie `/my-plugin:review`), sodass mehrere Plugins nebeneinander existieren können. Verwenden Sie Plugins, wenn Sie dieselbe Einrichtung über mehrere Repositories hinweg wiederverwenden möchten oder über einen **[Marketplace](/docs/de/plugins/overview)** an andere verteilen möchten.

56 56 

57<h3 id="build-your-setup-over-time">57<h3 id="build-your-setup-over-time">

58 Bauen Sie Ihre Einrichtung im Laufe der Zeit auf58 Bauen Sie Ihre Einrichtung im Laufe der Zeit auf


61Sie müssen nicht alles im Voraus konfigurieren. Jede Funktion hat einen erkennbaren Auslöser, und die meisten Teams fügen sie ungefähr in dieser Reihenfolge hinzu:61Sie müssen nicht alles im Voraus konfigurieren. Jede Funktion hat einen erkennbaren Auslöser, und die meisten Teams fügen sie ungefähr in dieser Reihenfolge hinzu:

62 62 

63| Auslöser | Hinzufügen |63| Auslöser | Hinzufügen |

64| :----------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------- |64| :----------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------- |

65| Claude bekommt eine Konvention oder einen Befehl zweimal falsch | Fügen Sie es zu [CLAUDE.md](/docs/de/memory) hinzu |65| Claude bekommt eine Konvention oder einen Befehl zweimal falsch | Fügen Sie es zu [CLAUDE.md](/docs/de/memory) hinzu |

66| Sie bitten Claude ständig, kürzer zu sein, mehr zu erklären oder im gleichen Format zu antworten | Legen Sie einen [Ausgabestil](/docs/de/output-styles) fest |66| Sie bitten Claude ständig, kürzer zu sein, mehr zu erklären oder im gleichen Format zu antworten | Legen Sie einen [Ausgabestil](/docs/de/output-styles) fest |

67| Sie tippen ständig denselben Prompt, um eine Aufgabe zu starten | Speichern Sie ihn als benutzer-aufrufbaren [Skill](/docs/de/skills) |67| Sie tippen ständig denselben Prompt, um eine Aufgabe zu starten | Speichern Sie ihn als benutzer-aufrufbaren [Skill](/docs/de/skills) |

68| Sie fügen zum dritten Mal dasselbe Playbook oder mehrstufige Verfahren in den Chat ein | Erfassen Sie es als [Skill](/docs/de/skills) |68| Sie fügen zum dritten Mal dasselbe Playbook oder mehrstufige Verfahren in den Chat ein | Erfassen Sie es als [Skill](/docs/de/skills) |

69| Sie kopieren ständig Daten aus einer Browser-Registerkarte, die Claude nicht sehen kann | Verbinden Sie dieses System als [MCP-Server](/docs/de/mcp) |69| Sie kopieren ständig Daten aus einer Browser-Registerkarte, die Claude nicht sehen kann | Verbinden Sie dieses System als [MCP-Server](/docs/de/mcp) |

70| Claude liest viele Dateien, um zu finden, wo ein Symbol definiert oder verwendet wird | Installieren Sie ein [Code-Intelligence-Plugin](/docs/de/discover-plugins#code-intelligence) für Ihre Sprache |70| Claude liest viele Dateien, um zu finden, wo ein Symbol definiert oder verwendet wird | Installieren Sie ein [Code-Intelligence-Plugin](/docs/de/plugins/code-intelligence) für Ihre Sprache |

71| Eine Nebenaufgabe überschwemmt Ihr Gespräch mit Ausgabe, auf die Sie nicht mehr verweisen werden | Leiten Sie es durch einen [Subagent](/docs/de/sub-agents) |71| Eine Nebenaufgabe überschwemmt Ihr Gespräch mit Ausgabe, auf die Sie nicht mehr verweisen werden | Leiten Sie es durch einen [Subagent](/docs/de/sub-agents) |

72| Sie möchten, dass etwas jedes Mal passiert, ohne zu fragen | Schreiben Sie einen [Hook](/docs/de/hooks-guide) |72| Sie möchten, dass etwas jedes Mal passiert, ohne zu fragen | Schreiben Sie einen [Hook](/docs/de/hooks-guide) |

73| Ein zweites Repository benötigt dieselbe Einrichtung | Verpacken Sie es als [Plugin](/docs/de/plugins) |73| Ein zweites Repository benötigt dieselbe Einrichtung | Verpacken Sie es als [Plugin](/docs/de/plugins/overview) |

74 74 

75Die gleichen Auslöser sagen Ihnen, wann Sie das aktualisieren sollten, was Sie bereits haben. Ein wiederholter Fehler oder ein wiederkehrender Review-Kommentar ist eine CLAUDE.md-Bearbeitung, keine einmalige Korrektur im Chat. Ein Workflow, den Sie ständig von Hand anpassen, ist ein Skill, der eine weitere Überarbeitung benötigt.75Die gleichen Auslöser sagen Ihnen, wann Sie das aktualisieren sollten, was Sie bereits haben. Ein wiederholter Fehler oder ein wiederkehrender Review-Kommentar ist eine CLAUDE.md-Bearbeitung, keine einmalige Korrektur im Chat. Ein Workflow, den Sie ständig von Hand anpassen, ist ein Skill, der eine weitere Überarbeitung benötigt.

76 76 


207Funktionen können auf mehreren Ebenen definiert werden: benutzerübergreifend, pro Projekt, über Plugins oder durch verwaltete Richtlinien. Sie können auch CLAUDE.md-Dateien in Unterverzeichnissen verschachteln oder Skills in bestimmten Paketen eines Monorepo platzieren. Wenn die gleiche Funktion auf mehreren Ebenen existiert, so schichten sie sich:207Funktionen können auf mehreren Ebenen definiert werden: benutzerübergreifend, pro Projekt, über Plugins oder durch verwaltete Richtlinien. Sie können auch CLAUDE.md-Dateien in Unterverzeichnissen verschachteln oder Skills in bestimmten Paketen eines Monorepo platzieren. Wenn die gleiche Funktion auf mehreren Ebenen existiert, so schichten sie sich:

208 208 

209* **CLAUDE.md-Dateien** sind additiv: alle Ebenen tragen Inhalte gleichzeitig zu Claudes Kontext bei. Dateien aus Ihrem Arbeitsverzeichnis und darüber laden beim Start; Unterverzeichnisse laden, während Sie in ihnen arbeiten. Wenn Anweisungen in Konflikt geraten, nutzt Claude Urteilsvermögen, um sie zu versöhnen. Siehe [wie CLAUDE.md-Dateien laden](/docs/de/memory#how-claude-md-files-load).209* **CLAUDE.md-Dateien** sind additiv: alle Ebenen tragen Inhalte gleichzeitig zu Claudes Kontext bei. Dateien aus Ihrem Arbeitsverzeichnis und darüber laden beim Start; Unterverzeichnisse laden, während Sie in ihnen arbeiten. Wenn Anweisungen in Konflikt geraten, nutzt Claude Urteilsvermögen, um sie zu versöhnen. Siehe [wie CLAUDE.md-Dateien laden](/docs/de/memory#how-claude-md-files-load).

210* **Skills und Subagents** überschreiben nach Name: wenn der gleiche Name auf mehreren Ebenen existiert, gewinnt eine Definition basierend auf Priorität (verwaltet > Benutzer > Projekt für Skills; verwaltet > CLI-Flag > Projekt > Benutzer > Plugin für Subagents). Plugin-Skills sind [namespaced](/docs/de/plugins#add-skills-to-your-plugin), um Konflikte zu vermeiden. Siehe [Skill-Erkennung](/docs/de/skills#resolve-skills-that-share-a-name) und [Subagent-Umfang](/docs/de/sub-agents#choose-the-subagent-scope).210* **Skills und Subagents** überschreiben nach Name: wenn der gleiche Name auf mehreren Ebenen existiert, gewinnt eine Definition basierend auf Priorität (verwaltet > Benutzer > Projekt für Skills; verwaltet > CLI-Flag > Projekt > Benutzer > Plugin für Subagents). Plugin-Skills sind [namespaced](/docs/de/plugins/components#skills) um Konflikte zu vermeiden. Siehe [Skill-Erkennung](/docs/de/skills#resolve-skills-that-share-a-name) und [Subagent-Umfang](/docs/de/sub-agents#choose-the-subagent-scope).

211* **MCP-Server** überschreiben nach Name: lokal > Projekt > Benutzer. Siehe [MCP-Umfang](/docs/de/mcp#scope-hierarchy-and-precedence).211* **MCP-Server** überschreiben nach Name: lokal > Projekt > Benutzer. Siehe [MCP-Umfang](/docs/de/mcp#scope-hierarchy-and-precedence).

212* **Hooks** zusammenführen: alle registrierten Hooks werden für ihre übereinstimmenden Ereignisse unabhängig von der Quelle ausgelöst. Siehe [Hooks](/docs/de/hooks).212* **Hooks** zusammenführen: alle registrierten Hooks werden für ihre übereinstimmenden Ereignisse unabhängig von der Quelle ausgelöst. Siehe [Hooks](/docs/de/hooks).

213 213 


304 304 

305 **Kontextkosten:** Niedrig. Symbol-Suchen ersetzen oft umfangreiche Dateileser, sodass die Netto-Kontextnutzung sinken kann.305 **Kontextkosten:** Niedrig. Symbol-Suchen ersetzen oft umfangreiche Dateileser, sodass die Netto-Kontextnutzung sinken kann.

306 306 

307 <Tip>Das LSP-Tool ist inaktiv, bis Sie ein [Code-Intelligenz-Plugin](/docs/de/discover-plugins#code-intelligence) für Ihre Sprache installieren.</Tip>307 <Tip>Das LSP-Tool ist inaktiv, bis Sie ein [Code-Intelligenz-Plugin](/docs/de/plugins/code-intelligence) für Ihre Sprache installieren.</Tip>

308 </Tab>308 </Tab>

309 309 

310 <Tab title="Subagents">310 <Tab title="Subagents">


370 Automatisieren Sie Aktionen mit Hooks370 Automatisieren Sie Aktionen mit Hooks

371 </Card>371 </Card>

372 372 

373 <Card title="Plugins" icon="puzzle-piece" href="/docs/de/plugins">373 <Card title="Plugins" icon="puzzle-piece" href="/docs/de/plugins/overview">

374 Bündeln und teilen Sie Feature-Sets374 Bündeln und teilen Sie Feature-Sets

375 </Card>375 </Card>

376 376 

377 <Card title="Marketplaces" icon="store" href="/docs/de/plugin-marketplaces">377 <Card title="Marketplaces" icon="store" href="/docs/de/plugins/create-marketplace">

378 Hosten und verteilen Sie Plugin-Sammlungen378 Hosten und verteilen Sie Plugin-Sammlungen

379 </Card>379 </Card>

380</CardGroup>380</CardGroup>

fullscreen.md +2 −1

Details

100 100 

101* **Klicken Sie in die Eingabeaufforderung**, um Ihren Cursor überall im eingegebenen Text zu positionieren.101* **Klicken Sie in die Eingabeaufforderung**, um Ihren Cursor überall im eingegebenen Text zu positionieren.

102* **Klicken Sie auf einen Vorschlag in der `/`-Befehlsliste oder `@`-Dateiliste**, um ihn zu akzeptieren. Das Hovern hebt die Zeile unter Ihrem Cursor hervor.102* **Klicken Sie auf einen Vorschlag in der `/`-Befehlsliste oder `@`-Dateiliste**, um ihn zu akzeptieren. Das Hovern hebt die Zeile unter Ihrem Cursor hervor.

103* **Klicken Sie auf eine Option in einem Auswahlmenü**, um sie auszuwählen. Dies umfasst Berechtigungsaufforderungen, `/model`, `/config` und andere Dialoge, die eine Liste von Optionen anzeigen. Das Hovern zeigt einen Zeiger auf der Zeile unter Ihrem Cursor. Erfordert Claude Code v2.1.187 oder später.103* **Klicken Sie auf eine Option in einem Auswahlmenü**, um sie auszuwählen. Dies umfasst Berechtigungsaufforderungen, `/model`, `/config` und andere Dialoge, die eine Liste von Optionen anzeigen. Das Hovern zeigt einen Zeiger auf der Zeile unter Ihrem Cursor.

104* **Klicken Sie auf eine Option in einem Mehrfachauswahlmenü**, um sie umzuschalten, und klicken Sie auf die Schaltfläche „Senden", um Ihre Auswahl zu bestätigen. Wenn Sie auf eine Freitextzeile klicken, z. B. die Zeile `Other` in einer Multiple-Choice-Frage, wird das Eingabefeld fokussiert, damit Sie eine Antwort eingeben können. Erfordert Claude Code v2.1.208 oder später.104* **Klicken Sie auf eine Option in einem Mehrfachauswahlmenü**, um sie umzuschalten, und klicken Sie auf die Schaltfläche „Senden", um Ihre Auswahl zu bestätigen. Wenn Sie auf eine Freitextzeile klicken, z. B. die Zeile `Other` in einer Multiple-Choice-Frage, wird das Eingabefeld fokussiert, damit Sie eine Antwort eingeben können. Erfordert Claude Code v2.1.208 oder später.

105* **Klicken Sie auf den Wert einer Einstellung im `/config`-Bereich**, um ihn zu ändern, und scrollen Sie die Einstellungsliste mit dem Mausrad. Erfordert Claude Code v2.1.271 oder später.105* **Klicken Sie auf den Wert einer Einstellung im `/config`-Bereich**, um ihn zu ändern, und scrollen Sie die Einstellungsliste mit dem Mausrad. Erfordert Claude Code v2.1.271 oder später.

106* **Scrollen Sie ein Auswahlmenü oder Mehrfachauswahlmenü mit dem Mausrad**, wenn es mehr Optionen hat, als es auf einmal anzeigt, z. B. die `/model`-Liste in einem kurzen Terminalfenster. Das Rad scrollt die Liste, während sich der Zeiger über den Optionen befindet. Erfordert Claude Code v2.1.280 oder später.

106* **Klicken Sie auf ein reduziertes Werkzeugergebnis**, um es zu erweitern und die vollständige Ausgabe anzuzeigen. Klicken Sie erneut, um es zu reduzieren. Der Werkzeugaufruf und sein Ergebnis werden zusammen erweitert. Nur Nachrichten, die mehr zu zeigen haben, sind anklickbar.107* **Klicken Sie auf ein reduziertes Werkzeugergebnis**, um es zu erweitern und die vollständige Ausgabe anzuzeigen. Klicken Sie erneut, um es zu reduzieren. Der Werkzeugaufruf und sein Ergebnis werden zusammen erweitert. Nur Nachrichten, die mehr zu zeigen haben, sind anklickbar.

107 * Das Klicken erweitert auch die Ausgabe eines `!`-Shell-Befehls, ob ein älteres abgeschnittenes Ergebnis oder die Live-Fortschrittszeile während der Befehlsausführung. Erfordert Claude Code v2.1.257 oder später.108 * Das Klicken erweitert auch die Ausgabe eines `!`-Shell-Befehls, ob ein älteres abgeschnittenes Ergebnis oder die Live-Fortschrittszeile während der Befehlsausführung. Erfordert Claude Code v2.1.257 oder später.

108* **Halten Sie `Cmd` auf macOS oder `Ctrl` auf Linux und Windows, und klicken Sie auf eine URL oder einen Dateipfad**, um ihn zu öffnen. Einfache `http://`- und `https://`-URLs werden in Ihrem Browser geöffnet, und Dateipfade in der Werkzeugausgabe, wie die nach einem Edit oder Write gedruckten, werden in Ihrer Standardanwendung geöffnet. Ein einfacher Klick ohne den Modifikator öffnet keine Links und entspricht dem nativen Terminal-Verhalten.109* **Halten Sie `Cmd` auf macOS oder `Ctrl` auf Linux und Windows, und klicken Sie auf eine URL oder einen Dateipfad**, um ihn zu öffnen. Einfache `http://`- und `https://`-URLs werden in Ihrem Browser geöffnet, und Dateipfade in der Werkzeugausgabe, wie die nach einem Edit oder Write gedruckten, werden in Ihrer Standardanwendung geöffnet. Ein einfacher Klick ohne den Modifikator öffnet keine Links und entspricht dem nativen Terminal-Verhalten.

Details

50* Führen Sie `/install-github-app` erneut aus. Wenn das Repository bereits eine `claude.yml` hat, wählen Sie **Workflow-Datei mit neuester Version aktualisieren**. Claude Code pusht frische Kopien der Workflow-Dateien zu einem neuen Branch und öffnet den Pull Request, genauso wie eine erste Installation.50* Führen Sie `/install-github-app` erneut aus. Wenn das Repository bereits eine `claude.yml` hat, wählen Sie **Workflow-Datei mit neuester Version aktualisieren**. Claude Code pusht frische Kopien der Workflow-Dateien zu einem neuen Branch und öffnet den Pull Request, genauso wie eine erste Installation.

51* Fügen Sie das `--comment`-Argument und die `claude_args`-Zeile aus dem [Review-Workflow-Beispiel](#run-a-skill) selbst zur eingecheckten Datei hinzu, was alle anderen Änderungen beibehält, die Sie daran vorgenommen haben.51* Fügen Sie das `--comment`-Argument und die `claude_args`-Zeile aus dem [Review-Workflow-Beispiel](#run-a-skill) selbst zur eingecheckten Datei hinzu, was alle anderen Änderungen beibehält, die Sie daran vorgenommen haben.

52 52 

53Nach der Installation der GitHub App fragt Claude Code, ob Sie mit dem GitHub Actions-Setup fortfahren möchten. Wählen Sie **Jetzt überspringen**, um nur mit der installierten GitHub App zu stoppen. Führen Sie `/install-github-app` später erneut aus, um die Workflow- und Secret-Schritte abzuschließen. Vor v2.1.187 fuhr Claude Code direkt zur Workflow-Auswahl fort.53Nach der Installation der GitHub App fragt Claude Code, ob Sie mit dem GitHub Actions-Setup fortfahren möchten. Wählen Sie **Jetzt überspringen**, um nur mit der installierten GitHub App zu stoppen. Führen Sie `/install-github-app` später erneut aus, um die Workflow- und Secret-Schritte abzuschließen.

54 54 

55<Note>55<Note>

56 * Wenn Sie die GitHub App installieren, gewähren Sie ihr mehrere Berechtigungen. Siehe [GitHub App-Berechtigungen](#github-app-permissions) für den vollständigen Satz56 * Wenn Sie die GitHub App installieren, gewähren Sie ihr mehrere Berechtigungen. Siehe [GitHub App-Berechtigungen](#github-app-permissions) für den vollständigen Satz


237Die `prompt`-Eingabe akzeptiert eine [Skill](/docs/de/skills)-Invokation sowie einfachen Text:237Die `prompt`-Eingabe akzeptiert eine [Skill](/docs/de/skills)-Invokation sowie einfachen Text:

238 238 

239* Für eine Skill in Ihrem Repository-Verzeichnis `.claude/skills/`, führen Sie `actions/checkout` vor dem `anthropics/claude-code-action`-Schritt aus, damit die Skill-Dateien auf dem Runner verfügbar sind, und übergeben Sie dann `/skill-name` als `prompt`.239* Für eine Skill in Ihrem Repository-Verzeichnis `.claude/skills/`, führen Sie `actions/checkout` vor dem `anthropics/claude-code-action`-Schritt aus, damit die Skill-Dateien auf dem Runner verfügbar sind, und übergeben Sie dann `/skill-name` als `prompt`.

240* Für eine Skill, die in einem [Plugin](/docs/de/plugins) verpackt ist, installieren Sie das Plugin mit den Eingaben `plugin_marketplaces` und `plugins`, und übergeben Sie dann den namespaced `/plugin-name:skill-name` als `prompt`. Die `plugins`-Eingabe nimmt `plugin-name@marketplace-name`, wobei der Marketplace-Name aus dem Manifest des Marketplace selbst kommt, nicht aus seiner Repository-URL.240* Für eine Skill, die in einem [Plugin](/docs/de/plugins/overview) verpackt ist, installieren Sie das Plugin mit den Eingaben `plugin_marketplaces` und `plugins`, und übergeben Sie dann den namespaced `/plugin-name:skill-name` als `prompt`. Die `plugins`-Eingabe nimmt `plugin-name@marketplace-name`, wobei der Marketplace-Name aus dem Manifest des Marketplace selbst kommt, nicht aus seiner Repository-URL.

241 241 

242Der folgende Workflow installiert das `code-review`-Plugin und führt seine Skill aus, wenn ein Pull Request geöffnet, aktualisiert, erneut geöffnet oder als bereit für Überprüfung markiert wird. Er führt das gleiche Plugin wie der Review-Workflow aus dem schnellen Setup aus. Verwenden Sie einen Workflow wie diesen, wenn Sie den Prompt, das Modell und die Trigger selbst kontrollieren möchten. Für automatische Überprüfungen ohne Wartung einer Workflow-Datei siehe [Code Review](/docs/de/code-review). Auf öffentlichen Repositories hält GitHub Geheimnisse von Läufen zurück, die durch Fork-Pull-Requests ausgelöst werden, daher wird die Überprüfung nur auf Pull Requests aus Branches im gleichen Repository ausgeführt.242Der folgende Workflow installiert das `code-review`-Plugin und führt seine Skill aus, wenn ein Pull Request geöffnet, aktualisiert, erneut geöffnet oder als bereit für Überprüfung markiert wird. Er führt das gleiche Plugin wie der Review-Workflow aus dem schnellen Setup aus. Verwenden Sie einen Workflow wie diesen, wenn Sie den Prompt, das Modell und die Trigger selbst kontrollieren möchten. Für automatische Überprüfungen ohne Wartung einer Workflow-Datei siehe [Code Review](/docs/de/code-review). Auf öffentlichen Repositories hält GitHub Geheimnisse von Läufen zurück, die durch Fork-Pull-Requests ausgelöst werden, daher wird die Überprüfung nur auf Pull Requests aus Branches im gleichen Repository ausgeführt.

243 243 

glossary.md +17 −17

Details

84 Bare Mode84 Bare Mode

85</h3>85</h3>

86 86 

87Mit `--bare` startet Claude Code ohne das Laden von Hooks, Skills, benutzerdefinierten Befehlen, Subagenten, Plugins, MCP-Servern, Auto Memory oder CLAUDE.md, mit Ausnahme von Skills in einem Verzeichnis, das Sie mit `--add-dir` übergeben. Empfohlen für CI und Skript-Aufrufe, bei denen Sie auf jeder Maschine das gleiche Ergebnis benötigen.87Mit `--bare` startet Claude Code ohne das Laden von Hooks, Skills, benutzerdefinierten Befehlen, Subagenten, installierten Plugins, MCP-Servern, Auto Memory oder CLAUDE.md, mit Ausnahme von Skills in einem Verzeichnis, das Sie mit `--add-dir` übergeben. Empfohlen für CI und Skript-Aufrufe, bei denen Sie auf jeder Maschine das gleiche Ergebnis benötigen.

88 88 

89Weitere Informationen: [Schneller starten mit Bare Mode](/docs/de/headless#start-faster-with-bare-mode)89Weitere Informationen: [Schneller starten mit Bare Mode](/docs/de/headless#start-faster-with-bare-mode)

90 90 


303</h2>303</h2>

304 304 

305<h3 id="permission-mode">305<h3 id="permission-mode">

306 Permission Mode306 Genehmigungsmodus

307</h3>307</h3>

308 308 

309Das Baseline-Genehmigungsverhalten für die Sitzung. Wechseln Sie mit `Shift+Tab` in der CLI oder verwenden Sie den Mode-Selector in VS Code, Desktop und claude.ai. Verfügbare Modi sind `default`, `acceptEdits`, `plan`, `auto`, `dontAsk` und `bypassPermissions`.309Das grundlegende Genehmigungsverhalten für die Sitzung. Wechseln Sie mit `Shift+Tab` in der CLI oder verwenden Sie den Moduswahlschalter in VS Code, Desktop und claude.ai. Verfügbare Modi sind `default`, `acceptEdits`, `plan`, `auto`, `dontAsk` und `bypassPermissions`.

310 310 

311Der `default` Mode wird in der CLI und in den VS Code- und JetBrains-Erweiterungen als Manual bezeichnet, und Claude Code akzeptiert `manual` als Alias für den Wert.311Der Modus `default` wird in der CLI, in den VS Code- und JetBrains-Erweiterungen sowie in der Desktop-App als „Manual" bezeichnet, und Claude Code akzeptiert `manual` als Alias für den Wert.

312 312 

313Weitere Informationen: [Wählen Sie einen Permission Mode](/docs/de/permission-modes)313Weitere Informationen: [Wählen Sie einen Genehmigungsmodus](/docs/de/permission-modes)

314 314 

315<h3 id="permission-rule">315<h3 id="permission-rule">

316 Permission Rule316 Genehmigungsregel

317</h3>317</h3>

318 318 

319Ein Einstellungseintrag, der eine Tool-Invokation basierend auf dem Tool-Namen und Argument-Muster erlaubt, fragt oder verweigert. Regeln werden in der Reihenfolge deny→ask→allow ausgewertet, der erste Match gewinnt. Permission Rules sind feinkörnige Kontrollen, die auf dem breiteren [Permission Mode](#permission-mode) aufgelagert sind.319Ein Einstellungseintrag, der eine Werkzeuginvokation basierend auf dem Werkzeugnamen und dem Argumentmuster zulässt, nachfragt oder ablehnt. Regeln werden in der Reihenfolge deny→ask→allow ausgewertet, wobei die erste Übereinstimmung gewinnt. Genehmigungsregeln sind differenzierte Kontrollen, die auf dem breiteren [Genehmigungsmodus](#permission-mode) aufgelagert sind.

320 320 

321Weitere Informationen: [Konfigurieren Sie Berechtigungen](/docs/de/permissions)321Weitere Informationen: [Konfigurieren Sie Berechtigungen](/docs/de/permissions)

322 322 


324 Plan Mode324 Plan Mode

325</h3>325</h3>

326 326 

327Ein [Permission Mode](#permission-mode), bei dem Claude Änderungen recherchiert und vorschlägt, ohne Ihre Quelldateien zu bearbeiten. Es kann lesen, suchen und Explorations-Befehle ausführen, dann einen Plan zur Genehmigung präsentieren, bevor etwas berührt wird. Geben Sie Plan Mode mit `/plan` ein oder drücken Sie `Shift+Tab`.327Ein [Genehmigungsmodus](#permission-mode), bei dem Claude Änderungen recherchiert und vorschlägt, ohne Ihre Quelldateien zu bearbeiten. Es kann lesen, suchen und Explorationskommandos ausführen, dann einen Plan zur Genehmigung präsentieren, bevor etwas berührt wird. Geben Sie Plan Mode mit `/plan` ein oder drücken Sie `Shift+Tab`.

328 328 

329Weitere Informationen: [Analysieren Sie vor der Bearbeitung mit Plan Mode](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode)329Weitere Informationen: [Analysieren Sie vor dem Bearbeiten mit Plan Mode](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode)

330 330 

331<h3 id="plugin">331<h3 id="plugin">

332 Plugin332 Plugin

333</h3>333</h3>

334 334 

335Ein Bundle von Skills, Hooks, Subagenten und MCP-Servern, verpackt als eine einzelne installierbare Einheit. Plugin-Skills werden als `plugin-name:skill-name` namensraum, sodass mehrere Plugins koexistieren. Verteilen Sie Plugins über Teams über einen [Marketplace](/docs/de/plugin-marketplaces).335Ein Paket aus Skills, Hooks, Subagenten und MCP-Servern, das als eine einzelne installierbare Einheit verpackt ist. Plugin-Skills werden als `plugin-name:skill-name` namensraumbezogen, sodass mehrere Plugins koexistieren können. Verteilen Sie Plugins über Teams über einen [Marketplace](/docs/de/plugins/overview).

336 336 

337Weitere Informationen: [Plugins](/docs/de/plugins)337Weitere Informationen: [Plugins](/docs/de/plugins/overview)

338 338 

339<h3 id="project-trust">339<h3 id="project-trust">

340 Project Trust340 Projektvertrauen

341</h3>341</h3>

342 342 

343Ein Dialog, der ein Verzeichnis akzeptiert, bevor Claude Code seine Konfiguration lädt. Die Akzeptanz wird pro Projektverzeichnis gespeichert, außer in Ihrem Home-Verzeichnis, wo das Vertrauen nur für die aktuelle Sitzung gilt und die Eingabeaufforderung bei jedem Start erneut angezeigt wird. Bis Sie ein Verzeichnis vertrauen, hält Claude Code einige der Inhalte zurück, die sein Repository bereitstellt, wie z. B. Projekt-Allow-Regeln und Marketplaces aus `.claude/settings.json`. [Was läuft, bevor Sie einem Ordner vertrauen](/docs/de/permissions#what-runs-before-you-trust-a-folder) listet jede Art von Inhalt auf, einschließlich dessen, was eine `-p` Sitzung ohne Dialog ausführt.343Ein Dialog, der ein Verzeichnis akzeptiert, bevor Claude Code seine Konfiguration lädt. Die Akzeptanz wird pro Projektverzeichnis gespeichert, außer in Ihrem Home-Verzeichnis, wo das Vertrauen nur für die aktuelle Sitzung gilt und die Eingabeaufforderung bei jedem Start erneut angezeigt wird. Bis Sie ein Verzeichnis vertrauen, hält Claude Code einige der Inhalte zurück, die sein Repository bereitstellt, wie z. B. Projekterlaubnisregeln und Marketplaces aus `.claude/settings.json`. [Was wird ausgeführt, bevor Sie einem Ordner vertrauen](/docs/de/permissions#what-runs-before-you-trust-a-folder) listet jede Art von Inhalt auf, einschließlich dessen, was eine `-p`-Sitzung ohne Dialog ausführt.

344 344 

345Weitere Informationen: [Das `.claude` Verzeichnis](/docs/de/claude-directory)345Weitere Informationen: [Das `.claude`-Verzeichnis](/docs/de/claude-directory)

346 346 

347<h3 id="prompt-injection">347<h3 id="prompt-injection">

348 Prompt Injection348 Prompt-Injection

349</h3>349</h3>

350 350 

351Feindselige Anweisungen, die in einer Datei, Webseite oder Tool-Ergebnis eingebettet sind und versuchen, Claude zu Aktionen umzuleiten, die Sie nie angefordert haben. Die Abwehrmechanismen von Claude Code umfassen das Berechtigungssystem, Befehlsblocklisten und Vertrauensüberprüfung. [Auto Mode](#auto-mode) fügt eine serverseitige Sonde hinzu, die Tool-Ergebnisse auf verdächtige Inhalte scannt, und einen Klassifizierer, der Aktionen mit entfernten Tool-Ergebnissen überprüft, sodass injizierter Text sie nicht direkt manipulieren kann.351Feindselige Anweisungen, die in einer Datei, Webseite oder einem Werkzeugergebnis eingebettet sind und versuchen, Claude zu Aktionen umzuleiten, die Sie nie angefordert haben. Die Abwehrmechanismen von Claude Code umfassen das Berechtigungssystem, die Erkennung von Befehlsinjektion und die Vertrauensüberprüfung. Der [Auto-Modus](#auto-mode) fügt eine serverseitige Sonde hinzu, die Werkzeugergebnisse auf verdächtige Inhalte scannt, und einen Klassifizierer, der Aktionen mit entfernten Werkzeugergebnissen überprüft, sodass injizierter Text sie nicht direkt manipulieren kann.

352 352 

353Weitere Informationen: [Schützen Sie sich vor Prompt Injection](/docs/de/security#protect-against-prompt-injection)353Weitere Informationen: [Schützen Sie sich vor Prompt-Injection](/docs/de/security#protect-against-prompt-injection)

354 354 

355<h2 id="r">355<h2 id="r">

356 R356 R

headless.md +1 −1

Details

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

39</h3>39</h3>

40 40 

41Fügen Sie `--bare` hinzu, um die Startzeit zu verkürzen, indem Sie die automatische Erkennung von hooks, skills, benutzerdefinierten Befehlen, [Subagenten](/docs/de/sub-agents), Plugins, MCP-Servern, automatischem Speicher und CLAUDE.md überspringen. Ohne diese Option lädt `claude -p` den gleichen [Kontext](/docs/de/how-claude-code-works#the-context-window), den eine interaktive Sitzung hätte, einschließlich alles, was im Arbeitsverzeichnis oder in `~/.claude` konfiguriert ist.41Fügen Sie `--bare` hinzu, um die Startzeit zu verkürzen, indem Sie die automatische Erkennung von hooks, skills, benutzerdefinierten Befehlen, [Subagenten](/docs/de/sub-agents), installierten Plugins, MCP-Servern, automatischem Speicher und CLAUDE.md überspringen. Ohne diese Option lädt `claude -p` den gleichen [Kontext](/docs/de/how-claude-code-works#the-context-window), den eine interaktive Sitzung hätte, einschließlich alles, was im Arbeitsverzeichnis oder in `~/.claude` konfiguriert ist.

42 42 

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

44 44 

hooks.md +11 −13

Details

259Der Ort, an dem Sie einen Hook definieren, bestimmt seinen Umfang:259Der Ort, an dem Sie einen Hook definieren, bestimmt seinen Umfang:

260 260 

261| Speicherort | Umfang | Freigegeben |261| Speicherort | Umfang | Freigegeben |

262| :--------------------------------------- | :---------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------ |262| :------------------------------------------------ | :---------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------ |

263| `~/.claude/settings.json` | Alle Ihre Projekte | Nein, lokal auf Ihrem Computer |263| `~/.claude/settings.json` | Alle Ihre Projekte | Nein, lokal auf Ihrem Computer |

264| `.claude/settings.json` | Einzelnes Projekt | Ja, kann im Repository committed werden |264| `.claude/settings.json` | Einzelnes Projekt | Ja, kann im Repository committed werden |

265| `.claude/settings.local.json` | Einzelnes Projekt | Nein, gitignored, wenn Claude Code eine Einstellung darin speichert |265| `.claude/settings.local.json` | Einzelnes Projekt | Nein, gitignored, wenn Claude Code eine Einstellung darin speichert |

266| Verwaltete Richtlinieneinstellungen | Organisationsweit | Ja, von Administrator kontrolliert |266| Verwaltete Richtlinieneinstellungen | Organisationsweit | Ja, von Administrator kontrolliert |

267| [Plugin](/docs/de/plugins) `hooks/hooks.json` | Wenn Plugin aktiviert ist | Ja, mit dem Plugin gebündelt |267| [Plugin](/docs/de/plugins/overview) `hooks/hooks.json` | Wenn Plugin aktiviert ist | Ja, mit dem Plugin gebündelt |

268| [Skill](/docs/de/skills) Frontmatter | Der Rest der Sitzung, sobald der Skill aufgerufen wird. Siehe [Hooks in Skills und Agents](#hooks-in-skills-and-agents) | Ja, in der Skill-Datei definiert |268| [Skill](/docs/de/skills) Frontmatter | Der Rest der Sitzung, sobald der Skill aufgerufen wird. Siehe [Hooks in Skills und Agents](#hooks-in-skills-and-agents) | Ja, in der Skill-Datei definiert |

269| [Subagent](/docs/de/sub-agents) Frontmatter | Während dieser Subagent ausgeführt wird | Ja, in der Subagent-Datei definiert |269| [Subagent](/docs/de/sub-agents) Frontmatter | Während dieser Subagent ausgeführt wird | Ja, in der Subagent-Datei definiert |

270 270 

271[Cloud-Sitzungen](/docs/de/claude-code-on-the-web) lesen Ihre lokale `~/.claude/settings.json` nicht; Hooks dort stammen aus der `.claude/settings.json` des Repositories in einer Sitzung mit einem Repository, aus den Plugins, die [von Ihrem claude.ai-Konto synchronisiert werden](/docs/de/plugins-reference#synced-plugins), und aus den servergesteuerten Einstellungen Ihrer Organisation. In einer [selbstgehosteten Umgebung](/docs/de/self-hosted-environments-configuration#permissions-and-tool-approval) führt Claude Code auch die Hooks aus, die der Operator vom Host `~/.claude/` des Runners seeded hat, und führt die Hooks in der verwalteten Einstellungsdatei des Runner-Images aus, wenn diese Datei unter den [verwalteten Quellen liegt, die Claude Code anwendet](/docs/de/managed-settings#how-claude-code-combines-managed-sources), was standardmäßig bedeutet, dass nur dann, wenn weder servergesteuerte Einstellungen noch eine von MDM bereitgestellte Claude Code-Richtlinie die verwaltete Ebene bereitstellt. Siehe [was von Ihrem Setup übertragen wird](/docs/de/cloud-environments#what-carries-over-from-your-setup) für die Dateien, die eine Cloud-Sitzung erreichen.271[Cloud-Sitzungen](/docs/de/claude-code-on-the-web) lesen Ihre lokale `~/.claude/settings.json` nicht. In einer [selbstgehosteten Umgebung](/docs/de/self-hosted-environments-configuration#permissions-and-tool-approval) führt Claude Code auch die Hooks aus, die der Operator vom Host `~/.claude/` des Runners seeded hat, und führt die Hooks in der verwalteten Einstellungsdatei des Runner-Images aus, wenn diese Datei unter den [verwalteten Quellen liegt, die Claude Code anwendet](/docs/de/managed-settings#how-claude-code-combines-managed-sources), was standardmäßig bedeutet, dass nur dann, wenn weder servergesteuerte Einstellungen noch eine von MDM bereitgestellte Claude Code-Richtlinie die verwaltete Ebene bereitstellt. Siehe [was von Ihrem Setup übertragen wird](/docs/de/cloud-environments#what-carries-over-from-your-setup) für welche Einstellungsdateien und Plugins und somit welche Hooks eine Cloud-Sitzung erreichen.

272 272 

273Weitere Informationen zur Auflösung von Einstellungsdateien finden Sie unter [Einstellungen](/docs/de/settings).273Weitere Informationen zur Auflösung von Einstellungsdateien finden Sie unter [Einstellungen](/docs/de/settings).

274 274 


278 278 

279* Ihre Benutzer-, Projekt-, lokalen und Plugin-Hooks werden blockiert. Hooks aus Plugins, die in verwalteten Einstellungen `enabledPlugins` erzwungen aktiviert sind, sind ausgenommen279* Ihre Benutzer-, Projekt-, lokalen und Plugin-Hooks werden blockiert. Hooks aus Plugins, die in verwalteten Einstellungen `enabledPlugins` erzwungen aktiviert sind, sind ausgenommen

280* Claude Code schränkt auch Ihre [`statusLine`](/docs/de/statusline), [`fileSuggestion`](/docs/de/settings-reference#filesuggestion) und [`subagentStatusLine`](/docs/de/statusline#subagent-status-lines) Einstellungen auf verwaltete Einstellungen ein280* Claude Code schränkt auch Ihre [`statusLine`](/docs/de/statusline), [`fileSuggestion`](/docs/de/settings-reference#filesuggestion) und [`subagentStatusLine`](/docs/de/statusline#subagent-status-lines) Einstellungen auf verwaltete Einstellungen ein

281* Claude Code deaktiviert auch Plugins mit einer [`command`-Quelle](/docs/de/plugin-marketplaces#command-sources), einschließlich Plugins, die in verwalteten Einstellungen `enabledPlugins` erzwungen aktiviert sind, es sei denn, [`disableCommandPluginSources`](/docs/de/settings-reference#disablecommandpluginsources) ist explizit auf `false` gesetzt. `command`-Quellen erfordern Claude Code v2.1.229 oder später281* Claude Code deaktiviert auch Plugins mit einer [`command`-Quelle](/docs/de/plugins/marketplace-reference#command-plugin-source), einschließlich Plugins, die in verwalteten Einstellungen `enabledPlugins` erzwungen aktiviert sind, es sei denn, [`disableCommandPluginSources`](/docs/de/settings-reference#disablecommandpluginsources) ist explizit auf `false` gesetzt. `command`-Quellen erfordern Claude Code v2.1.229 oder später

282* Claude Code blockiert auch Marketplace-[`headersHelper`-Befehle](/docs/de/plugin-marketplaces#authenticate-archive-downloads), es sei denn, [`disableCommandPluginSources`](/docs/de/settings-reference#disablecommandpluginsources) ist explizit auf `false` gesetzt, außer für einen Marketplace, den verwaltete Einstellungen selbst deklarieren282* Claude Code blockiert auch Marketplace-[`headersHelper`-Befehle](/docs/de/plugins/host-marketplace#authenticate-archive-downloads), es sei denn, [`disableCommandPluginSources`](/docs/de/settings-reference#disablecommandpluginsources) ist explizit auf `false` gesetzt, außer für einen Marketplace, den verwaltete Einstellungen selbst deklarieren

283 283 

284Siehe [was unter `allowManagedHooksOnly` ausgeführt wird](/docs/de/settings-reference#what-runs-under-allowmanagedhooksonly).284Siehe [was unter `allowManagedHooksOnly` ausgeführt wird](/docs/de/settings-reference#what-runs-under-allowmanagedhooksonly).

285 285 


304 304 

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

306 306 

307Komma-Trennzeichen und die Toleranz für umgebendes Leerzeichen erfordern Claude Code v2.1.191 oder später.

308 

309Bindestriche in der exakten Übereinstimmungsmenge erfordern Claude Code v2.1.195 oder später. In früheren Versionen wird ein Name mit Bindestrich wie `code-reviewer` als nicht verankerter regulärer Ausdruck ausgewertet, sodass er auch für `senior-code-reviewer` ausgelöst wird; verankern Sie ihn als `^code-reviewer$` in diesen Versionen, um nur diesen Namen abzugleichen.307Bindestriche in der exakten Übereinstimmungsmenge erfordern Claude Code v2.1.195 oder später. In früheren Versionen wird ein Name mit Bindestrich wie `code-reviewer` als nicht verankerter regulärer Ausdruck ausgewertet, sodass er auch für `senior-code-reviewer` ausgelöst wird; verankern Sie ihn als `^code-reviewer$` in diesen Versionen, um nur diesen Namen abzugleichen.

310 308 

311`FileChanged` und `StopFailure` verwenden einen engeren exakten Übereinstimmungssatz von nur Buchstaben, Ziffern, `_` und `|`. Ein Bindestrich, Leerzeichen oder Komma in einem Matcher für diese beiden Ereignisse hält ihn auf dem Pfad des regulären Ausdrucks, und nur `|` trennt Alternativen. Jedes andere Ereignis mit Matcher-Unterstützung in der folgenden Tabelle akzeptiert `|` oder `,`.309`FileChanged` und `StopFailure` verwenden einen engeren exakten Übereinstimmungssatz von nur Buchstaben, Ziffern, `_` und `|`. Ein Bindestrich, Leerzeichen oder Komma in einem Matcher für diese beiden Ereignisse hält ihn auf dem Pfad des regulären Ausdrucks, und nur `|` trennt Alternativen. Jedes andere Ereignis mit Matcher-Unterstützung in der folgenden Tabelle akzeptiert `|` oder `,`.


516 514 

517Beide Formen unterstützen die gleichen [Pfad-Platzhalter](#reference-scripts-by-path) und exportieren sie beide als Umgebungsvariablen `CLAUDE_PROJECT_DIR`, `CLAUDE_PLUGIN_ROOT` und `CLAUDE_PLUGIN_DATA` auf dem gespawnten Prozess, sodass ein Skript `process.env.CLAUDE_PLUGIN_ROOT` unabhängig davon lesen kann, wie es gestartet wurde.515Beide Formen unterstützen die gleichen [Pfad-Platzhalter](#reference-scripts-by-path) und exportieren sie beide als Umgebungsvariablen `CLAUDE_PROJECT_DIR`, `CLAUDE_PLUGIN_ROOT` und `CLAUDE_PLUGIN_DATA` auf dem gespawnten Prozess, sodass ein Skript `process.env.CLAUDE_PLUGIN_ROOT` unabhängig davon lesen kann, wie es gestartet wurde.

518 516 

519Plugin-Hooks ersetzen zusätzlich [`${user_config.*}`](/docs/de/plugins-reference#user-configuration)-Werte, nur in Exec-Form: Der Wert wird in `command` und in jedes `args`-Element als einfache Zeichenkette ersetzt, sodass die Shell ihn nicht erneut analysiert.517Plugin-Hooks ersetzen zusätzlich [`${user_config.*}`](/docs/de/plugins/manifest-reference#user-configuration)-Werte, nur in Exec-Form: Der Wert wird in `command` und in jedes `args`-Element als einfache Zeichenkette ersetzt, sodass die Shell ihn nicht erneut analysiert.

520 518 

521Ein Shell-Form-Plugin-Hook, dessen `command` auf `${user_config.*}` verweist, schlägt mit einem [Fehler](/docs/de/errors#plugin-command-references-user-config) fehl, anstatt ausgeführt zu werden. Um einen Optionswert aus einem Shell-Form-Hook zu verwenden, lesen Sie die Umgebungsvariable `$CLAUDE_PLUGIN_OPTION_<KEY>`, z. B. `$CLAUDE_PLUGIN_OPTION_WEBHOOK_URL` für eine `webhook_url`-Option, oder setzen Sie `args`, um den Hook auf Exec-Form umzuschalten. Vor v2.1.207 ersetzten Shell-Form-Plugin-Hook-Befehle auch `${user_config.*}`.519Ein Shell-Form-Plugin-Hook, dessen `command` auf `${user_config.*}` verweist, schlägt mit einem [Fehler](/docs/de/errors#plugin-command-references-user-config) fehl, anstatt ausgeführt zu werden. Um einen Optionswert aus einem Shell-Form-Hook zu verwenden, lesen Sie die Umgebungsvariable `$CLAUDE_PLUGIN_OPTION_<KEY>`, z. B. `$CLAUDE_PLUGIN_OPTION_WEBHOOK_URL` für eine `webhook_url`-Option, oder setzen Sie `args`, um den Hook auf Exec-Form umzuschalten. Vor v2.1.207 ersetzten Shell-Form-Plugin-Hook-Befehle auch `${user_config.*}`.

522 520 


647Verwenden Sie diese Platzhalter, um Hook-Skripte relativ zum Projekt- oder Plugin-Root zu referenzieren, unabhängig vom Arbeitsverzeichnis, wenn der Hook ausgeführt wird:645Verwenden Sie diese Platzhalter, um Hook-Skripte relativ zum Projekt- oder Plugin-Root zu referenzieren, unabhängig vom Arbeitsverzeichnis, wenn der Hook ausgeführt wird:

648 646 

649* `${CLAUDE_PROJECT_DIR}`: das Projekt-Root, wo die Sitzung gestartet wurde. Claude Code setzt diese Variable auch in der Umgebung von [stdio MCP-Servern](/docs/de/mcp#option-3-add-a-local-stdio-server) und Plugin-LSP-Servern.647* `${CLAUDE_PROJECT_DIR}`: das Projekt-Root, wo die Sitzung gestartet wurde. Claude Code setzt diese Variable auch in der Umgebung von [stdio MCP-Servern](/docs/de/mcp#option-3-add-a-local-stdio-server) und Plugin-LSP-Servern.

650* `${CLAUDE_PLUGIN_ROOT}`: das Plugin-Installationsverzeichnis für Skripte, die mit einem [Plugin](/docs/de/plugins) gebündelt sind. Siehe [Plugin-Umgebungsvariablen](/docs/de/plugins-reference#environment-variables) für das Verhalten des Pfads über Updates hinweg.648* `${CLAUDE_PLUGIN_ROOT}`: das Plugin-Installationsverzeichnis für Skripte, die mit einem [Plugin](/docs/de/plugins/overview) gebündelt sind. Siehe [Plugin-Umgebungsvariablen](/docs/de/plugins/manifest-reference#environment-variables) für das Verhalten des Pfads über Updates hinweg.

651* `${CLAUDE_PLUGIN_DATA}`: das [persistente Datenverzeichnis](/docs/de/plugins-reference#persistent-data-directory) des Plugins für Abhängigkeiten und Status, die Plugin-Updates überstehen sollten.649* `${CLAUDE_PLUGIN_DATA}`: das [persistente Datenverzeichnis](/docs/de/plugins/components#path-variables-and-persistent-data) des Plugins für Abhängigkeiten und Status, die Plugin-Updates überstehen sollten.

652 650 

653<Note>651<Note>

654 **Worktrees sind anders.** Wenn Claude während der Sitzung einen [Worktree](/docs/de/worktrees) betritt, behält Claude Code `${CLAUDE_PROJECT_DIR}` bei, wo es war, und übergibt den Worktree-Pfad Ihren Hooks auf andere Weise:652 **Worktrees sind anders.** Wenn Claude während der Sitzung einen [Worktree](/docs/de/worktrees) betritt, behält Claude Code `${CLAUDE_PROJECT_DIR}` bei, wo es war, und übergibt den Worktree-Pfad Ihren Hooks auf andere Weise:


709 }707 }

710 ```708 ```

711 709 

712 Siehe die [Plugin-Komponenten-Referenz](/docs/de/plugins-reference#hooks) für Details zum Erstellen von Plugin-Hooks.710 Siehe die [Plugin-Komponenten-Referenz](/docs/de/plugins/components#hooks) für Details zum Erstellen von Plugin-Hooks.

713 </Tab>711 </Tab>

714</Tabs>712</Tabs>

715 713 


1351 1349 

1352Bei Erfolg druckt `--init-only` nichts auf das Terminal. Um zu bestätigen, dass die Hooks ausgeführt wurden, starten Sie mit `claude --debug-file <path> --init-only`, ersetzen Sie `<path>` durch einen Protokolldateispeicherort, und überprüfen Sie das Protokoll auf die Setup- und SessionStart-Hook-Einträge.1350Bei Erfolg druckt `--init-only` nichts auf das Terminal. Um zu bestätigen, dass die Hooks ausgeführt wurden, starten Sie mit `claude --debug-file <path> --init-only`, ersetzen Sie `<path>` durch einen Protokolldateispeicherort, und überprüfen Sie das Protokoll auf die Setup- und SessionStart-Hook-Einträge.

1353 1351 

1354Da Setup nicht bei jedem Start ausgeführt wird, kann sich ein Plugin, das eine Abhängigkeit installiert benötigt, nicht nur auf Setup verlassen. Das praktische Muster ist, die Abhängigkeit bei der ersten Verwendung zu überprüfen und bei Fehlen zu installieren, z. B. ein Hook oder Skill, der auf `${CLAUDE_PLUGIN_DATA}/node_modules` testet und `npm install` ausführt, wenn nicht vorhanden. Siehe das [persistente Datenverzeichnis](/docs/de/plugins-reference#persistent-data-directory), um zu erfahren, wo installierte Abhängigkeiten gespeichert werden. Wenn Sie Ihr Plugin über einen Marketplace verteilen, benötigen Sie möglicherweise dieses Muster nicht: Claude Code [installiert automatisch berechtigte Node.js-Paketabhängigkeiten](/docs/de/plugins-reference#node-js-package-dependencies), wenn es das Plugin zwischenspeichert.1352Da Setup nicht bei jedem Start ausgeführt wird, kann sich ein Plugin, das eine Abhängigkeit installiert benötigt, nicht nur auf Setup verlassen. Das praktische Muster ist, die Abhängigkeit bei der ersten Verwendung zu überprüfen und bei Fehlen zu installieren, z. B. ein Hook oder Skill, der auf `${CLAUDE_PLUGIN_DATA}/node_modules` testet und `npm install` ausführt, wenn nicht vorhanden. Siehe das [persistente Datenverzeichnis](/docs/de/plugins/components#path-variables-and-persistent-data), um zu erfahren, wo installierte Abhängigkeiten gespeichert werden. Wenn Sie Ihr Plugin über einen Marketplace verteilen, benötigen Sie möglicherweise dieses Muster nicht: Claude Code [installiert automatisch berechtigte Node.js-Paketabhängigkeiten](/docs/de/plugins/loading#node-js-package-dependencies), wenn es das Plugin zwischenspeichert.

1355 1353 

1356<h4 id="setup-input">1354<h4 id="setup-input">

1357 Setup-Eingabe1355 Setup-Eingabe


2530 2528 

2531Wird ausgeführt, wenn Claude einen Subagenten mit dem Agent-Tool spawnt, wenn Claude [einen Subagenten fortsetzt](/docs/de/sub-agents#resume-subagents) und jedes Mal, wenn ein In-Process [Agent-Team](/docs/de/agent-teams) Teamkollege eine neue Nachricht verarbeitet. Unterstützt Matcher zum Filtern nach Agent-Typ-Name. Für integrierte Agenten ist dies der Agent-Name wie `general-purpose`, `Explore` oder `Plan`. Für [benutzerdefinierte Subagenten](/docs/de/sub-agents) ist dies das `name` Feld aus dem Agent-Frontmatter, nicht der Dateiname.2529Wird ausgeführt, wenn Claude einen Subagenten mit dem Agent-Tool spawnt, wenn Claude [einen Subagenten fortsetzt](/docs/de/sub-agents#resume-subagents) und jedes Mal, wenn ein In-Process [Agent-Team](/docs/de/agent-teams) Teamkollege eine neue Nachricht verarbeitet. Unterstützt Matcher zum Filtern nach Agent-Typ-Name. Für integrierte Agenten ist dies der Agent-Name wie `general-purpose`, `Explore` oder `Plan`. Für [benutzerdefinierte Subagenten](/docs/de/sub-agents) ist dies das `name` Feld aus dem Agent-Frontmatter, nicht der Dateiname.

2532 2530 

2533Für Subagenten, die von einem [Plugin](/docs/de/plugins) versendet werden, ist der Agent-Typ der Plugin-scoped Identifikator wie `my-plugin:reviewer`, nicht der bloße Frontmatter-Name. Der Doppelpunkt platziert einen Plugin-scoped Namen auf dem regulären Ausdruckspfad, daher verankern Sie den Matcher mit `^` und `$` für einen genauen Treffer: `^my-plugin:reviewer$`.2531Für Subagenten, die von einem [Plugin](/docs/de/plugins/overview) versendet werden, ist der Agent-Typ der Plugin-scoped Identifikator wie `my-plugin:reviewer`, nicht der bloße Frontmatter-Name. Der Doppelpunkt platziert einen Plugin-scoped Namen auf dem regulären Ausdruckspfad, daher verankern Sie den Matcher mit `^` und `$` für einen genauen Treffer: `^my-plugin:reviewer$`.

2534 2532 

2535<h4 id="subagentstart-input">2533<h4 id="subagentstart-input">

2536 SubagentStart-Eingabe2534 SubagentStart-Eingabe

hooks-guide.md +4 −4

Details

10 10 

11Für Entscheidungen, die Urteilsvermögen erfordern, anstatt deterministischer Regeln, können Sie auch [Prompt-basierte Hooks](#prompt-based-hooks) oder [Agent-basierte Hooks](#agent-based-hooks) verwenden, die ein Claude-Modell zur Bewertung von Bedingungen nutzen.11Für Entscheidungen, die Urteilsvermögen erfordern, anstatt deterministischer Regeln, können Sie auch [Prompt-basierte Hooks](#prompt-based-hooks) oder [Agent-basierte Hooks](#agent-based-hooks) verwenden, die ein Claude-Modell zur Bewertung von Bedingungen nutzen.

12 12 

13Für andere Möglichkeiten, Claude Code zu erweitern, siehe [skills](/docs/de/skills) zum Bereitstellen zusätzlicher Anweisungen und ausführbarer Befehle, [subagents](/docs/de/sub-agents) zum Ausführen von Aufgaben in isolierten Kontexten und [plugins](/docs/de/plugins) zum Verpacken von Erweiterungen, die über Projekte hinweg freigegeben werden können.13Für andere Möglichkeiten, Claude Code zu erweitern, siehe [skills](/docs/de/skills) zum Bereitstellen zusätzlicher Anweisungen und ausführbarer Befehle, [subagents](/docs/de/sub-agents) zum Ausführen von Aufgaben in isolierten Kontexten und [plugins](/docs/de/plugins/overview) zum Verpacken von Erweiterungen, die über Projekte hinweg freigegeben werden können.

14 14 

15<Tip>15<Tip>

16 Dieser Leitfaden behandelt häufige Anwendungsfälle und wie Sie anfangen. Für vollständige Event-Schemas, JSON-Ein-/Ausgabeformate und erweiterte Funktionen wie asynchrone Hooks und MCP-Tool-Hooks siehe die [Hooks-Referenz](/docs/de/hooks).16 Dieser Leitfaden behandelt häufige Anwendungsfälle und wie Sie anfangen. Für vollständige Event-Schemas, JSON-Ein-/Ausgabeformate und erweiterte Funktionen wie asynchrone Hooks und MCP-Tool-Hooks siehe die [Hooks-Referenz](/docs/de/hooks).


710}710}

711```711```

712 712 

713Der `"Edit|Write"`-Matcher wird ausgelöst, wenn Claude das `Edit`- oder `Write`-Tool verwendet, nicht wenn es `Bash`, `Read` oder ein anderes Tool verwendet. In Claude Code v2.1.191 oder später trennt ein Komma Alternativen auf die gleiche Weise, sodass `"Edit, Write"` gleichwertig ist. Siehe [Matcher-Muster](/docs/de/hooks#matcher-patterns) für die Auswertung von einfachen Namen und regulären Ausdrücken.713Der `"Edit|Write"`-Matcher wird ausgelöst, wenn Claude das `Edit`- oder `Write`-Tool verwendet, nicht wenn es `Bash`, `Read` oder ein anderes Tool verwendet. Ein Komma trennt Alternativen auf die gleiche Weise, sodass `"Edit, Write"` gleichwertig ist. Siehe [Matcher-Muster](/docs/de/hooks#matcher-patterns) für die Auswertung von einfachen Namen und regulären Ausdrücken.

714 714 

715<Note>715<Note>

716 Claude kann auch Dateien erstellen oder ändern, indem er Shell-Befehle ausführt. Wenn Ihr Hook jede Dateiänderung sehen muss, z. B. für Compliance-Scanning oder Audit-Protokollierung, fügen Sie einen [`Stop`](/docs/de/hooks#stop)-Hook hinzu, der den Arbeitsbaum einmal pro Runde scannt. Für Pro-Aufruf-Abdeckung stattdessen auch `Bash|PowerShell` abgleichen und Ihr Skript geänderte und nicht verfolgte Dateien mit `git status --porcelain` auflisten. Der Abschnitt [PowerShell-Hook-Eingabe](/docs/de/hooks#powershell) erklärt, warum das Abgleichen von nur `Bash` nicht ausreicht. Um einen Hook auszuführen, wenn sich eine bestimmte Datei auf der Festplatte ändert, unabhängig davon, wer sie geschrieben hat, verwenden Sie einen [FileChanged](/docs/de/hooks#filechanged)-Hook.716 Claude kann auch Dateien erstellen oder ändern, indem er Shell-Befehle ausführt. Wenn Ihr Hook jede Dateiänderung sehen muss, z. B. für Compliance-Scanning oder Audit-Protokollierung, fügen Sie einen [`Stop`](/docs/de/hooks#stop)-Hook hinzu, der den Arbeitsbaum einmal pro Runde scannt. Für Pro-Aufruf-Abdeckung stattdessen auch `Bash|PowerShell` abgleichen und Ihr Skript geänderte und nicht verfolgte Dateien mit `git status --porcelain` auflisten. Der Abschnitt [PowerShell-Hook-Eingabe](/docs/de/hooks#powershell) erklärt, warum das Abgleichen von nur `Bash` nicht ausreicht. Um einen Hook auszuführen, wenn sich eine bestimmte Datei auf der Festplatte ändert, unabhängig davon, wer sie geschrieben hat, verwenden Sie einen [FileChanged](/docs/de/hooks#filechanged)-Hook.


861Wo Sie einen Hook hinzufügen, bestimmt seinen Bereich:861Wo Sie einen Hook hinzufügen, bestimmt seinen Bereich:

862 862 

863| Speicherort | Bereich | Freigegeben |863| Speicherort | Bereich | Freigegeben |

864| :--------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------- |864| :------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------- |

865| `~/.claude/settings.json` | Alle Ihre Projekte | Nein, lokal auf Ihrem Computer |865| `~/.claude/settings.json` | Alle Ihre Projekte | Nein, lokal auf Ihrem Computer |

866| `.claude/settings.json` | Einzelnes Projekt | Ja, kann im Repo committed werden |866| `.claude/settings.json` | Einzelnes Projekt | Ja, kann im Repo committed werden |

867| `.claude/settings.local.json` | Einzelnes Projekt | Nein, gitignoriert wenn Claude Code eine Einstellung darin speichert |867| `.claude/settings.local.json` | Einzelnes Projekt | Nein, gitignoriert wenn Claude Code eine Einstellung darin speichert |

868| Verwaltete Richtlinieneinstellungen | Organisationsweit | Ja, von Admin kontrolliert |868| Verwaltete Richtlinieneinstellungen | Organisationsweit | Ja, von Admin kontrolliert |

869| [Plugin](/docs/de/plugins) `hooks/hooks.json` | Wenn Plugin aktiviert ist | Ja, mit dem Plugin gebündelt |869| [Plugin](/docs/de/plugins/overview) `hooks/hooks.json` | Wenn Plugin aktiviert ist | Ja, mit dem Plugin gebündelt |

870| [Skill](/docs/de/skills) Frontmatter | Der Rest der Sitzung, sobald der Skill aufgerufen wird. Siehe [Hooks in Skills und Agents](/docs/de/hooks#hooks-in-skills-and-agents) | Ja, in der Skill-Datei definiert |870| [Skill](/docs/de/skills) Frontmatter | Der Rest der Sitzung, sobald der Skill aufgerufen wird. Siehe [Hooks in Skills und Agents](/docs/de/hooks#hooks-in-skills-and-agents) | Ja, in der Skill-Datei definiert |

871| [Subagent](/docs/de/sub-agents) Frontmatter | Während dieser Subagent läuft | Ja, in der Subagent-Datei definiert |871| [Subagent](/docs/de/sub-agents) Frontmatter | Während dieser Subagent läuft | Ja, in der Subagent-Datei definiert |

872 872 

Details

45Die integrierten Tools fallen im Allgemeinen in fünf Kategorien, die jeweils eine andere Art von Agentur darstellen.45Die integrierten Tools fallen im Allgemeinen in fünf Kategorien, die jeweils eine andere Art von Agentur darstellen.

46 46 

47| Kategorie | Was Claude tun kann |47| Kategorie | Was Claude tun kann |

48| -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |48| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

49| **Dateivorgänge** | Dateien lesen, Code bearbeiten, neue Dateien erstellen, umbenennen und reorganisieren |49| **Dateivorgänge** | Dateien lesen, Code bearbeiten, neue Dateien erstellen, umbenennen und reorganisieren |

50| **Suche** | Dateien nach Muster finden, Inhalte mit Regex durchsuchen, Codebases erkunden |50| **Suche** | Dateien nach Muster finden, Inhalte mit Regex durchsuchen, Codebases erkunden |

51| **Ausführung** | Shell-Befehle ausführen, Server starten, Tests ausführen, git verwenden |51| **Ausführung** | Shell-Befehle ausführen, Server starten, Tests ausführen, git verwenden |

52| **Web** | Das Web durchsuchen, Dokumentation abrufen, Fehlermeldungen nachschlagen |52| **Web** | Das Web durchsuchen, Dokumentation abrufen, Fehlermeldungen nachschlagen |

53| **Code-Intelligenz** | Typfehler und Warnungen nach Bearbeitungen sehen, zu Definitionen springen, Referenzen finden (erfordert [Code-Intelligenz-Plugins](/docs/de/discover-plugins#code-intelligence)) |53| **Code-Intelligenz** | Typfehler und Warnungen nach Bearbeitungen sehen, zu Definitionen springen, Referenzen finden (erfordert [Code-Intelligenz-Plugins](/docs/de/plugins/code-intelligence)) |

54 54 

55Dies sind die primären Funktionen. Claude hat auch Tools zum Spawnen von Subagenten, zum Stellen von Fragen und für andere Orchestrierungsaufgaben. Siehe [Tools verfügbar für Claude](/docs/de/tools-reference) für die vollständige Liste.55Dies sind die primären Funktionen. Claude hat auch Tools zum Spawnen von Subagenten, zum Stellen von Fragen und für andere Orchestrierungsaufgaben. Siehe [Tools verfügbar für Claude](/docs/de/tools-reference) für die vollständige Liste.

56 56 

Details

21</h3>21</h3>

22 22 

23| Kürzel | Beschreibung | Kontext |23| Kürzel | Beschreibung | Kontext |

24| :----------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |24| :----------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

25| `Ctrl+C` | Unterbrechen oder Eingabe löschen | Unterbricht einen laufenden Vorgang. Wenn nichts läuft, löscht der erste Druck die Eingabeaufforderung und ein zweiter Druck beendet Claude Code |25| `Ctrl+C` | Unterbrechen oder Eingabe löschen | Unterbricht einen laufenden Vorgang. Wenn nichts läuft, löscht der erste Druck die Eingabeaufforderung und ein zweiter Druck beendet Claude Code |

26| `Ctrl+X Ctrl+K` | Alle laufenden [Hintergrund-Subagenten](/docs/de/sub-agents#run-subagents-in-foreground-or-background) in dieser Sitzung stoppen und [automatische Artefakt-Antworten](/docs/de/artifacts#let-claude-reply-to-comments-on-its-own) für den Rest deaktivieren. Zweimal innerhalb von 3 Sekunden drücken, um zu bestätigen | Subagenten-Steuerung |26| `Ctrl+X Ctrl+K` | Alle laufenden [Hintergrund-Subagenten](/docs/de/sub-agents#run-subagents-in-foreground-or-background) in dieser Sitzung stoppen und [automatische Artefakt-Antworten](/docs/de/artifacts#let-claude-reply-to-comments-on-its-own) für den Rest deaktivieren. Zweimal innerhalb von 3 Sekunden drücken, um zu bestätigen | Subagenten-Steuerung |

27| `Ctrl+D` | Claude Code-Sitzung beenden | Der erste Druck zeigt einen Bestätigungshinweis und ein zweiter Druck innerhalb von 800 ms beendet die Sitzung. Wenn die Eingabeaufforderung Text enthält, löscht `Ctrl+D` das Zeichen nach dem Cursor |27| `Ctrl+D` | Claude Code-Sitzung beenden | Der erste Druck zeigt einen Bestätigungshinweis und ein zweiter Druck innerhalb von 800 ms beendet die Sitzung. Wenn die Eingabeaufforderung Text enthält, löscht `Ctrl+D` das Zeichen nach dem Cursor |


32| `Ctrl+V` oder `Cmd+V` (iTerm2) oder `Alt+V` (Windows und WSL) | Bild aus Zwischenablage einfügen | Fügt einen `[Image #N]`-Chip am Cursor ein, damit Sie ihn positionell in Ihrer Eingabeaufforderung referenzieren können. Unter WSL sind sowohl `Ctrl+V` als auch `Alt+V` gebunden; verwenden Sie `Alt+V`, wenn Ihr Terminal `Ctrl+V` abfängt |32| `Ctrl+V` oder `Cmd+V` (iTerm2) oder `Alt+V` (Windows und WSL) | Bild aus Zwischenablage einfügen | Fügt einen `[Image #N]`-Chip am Cursor ein, damit Sie ihn positionell in Ihrer Eingabeaufforderung referenzieren können. Unter WSL sind sowohl `Ctrl+V` als auch `Alt+V` gebunden; verwenden Sie `Alt+V`, wenn Ihr Terminal `Ctrl+V` abfängt |

33| `Ctrl+B` | Hintergrund-Aufgaben ausführen | Versetzt Bash-Befehle und Agenten in den Hintergrund. Tmux-Benutzer drücken zweimal |33| `Ctrl+B` | Hintergrund-Aufgaben ausführen | Versetzt Bash-Befehle und Agenten in den Hintergrund. Tmux-Benutzer drücken zweimal |

34| `Ctrl+T` | Claudes Aufgabenliste umschalten | Zeigen oder verbergen Sie [Claudes To-Do-Liste](#task-list) im Statusbereich. Dies ist nicht die Hintergrund-Aufgabenansicht; verwenden Sie [`/tasks`](/docs/de/commands), um laufende Shells und Subagenten anzuzeigen |34| `Ctrl+T` | Claudes Aufgabenliste umschalten | Zeigen oder verbergen Sie [Claudes To-Do-Liste](#task-list) im Statusbereich. Dies ist nicht die Hintergrund-Aufgabenansicht; verwenden Sie [`/tasks`](/docs/de/commands), um laufende Shells und Subagenten anzuzeigen |

35| `Ctrl+S` | Eingabeaufforderung speichern oder wiederherstellen | Mit Text in der Eingabe speichert es diesen und löscht die Eingabeaufforderung. Erneut auf einer leeren Eingabeaufforderung gedrückt, stellt es den gespeicherten Text, die Cursorposition und eingefügte Inhalte wieder her |35| `Ctrl+S` | Eingabeaufforderung speichern oder wiederherstellen | Mit Text in der Eingabe speichert es diesen und löscht die Eingabeaufforderung. Erneut auf einer leeren Eingabeaufforderung gedrückt, stellt es den gespeicherten Text, die Cursorposition, eingefügte Inhalte und den Eingabemodus wieder her, sodass ein gespeicherter `!` [Shell-Befehl](#shell-mode-with-prefix) im Shell-Modus zurückkommt |

36| `Ctrl+Z` | Claude Code unterbrechen | Nur Unix. Unterbricht den Prozess zu Ihrer Shell; führen Sie `fg` aus, um fortzufahren |36| `Ctrl+Z` | Claude Code unterbrechen | Nur Unix. Unterbricht den Prozess zu Ihrer Shell; führen Sie `fg` aus, um fortzufahren |

37| `Pfeiltasten links/rechts` | Durch Dialog-Registerkarten navigieren | Navigieren Sie zwischen Registerkarten in Berechtigungsdialogen und Menüs |37| `Pfeiltasten links/rechts` | Durch Dialog-Registerkarten navigieren | Navigieren Sie zwischen Registerkarten in Berechtigungsdialogen und Menüs |

38| `Tab` | Einen Autovervollständigungsvorschlag akzeptieren oder einen Kommentar zu einer Berechtigungsantwort hinzufügen | Während Autovervollständigungsvorschläge in der Eingabeaufforderung angezeigt werden, akzeptiert dies den ausgewählten Vorschlag. Bei den meisten Berechtigungsaufforderungen öffnet dies mit **Ja** oder **Nein** fokussiert ein Kommentarfeld für diese Option, und das erneute Drücken schließt das Feld. Siehe [Kommentar hinzufügen, wenn Sie eine Berechtigungsaufforderung beantworten](/docs/de/permissions#add-a-comment-when-you-answer-a-permission-prompt) |38| `Tab` | Einen Autovervollständigungsvorschlag akzeptieren oder einen Kommentar zu einer Berechtigungsantwort hinzufügen | Während Autovervollständigungsvorschläge in der Eingabeaufforderung angezeigt werden, akzeptiert dies den ausgewählten Vorschlag. Bei den meisten Berechtigungsaufforderungen öffnet dies mit **Ja** oder **Nein** fokussiert ein Kommentarfeld für diese Option, und das erneute Drücken schließt das Feld. Siehe [Kommentar hinzufügen, wenn Sie eine Berechtigungsaufforderung beantworten](/docs/de/permissions#add-a-comment-when-you-answer-a-permission-prompt) |

39| `Pfeiltasten oben/unten` oder `Ctrl+P`/`Ctrl+N` | Cursor verschieben oder Befehlsverlauf navigieren | Wenn sich die Eingabe über mehr als eine visuelle Zeile erstreckt, ob umgebrochen oder mehrzeilig, verschiebt dies zunächst den Cursor in der Eingabeaufforderung. Sobald sich der Cursor in der ersten oder letzten visuellen Zeile befindet, navigiert das erneute Drücken durch den Befehlsverlauf. Während Sie Nachrichten in der Warteschlange haben, [nimmt Oben aus der ersten Zeile diese stattdessen zurück](#take-back-what-you-queued) |39| `Pfeiltasten oben/unten` oder `Ctrl+P`/`Ctrl+N` | Cursor verschieben oder Befehlsverlauf navigieren | Wenn sich die Eingabe über mehr als eine visuelle Zeile erstreckt, ob umgebrochen oder mehrzeilig, verschiebt dies zunächst den Cursor in der Eingabeaufforderung. Sobald sich der Cursor in der ersten oder letzten visuellen Zeile befindet, navigiert das erneute Drücken durch den Befehlsverlauf. Während Sie Nachrichten in der Warteschlange haben, [nimmt Oben aus der ersten Zeile diese stattdessen zurück](#take-back-what-you-queued) |

40| `Esc` | Claude unterbrechen oder einen Dialog schließen | Stoppen Sie die aktuelle Antwort oder den Werkzeugaufruf in der Mitte des Zuges, damit Sie umleiten können. Claude behält die bisherige Arbeit bei. Wenn Sie [Nachrichten in der Warteschlange haben](#queue-messages-while-claude-works), sendet Claude Code diese als nächstes. Wenn ein Dialog offen ist, schließt `Esc` den Dialog. Bei einer Berechtigungsaufforderung lehnt `Esc` die Aktion ab, genauso wie [**Nein** ohne Kommentar](/docs/de/permissions#add-a-comment-when-you-answer-a-permission-prompt) |40| `Esc` | Claude unterbrechen oder einen Dialog schließen | Stoppen Sie die aktuelle Antwort oder den Werkzeugaufruf in der Mitte des Zuges, damit Sie umleiten können. Claude behält die bisherige Arbeit bei. Wenn Sie [Nachrichten in der Warteschlange haben](#queue-messages-while-claude-works), sendet Claude Code diese als nächstes. Wenn ein Dialog offen ist, schließt `Esc` den Dialog. Bei einer Berechtigungsaufforderung lehnt `Esc` die Aktion ab, genauso wie [**Nein** ohne Kommentar](/docs/de/permissions#add-a-comment-when-you-answer-a-permission-prompt) |

41| `Esc` + `Esc` | Eingabeentwurf löschen oder zurückspulen | Wenn die Eingabeaufforderung Text enthält, löscht doppeltes `Esc` diesen und speichert den Entwurf im Verlauf, damit `Oben` ihn abruft. Wenn die Eingabe leer ist, öffnet doppeltes `Esc` das [Zurückspul-Menü](/docs/de/checkpointing), um Code und Gespräch von einem früheren Punkt wiederherzustellen oder zusammenzufassen |41| `Esc` + `Esc` | Eingabeentwurf löschen oder zurückspulen | Wenn die Eingabeaufforderung Text enthält, löscht doppeltes `Esc` diesen und speichert den Entwurf im Verlauf, damit `Oben` ihn abruft. Wenn die Eingabe leer ist, öffnet doppeltes `Esc` das [Zurückspul-Menü](/docs/de/checkpointing), um Code und Gespräch von einem früheren Punkt wiederherzustellen oder zusammenzufassen |

42| `Ctrl+Enter` oder `Ctrl+X Ctrl+S` | Warteschlangen-Nachrichten jetzt senden | Unterbricht den aktuellen Zug, damit Ihre [Nachrichten in der Warteschlange](#queue-messages-while-claude-works) und Ihr Entwurf mit ihnen sofort ausgehen, anstatt wenn der Zug endet. Im [Shell-Modus](#shell-mode-with-prefix) reiht der Schlüssel Ihren Befehl in die Warteschlange ein, ohne zu unterbrechen. In Terminals, die erweiterte Tasten nicht melden, kommt `Ctrl+Enter` als einfaches `Enter` an; `Ctrl+X Ctrl+S` funktioniert in jedem Terminal. Erfordert Claude Code v2.1.275 oder später |42| `Ctrl+Enter` oder `Ctrl+X Ctrl+S` | Warteschlangen-Nachrichten jetzt senden | Sendet Ihre [Nachrichten in der Warteschlange](#queue-messages-while-claude-works) und Ihren Entwurf mit ihnen sofort. [Wenn Claude Code das sendet, das Sie in die Warteschlange eingereiht haben](#when-claude-code-sends-what-you-queued) behandelt, was mit dem Zug passiert, an dem Claude arbeitet. Im [Shell-Modus](#shell-mode-with-prefix) reiht der Schlüssel Ihren Befehl nur in die Warteschlange ein. In Terminals, die erweiterte Tasten nicht melden, kommt `Ctrl+Enter` als einfaches `Enter` an; `Ctrl+X Ctrl+S` funktioniert in jedem Terminal. Erfordert Claude Code v2.1.275 oder später |

43| `Shift+Tab` oder `Alt+M` unter Windows, wenn die Node- oder Bun-Laufzeit den VT-Eingabemodus nicht aktiviert | Berechtigungsmodi durchlaufen | Durchlaufen Sie `default` (im Modusindikator als Manuell gekennzeichnet), `acceptEdits`, `plan` und, falls verfügbar, `bypassPermissions` und dann `auto`. Von `auto` wechselt der erste Druck zu `default`. Siehe [Berechtigungsmodi](/docs/de/permission-modes). Bei einer Dateiberechtigungsaufforderung schließt dieselbe Taste ein offenes [Kommentarfeld](/docs/de/permissions#add-a-comment-when-you-answer-a-permission-prompt). Ohne offenes Feld wählt es die Option aus, die die Aktion für den Rest der Sitzung ermöglicht, wenn die Aufforderung diese Option anbietet |43| `Shift+Tab` oder `Alt+M` unter Windows, wenn die Node- oder Bun-Laufzeit den VT-Eingabemodus nicht aktiviert | Berechtigungsmodi durchlaufen | Durchlaufen Sie `default` (im Modusindikator als Manuell gekennzeichnet), `acceptEdits`, `plan` und, falls verfügbar, `bypassPermissions` und dann `auto`. Von `auto` wechselt der erste Druck zu `default`. Siehe [Berechtigungsmodi](/docs/de/permission-modes). Bei einer Dateiberechtigungsaufforderung schließt dieselbe Taste ein offenes [Kommentarfeld](/docs/de/permissions#add-a-comment-when-you-answer-a-permission-prompt). Ohne offenes Feld wählt es die Option aus, die die Aktion für den Rest der Sitzung ermöglicht, wenn die Aufforderung diese Option anbietet |

44| `Option+P` (macOS) oder `Alt+P` (Windows/Linux) | Modell wechseln | Wechseln Sie Modelle, ohne Ihre Eingabeaufforderung zu löschen |44| `Option+P` (macOS) oder `Alt+P` (Windows/Linux) | Modell wechseln | Wechseln Sie Modelle, ohne Ihre Eingabeaufforderung zu löschen |

45| `Option+T` (macOS) oder `Alt+T` (Windows/Linux) | Erweitertes Denken umschalten | Aktivieren oder deaktivieren Sie den erweiterten Denkmodus. Hat keine Auswirkung auf Opus 5.5 oder die Fable-Modelle, die immer erweitertes Denken verwenden. Funktioniert auf macOS ohne Konfiguration von Option als Meta |45| `Option+T` (macOS) oder `Alt+T` (Windows/Linux) | Erweitertes Denken umschalten | Aktivieren oder deaktivieren Sie den erweiterten Denkmodus. Hat keine Auswirkung auf Opus 5.5 oder die Fable-Modelle, die immer erweitertes Denken verwenden. Funktioniert auf macOS ohne Konfiguration von Option als Meta |


136 Befehle136 Befehle

137</h2>137</h2>

138 138 

139Geben Sie `/` in Claude Code ein, um die verfügbaren Befehle anzuzeigen, oder geben Sie `/` gefolgt von beliebigen Buchstaben ein, um zu filtern. Das `/`-Menü listet integrierte Befehle, gebündelte und von Benutzern erstellte [Skills](/docs/de/skills), sowie Befehle auf, die von [Plugins](/docs/de/plugins) und [MCP-Servern](/docs/de/mcp#use-mcp-prompts-as-commands) bereitgestellt werden. Nicht alle integrierten Befehle sind für jeden Benutzer sichtbar, da einige von Ihrer Plattform oder Ihrem Plan abhängen, und [einige verfügbare Befehle sind absichtlich im Menü verborgen](/docs/de/commands#how-the-command-menu-matches-what-you-type) und werden ausgeführt, wenn Sie ihren vollständigen Namen eingeben.139Geben Sie `/` in Claude Code ein, um die verfügbaren Befehle anzuzeigen, oder geben Sie `/` gefolgt von beliebigen Buchstaben ein, um zu filtern. Das `/`-Menü listet integrierte Befehle, gebündelte und von Benutzern erstellte [Skills](/docs/de/skills), sowie Befehle auf, die von [Plugins](/docs/de/plugins/overview) und [MCP-Servern](/docs/de/mcp#use-mcp-prompts-as-commands) bereitgestellt werden. Nicht alle integrierten Befehle sind für jeden Benutzer sichtbar, da einige von Ihrer Plattform oder Ihrem Plan abhängen, und [einige verfügbare Befehle sind absichtlich im Menü verborgen](/docs/de/commands#how-the-command-menu-matches-what-you-type) und werden ausgeführt, wenn Sie ihren vollständigen Namen eingeben.

140 140 

141Bei der [Vollbildwiedergabe](/docs/de/fullscreen#use-the-mouse) reagieren die `/`-Befehlsliste und die `@`-Dateivorschlagsliste auch auf die Maus: Das Überfahren mit der Maus hebt eine Zeile hervor und das Anklicken akzeptiert sie.141Bei der [Vollbildwiedergabe](/docs/de/fullscreen#use-the-mouse) reagieren die `/`-Befehlsliste und die `@`-Dateivorschlagsliste auch auf die Maus: Das Überfahren mit der Maus hebt eine Zeile hervor und das Anklicken akzeptiert sie.

142 142 


408* Nachrichten: Wenn Sie eine Nachricht einreihen, während Claude Tool-Aufrufe ausführt, übergibt Claude Code die Nachricht an Claude, sobald diese Tool-Aufrufe beendet sind, innerhalb desselben Zugs. Wenn der Zug mit noch eingereihten Nachrichten endet, werden sie ohne einen weiteren Tastendruck gesendet, in der Reihenfolge, in der Sie sie eingegeben haben408* Nachrichten: Wenn Sie eine Nachricht einreihen, während Claude Tool-Aufrufe ausführt, übergibt Claude Code die Nachricht an Claude, sobald diese Tool-Aufrufe beendet sind, innerhalb desselben Zugs. Wenn der Zug mit noch eingereihten Nachrichten endet, werden sie ohne einen weiteren Tastendruck gesendet, in der Reihenfolge, in der Sie sie eingegeben haben

409* Befehle und Shell-Befehle: Claude Code hält sie bis zum Ende des Zugs, dann führt sie nacheinander aus und behält die Reihenfolge bei, in der Sie sie eingereicht haben409* Befehle und Shell-Befehle: Claude Code hält sie bis zum Ende des Zugs, dann führt sie nacheinander aus und behält die Reihenfolge bei, in der Sie sie eingereicht haben

410 410 

411Um das Eingereihte zu senden, ohne auf das Ende des Zugs zu warten, drücken Sie `Ctrl+Enter`. Claude Code unterbricht den Zug, und Ihre eingereihten Nachrichten werden sofort gesendet, mit Ihrem Entwurf eingereicht dahinter, falls Sie einen eingegeben haben. Im [Shell-Modus](#shell-mode-with-prefix) reiht der Tastendruck Ihren Befehl ein, ohne den Zug zu unterbrechen. Erfordert Claude Code v2.1.275 oder später.411Um das Eingereihte zu senden, ohne zu warten, drücken Sie `Ctrl+Enter`. Ihre eingereihten Nachrichten werden sofort gesendet, mit Ihrem Entwurf eingereicht dahinter, falls Sie einen eingegeben haben. Erfordert Claude Code v2.1.275 oder später.

412 412 

413In Terminals, die erweiterte Tasten nicht melden, kommt `Ctrl+Enter` als einfaches `Enter` an und reiht den Entwurf stattdessen ein; `Ctrl+X Ctrl+S` funktioniert in jedem Terminal. Beide Tasten sind Bindungen der [`chat:sendNow`-Aktion](/docs/de/keybindings#chat-actions).413Wenn Sie einen `!` Shell-Befehl vor Ihren Nachrichten eingereicht haben, unterbricht die Taste den Zug. Andernfalls hängt das, was mit dem Zug geschieht, davon ab, was Claude tut, wenn Sie die Taste drücken:

414 

415* Shell-Befehle, Subagenten oder andere Arbeiten ausführen, die in den [Hintergrund](#background-bash-commands) verschoben werden können: Diese Arbeit wird in den Hintergrund verschoben und läuft weiter, und Claude liest Ihre Nachrichten im selben Zug

416* Nur eine Antwort schreiben oder etwas ausführen, das nicht in den Hintergrund verschoben werden kann: Claude Code unterbricht den Zug und sendet Ihre Nachrichten als nächstes. Vor v2.1.281 unterbrach die Taste den Zug in beiden Fällen

417 

418Im [Shell-Modus](#shell-mode-with-prefix) reiht die Taste nur Ihren Befehl ein. In Terminals, die erweiterte Tasten nicht melden, kommt `Ctrl+Enter` als einfaches `Enter` an und reiht den Entwurf stattdessen ein; `Ctrl+X Ctrl+S` funktioniert in jedem Terminal. Beide Tasten sind Bindungen der [`chat:sendNow`-Aktion](/docs/de/keybindings#chat-actions).

414 419 

415Drücken Sie `Esc`, um den Zug zu unterbrechen, ohne Ihren Entwurf zu senden. Claude Code behält das Eingereihte und sendet es sofort.420Drücken Sie `Esc`, um den Zug zu unterbrechen, ohne Ihren Entwurf zu senden. Claude Code behält das Eingereihte und sendet es sofort.

416 421 

keybindings.md +18 −2

Details

112Aktionen verfügbar im `Chat`-Kontext:112Aktionen verfügbar im `Chat`-Kontext:

113 113 

114| Aktion | Standard | Beschreibung |114| Aktion | Standard | Beschreibung |

115| :-------------------- | :----------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |115| :-------------------- | :----------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

116| `chat:cancel` | Escape | Aktuelle Eingabe abbrechen |116| `chat:cancel` | Escape | Aktuelle Eingabe abbrechen |

117| `chat:clearInput` | Ctrl+L | Vollständiges Bildschirm-Neuzeichnen erzwingen, Eingabe und Konversation beibehalten |117| `chat:clearInput` | Ctrl+L | Vollständiges Bildschirm-Neuzeichnen erzwingen, Eingabe und Konversation beibehalten |

118| `chat:clearScreen` | Cmd+K | Dasselbe wie `chat:clearInput`. Siehe [Konversation löschen](/docs/de/fullscreen#clear-the-conversation), um zu erfahren, wie sich Cmd+K auf iTerm2 und Terminal.app verhält |118| `chat:clearScreen` | Cmd+K | Dasselbe wie `chat:clearInput`. Siehe [Konversation löschen](/docs/de/fullscreen#clear-the-conversation), um zu erfahren, wie sich Cmd+K auf iTerm2 und Terminal.app verhält |


123| `chat:thinkingToggle` | Meta+T | Erweitertes Denken umschalten |123| `chat:thinkingToggle` | Meta+T | Erweitertes Denken umschalten |

124| `chat:submit` | Enter | Nachricht senden |124| `chat:submit` | Enter | Nachricht senden |

125| `chat:queueSubmit` | Ctrl+X Enter | Nachricht senden, markiert zum Warten auf ihren Platz: Während Claude arbeitet, [reiht Claude Code sie ein](/docs/de/interactive-mode#queue-messages-while-claude-works) und unterbricht den Zug nie. Im Gegensatz zu `chat:submit` sendet es den Entwurf auch, wenn Autovervollständigungsvorschläge offen sind. Erfordert v2.1.247 oder später |125| `chat:queueSubmit` | Ctrl+X Enter | Nachricht senden, markiert zum Warten auf ihren Platz: Während Claude arbeitet, [reiht Claude Code sie ein](/docs/de/interactive-mode#queue-messages-while-claude-works) und unterbricht den Zug nie. Im Gegensatz zu `chat:submit` sendet es den Entwurf auch, wenn Autovervollständigungsvorschläge offen sind. Erfordert v2.1.247 oder später |

126| `chat:sendNow` | Ctrl+Enter, Ctrl+X Ctrl+S | Unterbrechen Sie den laufenden Zug, damit Ihre [eingereihten Nachrichten](/docs/de/interactive-mode#queue-messages-while-claude-works) und Ihr Entwurf mit ihnen sofort rausgehen. Wenn nichts läuft, sendet es den Entwurf, und im [Shell-Modus](/docs/de/interactive-mode#shell-mode-with-prefix) reiht es den Befehl ein, ohne zu unterbrechen. Terminals, die erweiterte Tasten nicht melden, liefern `Ctrl+Enter` als einfaches `Enter`, daher ist `Ctrl+X Ctrl+S` die Bindung, die in jedem Terminal funktioniert. Erfordert v2.1.275 oder später |126| `chat:sendNow` | Ctrl+Enter, Ctrl+X Ctrl+S | Senden Sie Ihre [eingereihten Nachrichten](/docs/de/interactive-mode#queue-messages-while-claude-works) und Ihren Entwurf mit ihnen sofort ab. [Wenn Claude Code das sendet, was Sie eingereicht haben](/docs/de/interactive-mode#when-claude-code-sends-what-you-queued) behandelt, was mit dem Zug passiert, an dem Claude arbeitet. Wenn nichts läuft, sendet der Schlüssel den Entwurf, und im [Shell-Modus](/docs/de/interactive-mode#shell-mode-with-prefix) reiht er nur den Befehl ein. Terminals, die erweiterte Tasten nicht melden, liefern `Ctrl+Enter` als einfaches `Enter`, daher ist `Ctrl+X Ctrl+S` die Bindung, die in jedem Terminal funktioniert. Erfordert v2.1.275 oder später |

127| `chat:newline` | Ctrl+J | Zeilenumbruch einfügen, ohne zu senden |127| `chat:newline` | Ctrl+J | Zeilenumbruch einfügen, ohne zu senden |

128| `chat:undo` | Ctrl+\_, Ctrl+Shift+- | Letzte Aktion rückgängig machen |128| `chat:undo` | Ctrl+\_, Ctrl+Shift+- | Letzte Aktion rückgängig machen |

129| `chat:externalEditor` | Ctrl+G, Ctrl+X Ctrl+E | In externem Editor öffnen. Die [Eingabeverteilung der Agent-Ansicht](/docs/de/agent-view#keyboard-shortcuts) folgt auch den Eintasten-Bindungen dieser Aktion |129| `chat:externalEditor` | Ctrl+G, Ctrl+X Ctrl+E | In externem Editor öffnen. Die [Eingabeverteilung der Agent-Ansicht](/docs/de/agent-view#keyboard-shortcuts) folgt auch den Eintasten-Bindungen dieser Aktion |


184}184}

185```185```

186 186 

187Mit diesen Bindungen tippen `y` und `n` immer noch als Buchstaben, während ein [Textfeld](#text-fields) den Fokus hat.

188 

187Vor v2.1.280 waren `y` auch an `confirm:yes` und `n` an `confirm:no` standardmäßig gebunden. Wenn Sie Ihre `keybindings.json` mit `/keybindings` vor v2.1.280 erstellt haben, listet die Datei beide Bindungen auf und sie bleiben wirksam, bis Sie diese beiden Zeilen löschen.189Vor v2.1.280 waren `y` auch an `confirm:yes` und `n` an `confirm:no` standardmäßig gebunden. Wenn Sie Ihre `keybindings.json` mit `/keybindings` vor v2.1.280 erstellt haben, listet die Datei beide Bindungen auf und sie bleiben wirksam, bis Sie diese beiden Zeilen löschen.

188 190 

189<h3 id="permission-actions">191<h3 id="permission-actions">


634| Ctrl+A | GNU Screen-Präfix |636| Ctrl+A | GNU Screen-Präfix |

635| Ctrl+Z | Unix-Prozess-Suspend (SIGTSTP) |637| Ctrl+Z | Unix-Prozess-Suspend (SIGTSTP) |

636 638 

639<h2 id="text-fields">

640 Textfelder

641</h2>

642 

643Wenn Sie einen einzelnen Buchstaben, eine Ziffer oder die Leertaste binden, können Sie dieses Zeichen trotzdem in einem Textfeld in einem Dialog oder Panel eingeben. Ein solches Feld ist die `Other`-Antwort auf eine Frage, die Claude stellt. Während das Feld den Fokus hat, geht ein druckbares Zeichen, das Sie ohne Strg, Alt oder Cmd drücken, in das Feld, und Claude Code gleicht es nicht gegen Ihre Bindungen ab.

644 

645Diese Tasten führen ihre Bindungen aus, während das Feld den Fokus hat:

646 

647* Tasten, die kein Zeichen eingeben, wie Eingabe, Escape, Tab und die Pfeiltasten

648* Jede Taste, die mit Strg, Alt oder Cmd gedrückt wird

649* Der zweite Tastendruck eines [Akkords](#chords), der bereits läuft

650 

651Bei der Haupteingabeaufforderung gleicht Claude Code jede Taste gegen die aktiven Kontexte, wie `Chat`, ab und gibt die Taste nur ein, wenn keine Bindung sie übernimmt.

652 

637<h2 id="vim-mode-interaction">653<h2 id="vim-mode-interaction">

638 Vim-Modus-Interaktion654 Vim-Modus-Interaktion

639</h2>655</h2>

Details

202 Reduzieren Sie Dateileseoperationen mit Code Intelligence202 Reduzieren Sie Dateileseoperationen mit Code Intelligence

203</h3>203</h3>

204 204 

205In einer großen Codebase kann das Finden, wo ein Symbol definiert oder verwendet wird, viele Dateileseoperationen und Grep-Aufrufe kosten. [Code-Intelligence-Plugins](/docs/de/discover-plugins#code-intelligence) verbinden Claude mit einem Language Server, damit er zu Definitionen springen, Referenzen finden und Typfehler direkt anzeigen kann, anstatt den Baum zu scannen.205In einer großen Codebase kann das Finden, wo ein Symbol definiert oder verwendet wird, viele Dateileseoperationen und Grep-Aufrufe kosten. [Code-Intelligence-Plugins](/docs/de/plugins/code-intelligence) verbinden Claude mit einem Language Server, damit er zu Definitionen springen, Referenzen finden und Typfehler direkt anzeigen kann, anstatt den Baum zu scannen.

206 206 

207Der offizielle Marketplace hat Plugins für TypeScript, Python, Go, Rust und andere häufige Sprachen. Führen Sie den Befehl unten innerhalb einer Claude Code-Sitzung aus, um das TypeScript-Plugin zu installieren:207Der offizielle Marketplace hat Plugins für TypeScript, Python, Go, Rust und andere häufige Sprachen. Führen Sie den Befehl unten innerhalb einer Claude Code-Sitzung aus, um das TypeScript-Plugin zu installieren:

208 208 


213Wenn die Installation fehlschlägt, stimmen Sie die Meldung ab, die Claude Code meldet:213Wenn die Installation fehlschlägt, stimmen Sie die Meldung ab, die Claude Code meldet:

214 214 

215* `Marketplace "claude-plugins-official" not found`: Fügen Sie den Marketplace mit `/plugin marketplace add anthropics/claude-plugins-official` hinzu und versuchen Sie dann die Installation erneut.215* `Marketplace "claude-plugins-official" not found`: Fügen Sie den Marketplace mit `/plugin marketplace add anthropics/claude-plugins-official` hinzu und versuchen Sie dann die Installation erneut.

216* Das Plugin wird [nicht im Marketplace gefunden](/docs/de/discover-plugins#install-plugins): Überprüfen Sie den Plugin-Namen.216* Das Plugin wird [nicht im Marketplace gefunden](/docs/de/plugins/install#install-a-plugin): Überprüfen Sie den Plugin-Namen.

217 217 

218Um ein Plugin für alle im Repository zu aktivieren, anstatt es selbst zu installieren, fügen Sie es zur [`enabledPlugins`-Projekteinstellung](/docs/de/settings-reference#plugin-settings) hinzu.218Um ein Plugin für alle im Repository zu aktivieren, anstatt es selbst zu installieren, fügen Sie es zur [`enabledPlugins`-Projekteinstellung](/docs/de/settings-reference#plugin-settings) hinzu.

219 219 

220Code-Intelligence-Plugins erfordern die Language-Server-Binärdatei der Sprache auf jedem Entwickler-Computer. Siehe [welche Binärdatei jede Sprache erfordert](/docs/de/discover-plugins#code-intelligence). Die Installation aus dem offiziellen Marketplace erfordert Netzwerkzugriff zu GitHub, wo der Marketplace gehostet wird. In einem eingeschränkten Netzwerk [fügen Sie den Marketplace stattdessen von einem internen Git-Host oder lokalen Pfad hinzu](/docs/de/discover-plugins#add-from-other-git-hosts).220Code-Intelligence-Plugins erfordern die Language-Server-Binärdatei der Sprache auf jedem Entwickler-Computer. Siehe [welche Binärdatei jede Sprache erfordert](/docs/de/plugins/code-intelligence). Die Installation aus dem offiziellen Marketplace erfordert Netzwerkzugriff zu GitHub, wo der Marketplace gehostet wird. In einem eingeschränkten Netzwerk [fügen Sie den Marketplace stattdessen von einem internen Git-Host oder lokalen Pfad hinzu](/docs/de/plugins/install#add-a-marketplace).

221 221 

222Dies funktioniert gut mit `claudeMdExcludes` und den `Read`-Deny-Regeln oben. Diese halten irrelevante Inhalte aus dem Kontext heraus, und Code Intelligence hält Claude davon ab, durch das zu lesen, was bleibt, um eine Definition zu finden.222Dies funktioniert gut mit `claudeMdExcludes` und den `Read`-Deny-Regeln oben. Diese halten irrelevante Inhalte aus dem Kontext heraus, und Code Intelligence hält Claude davon ab, durch das zu lesen, was bleibt, um eine Definition zu finden.

223 223 


395 395 

396Namen werden immer geladen, aber [wenn es viele gibt, verlieren einige Skills ihre Beschreibungen vollständig](/docs/de/skills#skill-descriptions-are-cut-short), was die Schlüsselwörter entfernen kann, die Claude verwendet, um zu entscheiden, ob ein Skill angewendet wird. Halten Sie Beschreibungen kurz und führen Sie mit Wörtern an, die eine Anfrage enthalten würde, wie „Schreiben oder Ändern von Tests in `packages/api/`".396Namen werden immer geladen, aber [wenn es viele gibt, verlieren einige Skills ihre Beschreibungen vollständig](/docs/de/skills#skill-descriptions-are-cut-short), was die Schlüsselwörter entfernen kann, die Claude verwendet, um zu entscheiden, ob ein Skill angewendet wird. Halten Sie Beschreibungen kurz und führen Sie mit Wörtern an, die eine Anfrage enthalten würde, wie „Schreiben oder Ändern von Tests in `packages/api/`".

397 397 

398Für Skills, die viele Verzeichnisse teilen, wie PR-Konventionen oder eine Deploy-Checkliste, platzieren Sie sie in `.claude/skills/` des Repository-Roots, damit sie von jedem Startverzeichnis geladen werden. Wenn gemeinsame Skills ihre eigene Versionsgeschichte benötigen oder über Repositories hinweg funktionieren müssen, packen Sie sie stattdessen als [Plugin](/docs/de/plugins). Plugin-Skills verwenden einen `plugin-name:skill-name`-Namespace, daher kollidieren sie nie mit Per-Verzeichnis-Skills. Ein Platform-Team kann sie an einem Ort versionieren und aktualisieren.398Für Skills, die viele Verzeichnisse teilen, wie PR-Konventionen oder eine Deploy-Checkliste, platzieren Sie sie in `.claude/skills/` des Repository-Roots, damit sie von jedem Startverzeichnis geladen werden. Wenn gemeinsame Skills ihre eigene Versionsgeschichte benötigen oder über Repositories hinweg funktionieren müssen, packen Sie sie stattdessen als [Plugin](/docs/de/plugins/overview) ein. Plugin-Skills verwenden einen `plugin-name:skill-name`-Namespace, daher kollidieren sie nie mit Per-Verzeichnis-Skills. Ein Platform-Team kann sie an einem Ort versionieren und aktualisieren.

399 399 

400Um zu finden, welche Skills ungenutzt sind, aktivieren Sie den OpenTelemetry [Logs Exporter](/docs/de/monitoring-usage) und setzen Sie `OTEL_LOG_TOOL_DETAILS=1`, damit Skill-Namen wörtlich aufgezeichnet werden, anstatt redigiert zu werden. Das [`skill_activated`-Event](/docs/de/monitoring-usage#skill-activated-event) zeichnet jede Invokation in seinem `skill.name`-Attribut auf, und `invocation_trigger` zeichnet auf, ob ein Befehl, Claude oder ein verschachtelter Skill es invokiert hat, was Ihnen sagt, was zu konsolidieren oder zu beenden ist.400Um zu finden, welche Skills ungenutzt sind, aktivieren Sie den OpenTelemetry [Logs Exporter](/docs/de/monitoring-usage) und setzen Sie `OTEL_LOG_TOOL_DETAILS=1`, damit Skill-Namen wörtlich aufgezeichnet werden, anstatt redigiert zu werden. Das [`skill_activated`-Event](/docs/de/monitoring-usage#skill-activated-event) zeichnet jede Invokation in seinem `skill.name`-Attribut auf, und `invocation_trigger` zeichnet auf, ob ein Befehl, Claude oder ein verschachtelter Skill es invokiert hat, was Ihnen sagt, was zu konsolidieren oder zu beenden ist.

401 401 


408Verschieben Sie Konventionen und Referenzmaterial aus immer geladenem CLAUDE.md in Mechanismen, die bei Bedarf geladen werden:408Verschieben Sie Konventionen und Referenzmaterial aus immer geladenem CLAUDE.md in Mechanismen, die bei Bedarf geladen werden:

409 409 

410* [Skills](/docs/de/skills): Referenzmaterial, das Claude nur lädt, wenn es für die Aufgabe relevant ist410* [Skills](/docs/de/skills): Referenzmaterial, das Claude nur lädt, wenn es für die Aufgabe relevant ist

411* [Plugins](/docs/de/plugins): Versionierte Bundles von Skills, Hooks und Befehlen, die ein Platform-Team zentral besitzt411* [Plugins](/docs/de/plugins/overview): Versionierte Bundles von Skills, Hooks und Befehlen, die ein Platform-Team zentral besitzt

412* [MCP-Server](/docs/de/mcp): Wenn Ihre Organisation bereits eine Code-Suche oder RAG-Index über das Repository ausführt, stellen Sie es als MCP-Tool zur Verfügung, damit Claude es abfragt, anstatt Dateien direkt zu lesen412* [MCP-Server](/docs/de/mcp): Wenn Ihre Organisation bereits eine Code-Suche oder RAG-Index über das Repository ausführt, stellen Sie es als MCP-Tool zur Verfügung, damit Claude es abfragt, anstatt Dateien direkt zu lesen

413 413 

414Siehe [Server-verwaltete oder Endpoint-verwaltete Einstellungen](/docs/de/server-managed-settings#choose-between-server-managed-and-endpoint-managed-settings) für wie Platform-Teams diese zentral durchsetzen können.414Siehe [Server-verwaltete oder Endpoint-verwaltete Einstellungen](/docs/de/server-managed-settings#choose-between-server-managed-and-endpoint-managed-settings) für wie Platform-Teams diese zentral durchsetzen können.

managed-mcp.md +1 −1

Details

41| **Keine Einschränkungen** | Benutzer fügen alles hinzu | Stellen Sie keine verwaltete MCP-Konfiguration bereit |41| **Keine Einschränkungen** | Benutzer fügen alles hinzu | Stellen Sie keine verwaltete MCP-Konfiguration bereit |

42 42 

43<Note>43<Note>

44 Claude Code hat keine integrierte MCP-Server-Registry, die Benutzer durchsuchen und installieren können. Für das Muster des genehmigten Katalogs teilen Sie die genehmigte Liste und ihre `claude mcp add`-Befehle an einem Ort, an dem Ihre Benutzer sie finden, z. B. in einem internen Wiki, oder verteilen Sie die Server als Plugins über einen [verwalteten Plugin-Marketplace](/docs/de/plugin-marketplaces#managed-marketplace-restrictions), damit Benutzer sie von `/plugin` durchsuchen und installieren können.44 Claude Code hat keine integrierte MCP-Server-Registry, die Benutzer durchsuchen und installieren können. Für das Muster des genehmigten Katalogs teilen Sie die genehmigte Liste und ihre `claude mcp add`-Befehle an einem Ort, an dem Ihre Benutzer sie finden, z. B. in einem internen Wiki, oder verteilen Sie die Server als Plugins über einen [verwalteten Plugin-Marketplace](/docs/de/plugins/org#restrict-what-users-can-install), damit Benutzer sie von `/plugin` durchsuchen und installieren können.

45</Note>45</Note>

46 46 

47<h2 id="exclusive-control-with-managed-mcp-json">47<h2 id="exclusive-control-with-managed-mcp-json">

Details

95 * **In einer vollständigen VM-Sandbox**: Wenn Ihre Claude Desktop-verwaltete Konfiguration [`requireCoworkFullVmSandbox`](https://claude.com/docs/third-party/claude-desktop/configuration#requirecoworkfullvmsandbox) setzt, wird Claude Code in einer virtuellen Maschine ausgeführt, in der die MDM-Richtlinie und die verwaltete Einstellungsdatei des Geräts nicht vorhanden sind.95 * **In einer vollständigen VM-Sandbox**: Wenn Ihre Claude Desktop-verwaltete Konfiguration [`requireCoworkFullVmSandbox`](https://claude.com/docs/third-party/claude-desktop/configuration#requirecoworkfullvmsandbox) setzt, wird Claude Code in einer virtuellen Maschine ausgeführt, in der die MDM-Richtlinie und die verwaltete Einstellungsdatei des Geräts nicht vorhanden sind.

96 * **Remote-Cowork-Sitzungen**: Diese werden auf von Anthropic verwalteten VMs ausgeführt, wo Claude Code keine Geräterichtlinie zum Lesen hat.96 * **Remote-Cowork-Sitzungen**: Diese werden auf von Anthropic verwalteten VMs ausgeführt, wo Claude Code keine Geräterichtlinie zum Lesen hat.

97 97 

98 Überall dort, wo die Sitzung ausgeführt wird, wendet claude.ai die Listen [`strictKnownMarketplaces`](/docs/de/settings-reference#strictknownmarketplaces) und [`blockedMarketplaces`](/docs/de/settings-reference#blockedmarketplaces) der Verwaltungskonsole selbst an, wenn jemand einen Marketplace aus einem Git-Repository auf claude.ai oder aus **Anpassen** in der Cowork-Registerkarte hinzufügt. [Wie Einschränkungen funktionieren](/docs/de/plugin-marketplaces#how-restrictions-work) beschreibt diese Überprüfung. Die [Oberflächenabdeckung](/docs/de/model-config#surface-coverage) vergleicht Cowork mit den anderen Oberflächen.98 Überall dort, wo die Sitzung ausgeführt wird, wendet claude.ai die Listen [`strictKnownMarketplaces`](/docs/de/settings-reference#strictknownmarketplaces) und [`blockedMarketplaces`](/docs/de/settings-reference#blockedmarketplaces) der Verwaltungskonsole selbst an, wenn jemand einen Marketplace aus einem Git-Repository auf claude.ai oder aus **Anpassen** in der Cowork-Registerkarte hinzufügt. [Wie Einschränkungen funktionieren](/docs/de/plugins/org#restrict-what-users-can-install) beschreibt diese Überprüfung. Die [Oberflächenabdeckung](/docs/de/model-config#surface-coverage) vergleicht Cowork mit den anderen Oberflächen.

99* **Laufende Sitzungen**: Die meisten Änderungen erreichen eine laufende Sitzung nach dem Zeitplan in der [Bereitstellungsmechanismus-Tabelle](#choose-a-delivery-mechanism), ohne einen Neustart.99* **Laufende Sitzungen**: Die meisten Änderungen erreichen eine laufende Sitzung nach dem Zeitplan in der [Bereitstellungsmechanismus-Tabelle](#choose-a-delivery-mechanism), ohne einen Neustart.

100 * Änderungen an [`forceRemoteSettingsRefresh`](/docs/de/settings-reference#forceremotesettingsrefresh), [`requiredMinimumVersion`](/docs/de/settings-reference#requiredminimumversion) und [einigen benutzerbearbeitbaren Schlüsseln](/docs/de/settings#when-edits-take-effect) treten beim nächsten Sitzungsstart in Kraft.100 * Änderungen an [`forceRemoteSettingsRefresh`](/docs/de/settings-reference#forceremotesettingsrefresh), [`requiredMinimumVersion`](/docs/de/settings-reference#requiredminimumversion) und [einigen benutzerbearbeitbaren Schlüsseln](/docs/de/settings#when-edits-take-effect) treten beim nächsten Sitzungsstart in Kraft.

101 * Ein neuer oder geänderter [`policyHelper`](/docs/de/settings-reference#policyhelper)-Eintrag tritt beim nächsten Start in Kraft. Wenn serververwaltete Einstellungen den Helper bei diesem Start überschatten, wird der Helper ausgeführt, sobald ein Abruf meldet, dass diese Einstellungen entfernt wurden.101 * Ein neuer oder geänderter [`policyHelper`](/docs/de/settings-reference#policyhelper)-Eintrag tritt beim nächsten Start in Kraft. Wenn serververwaltete Einstellungen den Helper bei diesem Start überschatten, wird der Helper ausgeführt, sobald ein Abruf meldet, dass diese Einstellungen entfernt wurden.


256 256 

257 Auf Claude Code v2.1.273 oder später, während `allowManagedMcpServersOnly` aktiv ist, gilt die `allowedMcpServers` Liste aus der höchstrangigen Admin-Quelle, die eine setzt, und blockiert die des Hosts, als ein [Schlüssel zwischen Quellen](#keys-read-from-every-admin-source). Die Liste des Hosts gilt nur, wenn keine Admin-Quelle eine setzt. Der [`managedSourcesBehavior`](/docs/de/settings-reference#managedsourcesbehavior) Eintrag sagt, welche Quelle jeden Schlüssel unter `"merge"` liefert. Vor v2.1.223 blockierte ein Wert in einer beliebigen Admin-Quelle den Wert des Hosts257 Auf Claude Code v2.1.273 oder später, während `allowManagedMcpServersOnly` aktiv ist, gilt die `allowedMcpServers` Liste aus der höchstrangigen Admin-Quelle, die eine setzt, und blockiert die des Hosts, als ein [Schlüssel zwischen Quellen](#keys-read-from-every-admin-source). Die Liste des Hosts gilt nur, wenn keine Admin-Quelle eine setzt. Der [`managedSourcesBehavior`](/docs/de/settings-reference#managedsourcesbehavior) Eintrag sagt, welche Quelle jeden Schlüssel unter `"merge"` liefert. Vor v2.1.223 blockierte ein Wert in einer beliebigen Admin-Quelle den Wert des Hosts

258* Für `availableModels` erzwingt Claude Code den Wert in den verwalteten Einstellungen, die es anwendet, und blockiert eine vom Host bereitgestellte Liste258* Für `availableModels` erzwingt Claude Code den Wert in den verwalteten Einstellungen, die es anwendet, und blockiert eine vom Host bereitgestellte Liste

259* Für `strictKnownMarketplaces` erzwingt Claude Code ebenso die Liste in den verwalteten Einstellungen, die es anwendet, und blockiert eine vom Host bereitgestellte. Die Liste des Hosts gilt nur, wenn keine angewendete verwaltete Quelle eine setzt. Erfordert Claude Code v2.1.282 oder später

260* Eine vom Host bereitgestellte `blockedMarketplaces` gilt zusätzlich zu jeder Blockliste, die eine verwaltete Quelle setzt. Erfordert Claude Code v2.1.282 oder später

259 261 

260<h4 id="keep-cowork-folder-access-when-only-managed-rules-apply">262<h4 id="keep-cowork-folder-access-when-only-managed-rules-apply">

261 Behalten Sie den Zugriff auf den Cowork-Ordner, wenn nur verwaltete Regeln gelten263 Behalten Sie den Zugriff auf den Cowork-Ordner, wenn nur verwaltete Regeln gelten


361Einige Durchsetzungsschlüssel werden nicht verworfen, wenn sie ungültig sind. Claude Code setzt einen strengeren Fallback durch, bis der Wert behoben ist; die Tabelle zeigt, was es für jeden Schlüssel durchsetzt:363Einige Durchsetzungsschlüssel werden nicht verworfen, wenn sie ungültig sind. Claude Code setzt einen strengeren Fallback durch, bis der Wert behoben ist; die Tabelle zeigt, was es für jeden Schlüssel durchsetzt:

362 364 

363| Feld | Verhalten bei Vorhandensein, aber ungültig |365| Feld | Verhalten bei Vorhandensein, aber ungültig |

364| :---------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |366| :---------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

365| `allowedMcpServers` | Wird als leere Zulassungsliste durchgesetzt, bis der Wert behoben ist, sodass keine MCP-Server, die Benutzer hinzufügen, zugelassen werden. Server, die Ihre Organisation über [`managedMcpServers`](/docs/de/settings-reference#managedmcpservers) bereitstellt, werden weiterhin geladen, und `managed-mcp.json`-Server werden gemäß [Wie ein Server bewertet wird](/docs/de/managed-mcp#how-a-server-is-evaluated) geladen. Ein einzelner ungültiger Eintrag wird entfernt und die gültige Teilmenge wird durchgesetzt. |367| `allowedMcpServers` | Wird als leere Zulassungsliste durchgesetzt, bis der Wert behoben ist, sodass keine MCP-Server, die Benutzer hinzufügen, zugelassen werden. Server, die Ihre Organisation über [`managedMcpServers`](/docs/de/settings-reference#managedmcpservers) bereitstellt, werden weiterhin geladen, und `managed-mcp.json`-Server werden gemäß [Wie ein Server bewertet wird](/docs/de/managed-mcp#how-a-server-is-evaluated) geladen. Ein einzelner ungültiger Eintrag wird entfernt und die gültige Teilmenge wird durchgesetzt. |

366| `allowedHttpHookUrls` | Claude Code setzt eine leere verwaltete [Zulassungsliste](/docs/de/settings-reference#allowedhttphookurls) durch, bis Sie den Wert beheben, sodass ein HTTP-Hook nur ausgeführt wird, wenn eine andere Einstellungsdatei seine URL auflistet. Wenn nur ein einzelner Eintrag ungültig ist, entfernt Claude Code diesen Eintrag und setzt den Rest durch. |368| `allowedHttpHookUrls` | Claude Code setzt eine leere verwaltete [Zulassungsliste](/docs/de/settings-reference#allowedhttphookurls) durch, bis Sie den Wert beheben, sodass ein HTTP-Hook nur ausgeführt wird, wenn eine andere Einstellungsdatei seine URL auflistet. Wenn nur ein einzelner Eintrag ungültig ist, entfernt Claude Code diesen Eintrag und setzt den Rest durch. |

367| `httpHookAllowedEnvVars` | Claude Code setzt eine leere verwaltete [Zulassungsliste](/docs/de/settings-reference#httphookallowedenvvars) durch, bis Sie den Wert beheben, sodass eine Header-Variable nur interpoliert wird, wenn eine andere Einstellungsdatei sie benennt. Wenn nur ein einzelner Eintrag ungültig ist, entfernt Claude Code diesen Eintrag und setzt den Rest durch. |369| `httpHookAllowedEnvVars` | Claude Code setzt eine leere verwaltete [Zulassungsliste](/docs/de/settings-reference#httphookallowedenvvars) durch, bis Sie den Wert beheben, sodass eine Header-Variable nur interpoliert wird, wenn eine andere Einstellungsdatei sie benennt. Wenn nur ein einzelner Eintrag ungültig ist, entfernt Claude Code diesen Eintrag und setzt den Rest durch. |

368| `allowedChannelPlugins` | Claude Code setzt eine leere Zulassungsliste durch, bis Sie den Wert beheben, sodass kein an `--channels` übergebenes Channel-Plugin zugelassen wird. Wenn nur ein einzelner Eintrag ungültig ist, entfernt es diesen Eintrag und setzt den Rest durch. |370| `allowedChannelPlugins` | Claude Code setzt eine leere Zulassungsliste durch, bis Sie den Wert beheben, sodass kein an `--channels` übergebenes Channel-Plugin zugelassen wird. Wenn nur ein einzelner Eintrag ungültig ist, entfernt es diesen Eintrag und setzt den Rest durch. |

369| `strictKnownMarketplaces` | Wird als leere Zulassungsliste durchgesetzt, bis der Wert behoben ist, sodass keine [Marketplace-Quelle](/docs/de/plugin-marketplaces#managed-marketplace-restrictions) zugelassen wird. Ein einzelner Eintrag, der ungültig ist oder nicht durchgesetzt werden kann, wie z. B. ein `hostPattern`-Regex, der nicht kompiliert wird, wird entfernt und die gültige Teilmenge wird durchgesetzt. |371| `strictKnownMarketplaces` | Wird als leere Zulassungsliste durchgesetzt, bis der Wert behoben ist, sodass keine [Marketplace-Quelle](/docs/de/plugins/org#restrict-what-users-can-install) zugelassen wird. Ein einzelner Eintrag, der ungültig ist oder nicht durchgesetzt werden kann, wie z. B. ein `hostPattern`-Regex, der nicht kompiliert wird, wird entfernt und die gültige Teilmenge wird durchgesetzt. |

370| `allowManagedHooksOnly` | Wird als `true` behandelt, bis behoben: Die [Hook-Einschränkungen](/docs/de/settings-reference#allowmanagedhooksonly) gelten und, sofern `disableCommandPluginSources` nicht explizit `false` ist, sind befehlsgesteuerte Plugins deaktiviert. |372| `allowManagedHooksOnly` | Wird als `true` behandelt, bis behoben: Die [Hook-Einschränkungen](/docs/de/settings-reference#allowmanagedhooksonly) gelten und, sofern `disableCommandPluginSources` nicht explizit `false` ist, sind befehlsgesteuerte Plugins deaktiviert. |

371| `allowManagedMcpServersOnly` | Wird als `true` behandelt. |373| `allowManagedMcpServersOnly` | Wird als `true` behandelt. |

372| `disableCommandPluginSources` | Wird als `true` behandelt, sodass befehlsgesteuerte Plugins deaktiviert bleiben, bis der Wert behoben ist. |374| `disableCommandPluginSources` | Wird als `true` behandelt, sodass befehlsgesteuerte Plugins deaktiviert bleiben, bis der Wert behoben ist. |


378| `gatewayInternalNetworks` | Wenn der ungültige Wert von der höchsten verwalteten Quelle auf dem Computer stammt, weigert sich `/login`, jede neue [Cloud-Gateway](/docs/de/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own)-Anmeldung auf diesem Computer, bis der Wert behoben ist. |380| `gatewayInternalNetworks` | Wenn der ungültige Wert von der höchsten verwalteten Quelle auf dem Computer stammt, weigert sich `/login`, jede neue [Cloud-Gateway](/docs/de/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own)-Anmeldung auf diesem Computer, bis der Wert behoben ist. |

379| `crossSessionInbound` | Wird als `refuse`, der restriktivste Wert, behandelt, sodass eingehende [Cross-Session-Nachrichten](/docs/de/cross-session-messaging#control-inbound-messages) abgelehnt werden, bis der Wert behoben ist. Der Entwickler sieht [eine Warnung](/docs/de/errors#crosssessioninbound-must-be-one-of-accept-hold-refuse). |381| `crossSessionInbound` | Wird als `refuse`, der restriktivste Wert, behandelt, sodass eingehende [Cross-Session-Nachrichten](/docs/de/cross-session-messaging#control-inbound-messages) abgelehnt werden, bis der Wert behoben ist. Der Entwickler sieht [eine Warnung](/docs/de/errors#crosssessioninbound-must-be-one-of-accept-hold-refuse). |

380| `deniedMcpServers` | Ein einzelner ungültiger Eintrag wird entfernt und die gültige Teilmenge wird durchgesetzt. Ein vollständig ungültiger Wert wird mit einer Warnung verworfen, da das Ablehnen aller Server Server blockieren würde, die die Richtlinie nie benannt hat. |382| `deniedMcpServers` | Ein einzelner ungültiger Eintrag wird entfernt und die gültige Teilmenge wird durchgesetzt. Ein vollständig ungültiger Wert wird mit einer Warnung verworfen, da das Ablehnen aller Server Server blockieren würde, die die Richtlinie nie benannt hat. |

381| `blockedMarketplaces` | Ein einzelner ungültiger Eintrag wird entfernt und die gültige Teilmenge wird durchgesetzt. Ein Eintrag, der analysiert wird, aber nie übereinstimmen kann, wie z. B. ein `hostPattern`-Regex, der nicht kompiliert wird, wird mit einer Warnung beibehalten. Es blockiert nichts, bis behoben, aber [Marketplace-Einschränkungen](/docs/de/plugin-marketplaces#managed-marketplace-restrictions) bleiben aktiv. Ein vollständig ungültiger Wert wird mit einer Warnung verworfen, da das Blockieren aller Marketplaces Quellen blockieren würde, die die Richtlinie nie benannt hat. |383| `blockedMarketplaces` | Ein einzelner ungültiger Eintrag wird entfernt und die gültige Teilmenge wird durchgesetzt. Ein Eintrag, der analysiert wird, aber nie übereinstimmen kann, wie z. B. ein `hostPattern`-Regex, der nicht kompiliert wird, wird mit einer Warnung beibehalten. Es blockiert nichts, bis behoben, aber [Marketplace-Einschränkungen](/docs/de/plugins/org#restrict-what-users-can-install) bleiben aktiv. Ein vollständig ungültiger Wert wird mit einer Warnung verworfen, da das Blockieren aller Marketplaces Quellen blockieren würde, die die Richtlinie nie benannt hat. |

382| `sandbox.credentials` | Ein behebbarer ungültiger Eintrag wird zu `mode: "deny"` mit einer Warnung herabgestuft; ein nicht behebbarer wird entfernt; gültige Einträge bleiben durchgesetzt. Siehe [ungültige Credential-Einträge](/docs/de/settings-reference#invalid-credential-entries-in-managed-settings) |384| `sandbox.credentials` | Ein behebbarer ungültiger Eintrag wird zu `mode: "deny"` mit einer Warnung herabgestuft; ein nicht behebbarer wird entfernt; gültige Einträge bleiben durchgesetzt. Siehe [ungültige Credential-Einträge](/docs/de/settings-reference#invalid-credential-entries-in-managed-settings) |

383 385 

384`allowedHttpHookUrls` und `httpHookAllowedEnvVars` werden über Einstellungsdateien zusammengeführt, sodass Einträge in Ihren Benutzer-, Projekt- oder lokalen Einstellungen weiterhin gelten, während die verwaltete Liste leer ist.386`allowedHttpHookUrls` und `httpHookAllowedEnvVars` werden über Einstellungsdateien zusammengeführt, sodass Einträge in Ihren Benutzer-, Projekt- oder lokalen Einstellungen weiterhin gelten, während die verwaltete Liste leer ist.


402Die Tabelle behandelt die Berechtigungs-, Plugin- und Liefersteuerelemente. Für jeden Schlüssel, der hier nicht aufgelistet ist, sagt die Spalte „Scope" der [Einstellungsreferenz](/docs/de/settings-reference#all-settings) Index, ob er nur verwaltet ist; die verbleibenden nur verwalteten Schlüssel dort umfassen die Gateway-Anmelde-URL, Version, Browser, Mobile-Simulator, SSH-Host, Desktop-Lokalsitzung, Sandbox-Binärpfad, Modellpreisgestaltung und CLAUDE.md-Steuerelemente.404Die Tabelle behandelt die Berechtigungs-, Plugin- und Liefersteuerelemente. Für jeden Schlüssel, der hier nicht aufgelistet ist, sagt die Spalte „Scope" der [Einstellungsreferenz](/docs/de/settings-reference#all-settings) Index, ob er nur verwaltet ist; die verbleibenden nur verwalteten Schlüssel dort umfassen die Gateway-Anmelde-URL, Version, Browser, Mobile-Simulator, SSH-Host, Desktop-Lokalsitzung, Sandbox-Binärpfad, Modellpreisgestaltung und CLAUDE.md-Steuerelemente.

403 405 

404| Einstellung | Beschreibung |406| Einstellung | Beschreibung |

405| :-------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |407| :-------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

406| [`allowAllClaudeAiMcps`](/docs/de/settings-reference#allowallclaudeaimcps) | Laden Sie die claude.ai-Konnektoren, die Claude Code selbst abruft, neben einer bereitgestellten `managed-mcp.json`, anstatt sie zu unterdrücken |408| [`allowAllClaudeAiMcps`](/docs/de/settings-reference#allowallclaudeaimcps) | Laden Sie die claude.ai-Konnektoren, die Claude Code selbst abruft, neben einer bereitgestellten `managed-mcp.json`, anstatt sie zu unterdrücken |

407| [`allowedChannelPlugins`](/docs/de/settings-reference#allowedchannelplugins) | Zulassungsliste von Channel-Plugins, die Nachrichten schieben dürfen. Ersetzt die Standard-Anthropic-Zulassungsliste, wenn gesetzt. Erfordert `channelsEnabled: true`. Siehe [Beschränken Sie, welche Channel-Plugins ausgeführt werden können](/docs/de/channels#restrict-which-channel-plugins-can-run) |409| [`allowedChannelPlugins`](/docs/de/settings-reference#allowedchannelplugins) | Zulassungsliste von Channel-Plugins, die Nachrichten schieben dürfen. Ersetzt die Standard-Anthropic-Zulassungsliste, wenn gesetzt. Erfordert `channelsEnabled: true`. Siehe [Beschränken Sie, welche Channel-Plugins ausgeführt werden können](/docs/de/channels#restrict-which-channel-plugins-can-run) |

408| [`allowManagedHooksOnly`](/docs/de/settings-reference#allowmanagedhooksonly) | Wenn `true`, beschränkt, welche Hooks ausgeführt werden; siehe [was unter `allowManagedHooksOnly` ausgeführt wird](/docs/de/settings-reference#what-runs-under-allowmanagedhooksonly) für die vollständige Effektliste |410| [`allowManagedHooksOnly`](/docs/de/settings-reference#allowmanagedhooksonly) | Wenn `true`, beschränkt, welche Hooks ausgeführt werden; siehe [was unter `allowManagedHooksOnly` ausgeführt wird](/docs/de/settings-reference#what-runs-under-allowmanagedhooksonly) für die vollständige Effektliste |

409| [`allowManagedMcpServersOnly`](/docs/de/settings-reference#allowmanagedmcpserversonly) | Wenn `true`, werden nur `allowedMcpServers` aus verwalteten Einstellungen beachtet. `deniedMcpServers` führt immer noch aus allen Quellen zusammen. Siehe [Schlüssel, die von jeder Admin-Quelle gelesen werden](#keys-read-from-every-admin-source) für welche verwalteten Quellen es setzen können, und [Verwaltete MCP-Konfiguration](/docs/de/managed-mcp) |411| [`allowManagedMcpServersOnly`](/docs/de/settings-reference#allowmanagedmcpserversonly) | Wenn `true`, werden nur `allowedMcpServers` aus verwalteten Einstellungen beachtet. `deniedMcpServers` führt immer noch aus allen Quellen zusammen. Siehe [Schlüssel, die von jeder Admin-Quelle gelesen werden](#keys-read-from-every-admin-source) für welche verwalteten Quellen es setzen können, und [Verwaltete MCP-Konfiguration](/docs/de/managed-mcp) |

410| [`allowManagedPermissionRulesOnly`](/docs/de/settings-reference#allowmanagedpermissionrulesonly) | Macht verwaltete Einstellungen zur einzigen Einstellungsquelle von Berechtigungsregeln. Der Eintrag listet jede Quelle auf, die er ignoriert |412| [`allowManagedPermissionRulesOnly`](/docs/de/settings-reference#allowmanagedpermissionrulesonly) | Macht verwaltete Einstellungen zur einzigen Einstellungsquelle von Berechtigungsregeln. Der Eintrag listet jede Quelle auf, die er ignoriert |

411| [`blockedMarketplaces`](/docs/de/settings-reference#blockedmarketplaces) | Blockliste von Marktplatzquellen. Blockierte Quellen werden vor dem Download überprüft, daher berühren sie niemals das Dateisystem. Siehe [verwaltete Marktplatz-Einschränkungen](/docs/de/plugin-marketplaces#managed-marketplace-restrictions) |413| [`blockedMarketplaces`](/docs/de/settings-reference#blockedmarketplaces) | Blockliste von Marktplatzquellen. Blockierte Quellen werden vor dem Download überprüft, daher berühren sie niemals das Dateisystem. Siehe [verwaltete Marktplatz-Einschränkungen](/docs/de/plugins/org#restrict-what-users-can-install) |

412| [`channelsEnabled`](/docs/de/settings-reference#channelsenabled) | Erlauben Sie [Kanäle](/docs/de/channels) für die Organisation. Siehe [Enterprise-Steuerelemente](/docs/de/channels#enterprise-controls) für die Standardeinstellung auf jedem Plan |414| [`channelsEnabled`](/docs/de/settings-reference#channelsenabled) | Erlauben Sie [Kanäle](/docs/de/channels) für die Organisation. Siehe [Enterprise-Steuerelemente](/docs/de/channels#enterprise-controls) für die Standardeinstellung auf jedem Plan |

413| [`disableCommandPluginSources`](/docs/de/settings-reference#disablecommandpluginsources) | Wenn `true`, blockiert [`command`-Plugin-Quellen](/docs/de/plugin-marketplaces#command-sources) vollständig, daher wird der vom Marktplatz deklarierte Befehl nie ausgeführt. Blockiert auch Marktplatz-[`headersHelper`-Befehle](/docs/de/plugin-marketplaces#authenticate-archive-downloads), außer für einen Marktplatz, den verwaltete Einstellungen selbst deklarieren. Wenn nicht gesetzt, folgt `allowManagedHooksOnly`. Erfordert Claude Code v2.1.229 oder später, und der `headersHelper`-Block erfordert v2.1.238 oder später |415| [`disableCommandPluginSources`](/docs/de/settings-reference#disablecommandpluginsources) | Wenn `true`, blockiert [`command`-Plugin-Quellen](/docs/de/plugins/marketplace-reference#command-plugin-source) vollständig, daher wird der vom Marktplatz deklarierte Befehl nie ausgeführt. Blockiert auch Marktplatz-[`headersHelper`-Befehle](/docs/de/plugins/host-marketplace#authenticate-archive-downloads), außer für einen Marktplatz, den verwaltete Einstellungen selbst deklarieren. Wenn nicht gesetzt, folgt `allowManagedHooksOnly`. Erfordert Claude Code v2.1.229 oder später, und der `headersHelper`-Block erfordert v2.1.238 oder später |

414| [`disableSideloadFlags`](/docs/de/settings-reference#disablesideloadflags) | Lehnen Sie die Flags `--plugin-dir`, `--plugin-url`, `--agents` und `--mcp-config` beim Start ab. In Cloud-Sitzungen löscht Claude Code die MCP-Server, die der Server durch `--mcp-config` bereitgestellt hat, mit Ausnahme von In-Process-`type: "sdk"`-Einträgen, und startet die Sitzung. Erfordert Claude Code v2.1.193 oder später |416| [`disableSideloadFlags`](/docs/de/settings-reference#disablesideloadflags) | Lehnen Sie die Flags `--plugin-dir`, `--plugin-url`, `--agents` und `--mcp-config` beim Start ab. In Cloud-Sitzungen löscht Claude Code die MCP-Server, die der Server durch `--mcp-config` bereitgestellt hat, mit Ausnahme von In-Process-`type: "sdk"`-Einträgen, und startet die Sitzung. Erfordert Claude Code v2.1.193 oder später |

415| [`forceRemoteSettingsRefresh`](/docs/de/settings-reference#forceremotesettingsrefresh) | Wenn `true`, blockiert CLI-Start, bis remote verwaltete Einstellungen frisch abgerufen werden, und beendet, wenn der Abruf fehlschlägt. Siehe [Fail-Closed-Durchsetzung](/docs/de/server-managed-settings#enforce-fail-closed-startup) |417| [`forceRemoteSettingsRefresh`](/docs/de/settings-reference#forceremotesettingsrefresh) | Wenn `true`, blockiert CLI-Start, bis remote verwaltete Einstellungen frisch abgerufen werden, und beendet, wenn der Abruf fehlschlägt. Siehe [Fail-Closed-Durchsetzung](/docs/de/server-managed-settings#enforce-fail-closed-startup) |

416| [`managedMcpServers`](/docs/de/settings-reference#managedmcpservers) | Remote-MCP-Server, die jedem Benutzer neben ihren eigenen bereitgestellt werden. Es stellt Server bereit, anstatt etwas zu sperren. Siehe [Stellen Sie Server durch verwaltete Einstellungen bereit](/docs/de/managed-mcp#provide-servers-through-managed-settings). Erfordert Claude Code v2.1.259 oder später |418| [`managedMcpServers`](/docs/de/settings-reference#managedmcpservers) | Remote-MCP-Server, die jedem Benutzer neben ihren eigenen bereitgestellt werden. Es stellt Server bereit, anstatt etwas zu sperren. Siehe [Stellen Sie Server durch verwaltete Einstellungen bereit](/docs/de/managed-mcp#provide-servers-through-managed-settings). Erfordert Claude Code v2.1.259 oder später |


421| [`policyHelper`](/docs/de/settings-reference#policyhelper) | Ausführbare Datei, die verwaltete Einstellungen beim Start berechnet; siehe [Berechnen Sie verwaltete Einstellungen mit einem Policy-Helper](/docs/de/settings-reference#policyhelper) |423| [`policyHelper`](/docs/de/settings-reference#policyhelper) | Ausführbare Datei, die verwaltete Einstellungen beim Start berechnet; siehe [Berechnen Sie verwaltete Einstellungen mit einem Policy-Helper](/docs/de/settings-reference#policyhelper) |

422| [`sandbox.filesystem.allowManagedReadPathsOnly`](/docs/de/settings-reference#sandbox-filesystem-allowmanagedreadpathsonly) | Wenn `true`, werden nur `filesystem.allowRead`-Pfade aus verwalteten Einstellungen beachtet. `denyRead` führt immer noch aus allen Quellen zusammen |424| [`sandbox.filesystem.allowManagedReadPathsOnly`](/docs/de/settings-reference#sandbox-filesystem-allowmanagedreadpathsonly) | Wenn `true`, werden nur `filesystem.allowRead`-Pfade aus verwalteten Einstellungen beachtet. `denyRead` führt immer noch aus allen Quellen zusammen |

423| [`sandbox.network.allowManagedDomainsOnly`](/docs/de/settings-reference#sandbox-network-allowmanageddomainsonly) | Beachten Sie nur verwaltete `allowedDomains` und `WebFetch(domain:...)`-Zulassungsregeln; blockieren Sie andere Domänen ohne Eingabeaufforderung |425| [`sandbox.network.allowManagedDomainsOnly`](/docs/de/settings-reference#sandbox-network-allowmanageddomainsonly) | Beachten Sie nur verwaltete `allowedDomains` und `WebFetch(domain:...)`-Zulassungsregeln; blockieren Sie andere Domänen ohne Eingabeaufforderung |

424| [`strictKnownMarketplaces`](/docs/de/settings-reference#strictknownmarketplaces) | Steuert, welche Plugin-Marktplatzquellen Benutzer hinzufügen und Plugins installieren können. Siehe [verwaltete Marktplatz-Einschränkungen](/docs/de/plugin-marketplaces#managed-marketplace-restrictions) |426| [`strictKnownMarketplaces`](/docs/de/settings-reference#strictknownmarketplaces) | Steuert, welche Plugin-Marktplatzquellen Benutzer hinzufügen und Plugins installieren können. Siehe [verwaltete Marktplatz-Einschränkungen](/docs/de/plugins/org#restrict-what-users-can-install) |

425| [`strictPluginOnlyCustomization`](/docs/de/settings-reference#strictpluginonlycustomization) | Blockieren Sie Skills, Agents, Hooks und MCP-Server aus Benutzer- und Projektquellen; `true` sperrt alle vier, ein Array nennt, welche |427| [`strictPluginOnlyCustomization`](/docs/de/settings-reference#strictpluginonlycustomization) | Blockieren Sie Skills, Agents, Hooks und MCP-Server aus Benutzer- und Projektquellen; `true` sperrt alle vier, ein Array nennt, welche |

426| [`wslInheritsWindowsSettings`](/docs/de/settings-reference#wslinheritswindowssettings) | Wenn im HKLM-Registrierungsschlüssel oder einer Datei unter `C:\Program Files\ClaudeCode` gesetzt, lassen Sie WSL die Windows-Richtlinienkette lesen und lesen Sie `/etc/claude-code` nur, wenn keine verwaltete Einstellungsdatei oder Drop-in unter diesem Verzeichnis einen [Richtlinienschlüssel](#how-claude-code-combines-managed-sources) bereitstellt; der Eintrag gibt die Reihenfolge |428| [`wslInheritsWindowsSettings`](/docs/de/settings-reference#wslinheritswindowssettings) | Wenn im HKLM-Registrierungsschlüssel oder einer Datei unter `C:\Program Files\ClaudeCode` gesetzt, lassen Sie WSL die Windows-Richtlinienkette lesen und lesen Sie `/etc/claude-code` nur, wenn keine verwaltete Einstellungsdatei oder Drop-in unter diesem Verzeichnis einen [Richtlinienschlüssel](#how-claude-code-combines-managed-sources) bereitstellt; der Eintrag gibt die Reihenfolge |

427 429 

mcp.md +17 −17

Details

50 Wenn die Installation fehlschlägt, beachten Sie die Meldung, die Claude Code meldet:50 Wenn die Installation fehlschlägt, beachten Sie die Meldung, die Claude Code meldet:

51 51 

52 * `Marketplace "claude-plugins-official" nicht gefunden`: Fügen Sie den Marketplace mit `/plugin marketplace add anthropics/claude-plugins-official` hinzu und versuchen Sie dann die Installation erneut.52 * `Marketplace "claude-plugins-official" nicht gefunden`: Fügen Sie den Marketplace mit `/plugin marketplace add anthropics/claude-plugins-official` hinzu und versuchen Sie dann die Installation erneut.

53 * Das Plugin ist [nicht im Marketplace gefunden](/docs/de/discover-plugins#install-plugins): Überprüfen Sie den Plugin-Namen.53 * Das Plugin ist [nicht im Marketplace gefunden](/docs/de/plugins/install#install-a-plugin): Überprüfen Sie den Plugin-Namen.

54 54 

55 Wenn die Installationszusammenfassung `Run /reload-plugins to activate.` meldet, führt Claude Code diesen Befehl dann für Sie aus. Wenn das Neuladen warnt, dass Ihre nächste Nachricht das Gespräch erneut lesen würde, führen Sie `/reload-plugins --force` aus.55 Wenn die Installationszusammenfassung `Run /reload-plugins to activate.` meldet, führt Claude Code diesen Befehl dann für Sie aus. Wenn das Neuladen warnt, dass Ihre nächste Nachricht das Gespräch erneut lesen würde, führen Sie `/reload-plugins --force` aus.

56 </Step>56 </Step>


293 Serverstatus-Detail293 Serverstatus-Detail

294</h4>294</h4>

295 295 

296In `/mcp`, einschließlich des Menüs eines Servers dort, und im [`/plugin`](/docs/de/plugins)-Manager kann ein Remote-HTTP- oder SSE-Server, den Sie zuvor verwendet haben, einen `cached`-Status wie `cached 2h ago · connects on first use · 5 tools` anzeigen. Claude Code lud die Tool-Liste des Servers aus seinem Discovery-Cache, der in einer vorherigen Sitzung gespeichert wurde, anstatt beim Start zu verbinden, und Claude Code verbindet den Server das erste Mal, wenn Claude eines der Tools des Servers aufruft. Die Tools sind ab Ihrer ersten Nachricht verfügbar, daher müssen Sie nichts tun. Der Discovery-Cache und sein `cached`-Status erfordern Claude Code v2.1.221 oder später.296In `/mcp`, einschließlich des Menüs eines Servers dort, und im [`/plugin`](/docs/de/plugins/install)-Manager kann ein Remote-HTTP- oder SSE-Server, den Sie zuvor verwendet haben, einen `cached`-Status wie `cached 2h ago · connects on first use · 5 tools` anzeigen. Claude Code lud die Tool-Liste des Servers aus seinem Discovery-Cache, der in einer vorherigen Sitzung gespeichert wurde, anstatt beim Start zu verbinden, und Claude Code verbindet den Server das erste Mal, wenn Claude eines der Tools des Servers aufruft. Die Tools sind ab Ihrer ersten Nachricht verfügbar, daher müssen Sie nichts tun. Der Discovery-Cache und sein `cached`-Status erfordern Claude Code v2.1.221 oder später.

297 297 

298Der Discovery-Cache ist standardmäßig deaktiviert, es sei denn, ein schrittweiser Rollout hat ihn für Ihr Konto aktiviert. Setzen Sie [`MCP_DISCOVERY_CACHE=1`](/docs/de/env-vars), um ihn einzuschalten, oder `0`, um ihn ausgeschaltet zu halten, auch wenn der Rollout ihn aktiviert hat. Vor v2.1.238 war der Cache standardmäßig aktiviert.298Der Discovery-Cache ist standardmäßig deaktiviert, es sei denn, ein schrittweiser Rollout hat ihn für Ihr Konto aktiviert. Setzen Sie [`MCP_DISCOVERY_CACHE=1`](/docs/de/env-vars), um ihn einzuschalten, oder `0`, um ihn ausgeschaltet zu halten, auch wenn der Rollout ihn aktiviert hat. Vor v2.1.238 war der Cache standardmäßig aktiviert.

299 299 


312* Für einen Server im lokalen, Projekt- oder Benutzer-[Bereich](#mcp-installation-scopes) oder in verwalteter MCP-Konfiguration zeigt der Ursprung den Host, wie er in dieser Konfiguration geschrieben ist, daher wird eine `${VAR}`-Referenz im Host nicht in der Nachricht erweitert.312* Für einen Server im lokalen, Projekt- oder Benutzer-[Bereich](#mcp-installation-scopes) oder in verwalteter MCP-Konfiguration zeigt der Ursprung den Host, wie er in dieser Konfiguration geschrieben ist, daher wird eine `${VAR}`-Referenz im Host nicht in der Nachricht erweitert.

313* Bei einem Fehler ohne Status oder Fehlercode zeigt Claude Code den Fehlertext ohne den Ursprung.313* Bei einem Fehler ohne Status oder Fehlercode zeigt Claude Code den Fehlertext ohne den Ursprung.

314 314 

315Ein Remote-Server, dessen Konfiguration eine leere `url` hat, wird in `/mcp`, in `claude mcp list` und im [`/plugin`](/docs/de/plugins)-Manager als `not configured` angezeigt, und Claude Code versucht nicht, sich damit zu verbinden. Ein Plugin kann einen Platzhalter-Eintrag wie diesen für einen Connector enthalten, den Sie später konfigurieren, sodass Claude Code ihn nicht als Fehler oder Setup-Problem meldet. Die Detailansicht des Servers in `/mcp` liest `No URL configured for this server`; setzen Sie die `url` des Eintrags, um sich zu verbinden. Vor v2.1.208 meldete Claude Code eine leere `url` als Konfigurationsproblem mit einer Aufforderung zur Wiederverbindung.315Ein Remote-Server, dessen Konfiguration eine leere `url` hat, wird in `/mcp`, in `claude mcp list` und im [`/plugin`](/docs/de/plugins/install)-Manager als `not configured` angezeigt, und Claude Code versucht nicht, sich damit zu verbinden. Ein Plugin kann einen Platzhalter-Eintrag wie diesen für einen Connector enthalten, den Sie später konfigurieren, sodass Claude Code ihn nicht als Fehler oder Setup-Problem meldet. Die Detailansicht des Servers in `/mcp` liest `No URL configured for this server`; setzen Sie die `url` des Eintrags, um sich zu verbinden. Vor v2.1.208 meldete Claude Code eine leere `url` als Konfigurationsproblem mit einer Aufforderung zur Wiederverbindung.

316 316 

317<h4 id="configuration-warnings">317<h4 id="configuration-warnings">

318 Konfigurationswarnungen318 Konfigurationswarnungen


466 466 

467Ein Pro-Server-`timeout` von mindestens 1000 fungiert auch als Untergrenze für das unten beschriebene Idle-Timeout: Claude Code bricht die Tool-Aufrufe dieses Servers niemals wegen Untätigkeit früher ab als das Pro-Server-`timeout`. Erfordert Claude Code v2.1.203 oder später.467Ein Pro-Server-`timeout` von mindestens 1000 fungiert auch als Untergrenze für das unten beschriebene Idle-Timeout: Claude Code bricht die Tool-Aufrufe dieses Servers niemals wegen Untätigkeit früher ab als das Pro-Server-`timeout`. Erfordert Claude Code v2.1.203 oder später.

468 468 

469Ein Tool-Aufruf an einen MCP-Server, der für das Idle-Fenster keine Antwort und keine Fortschrittsbenachrichtigung sendet, bricht mit einem Fehler ab, anstatt auf die Wanduhr-Grenze zu warten. Das Idle-Timeout erfordert Claude Code v2.1.187 oder später. Es gilt für jeden Server-Typ außer IDE-Servern und SDK-In-Process-Servern. Das Idle-Fenster beträgt standardmäßig fünf Minuten für HTTP-, SSE-, WebSocket- und [claude.ai-Connector](#use-mcp-servers-from-claude-ai)-Server und 30 Minuten für Stdio-Server. Vor v2.1.203 waren Stdio-Server vom Idle-Timeout ausgenommen.469Ein Tool-Aufruf an einen MCP-Server, der für das Idle-Fenster keine Antwort und keine Fortschrittsbenachrichtigung sendet, bricht mit einem Fehler ab, anstatt auf die Wanduhr-Grenze zu warten. Das Idle-Timeout gilt für jeden Server-Typ außer IDE-Servern und SDK-In-Process-Servern. Das Idle-Fenster beträgt standardmäßig fünf Minuten für HTTP-, SSE-, WebSocket- und [claude.ai-Connector](#use-mcp-servers-from-claude-ai)-Server und 30 Minuten für Stdio-Server. Vor v2.1.203 waren Stdio-Server vom Idle-Timeout ausgenommen.

470 470 

471Setzen Sie die Umgebungsvariable [`CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT`](/docs/de/env-vars) in Millisekunden, um das Idle-Fenster zu ändern, oder setzen Sie sie auf `0`, um die Überprüfung zu deaktivieren.471Setzen Sie die Umgebungsvariable [`CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT`](/docs/de/env-vars) in Millisekunden, um das Idle-Fenster zu ändern, oder setzen Sie sie auf `0`, um die Überprüfung zu deaktivieren.

472 472 


494 Von Plugins bereitgestellte MCP-Server494 Von Plugins bereitgestellte MCP-Server

495</h3>495</h3>

496 496 

497[Plugins](/docs/de/plugins) können MCP-Server bündeln, die Tools und Integrationen bereitstellen, wenn Sie das Plugin aktivieren. Plugin-MCP-Server funktionieren identisch mit benutzerkonfigurierten Servern.497[Plugins](/docs/de/plugins/overview) können MCP-Server bündeln, die Tools und Integrationen bereitstellen, wenn Sie das Plugin aktivieren. Plugin-MCP-Server funktionieren identisch mit benutzerkonfigurierten Servern.

498 498 

499**Wie Plugin-MCP-Server funktionieren**:499**Wie Plugin-MCP-Server funktionieren**:

500 500 


539 539 

540* **Automatischer Lebenszyklus**: Server verbinden und trennen sich an diesen Punkten:540* **Automatischer Lebenszyklus**: Server verbinden und trennen sich an diesen Punkten:

541 * Beim Sitzungsstart verbindet Claude Code die Server für aktivierte Plugins automatisch. In `/mcp` kann ein Remote-HTTP- oder SSE-Plugin-Server, den Sie zuvor verwendet haben, den [`cached`-Status](#server-status-detail) statt anzeigen; Claude Code verbindet ihn, wenn Claude eines seiner Tools zum ersten Mal aufruft541 * Beim Sitzungsstart verbindet Claude Code die Server für aktivierte Plugins automatisch. In `/mcp` kann ein Remote-HTTP- oder SSE-Plugin-Server, den Sie zuvor verwendet haben, den [`cached`-Status](#server-status-detail) statt anzeigen; Claude Code verbindet ihn, wenn Claude eines seiner Tools zum ersten Mal aufruft

542 * Wenn Sie ein Plugin während einer Sitzung aktivieren oder deaktivieren, verbindet Claude Code seine MCP-Server oder trennt sie, wenn die Änderung angewendet wird. [Plugin-Änderungen ohne Neustart anwenden](/docs/de/discover-plugins#apply-plugin-changes-without-restarting) beschreibt, wann das ist. In einer Sitzung ohne interaktives Terminal verbindet oder trennt `/reload-plugins` Plugin-MCP-Server nicht; diese Änderungen treten in Ihrer nächsten Sitzung in Kraft542 * Wenn Sie ein Plugin während einer Sitzung aktivieren oder deaktivieren, verbindet Claude Code seine MCP-Server oder trennt sie, wenn die Änderung angewendet wird. [Plugin-Änderungen ohne Neustart anwenden](/docs/de/plugins/cli-reference#reload-plugins) beschreibt, wann das ist. In einer Sitzung ohne interaktives Terminal verbindet oder trennt `/reload-plugins` Plugin-MCP-Server nicht; diese Änderungen treten in Ihrer nächsten Sitzung in Kraft

543 * Wenn Sie neu laden, behält Claude Code die Live-Verbindungen von Plugin-Servern, deren Konfiguration unverändert ist, und macht das gleiche, wenn Sie [die MCP-Server-Liste der Sitzung](/docs/de/agent-sdk/typescript#mcpsetserversresult) vom Agent SDK ersetzen, ohne sie zu benennen543 * Wenn Sie neu laden, behält Claude Code die Live-Verbindungen von Plugin-Servern, deren Konfiguration unverändert ist, und macht das gleiche, wenn Sie [die MCP-Server-Liste der Sitzung](/docs/de/agent-sdk/typescript#mcpsetserversresult) vom Agent SDK ersetzen, ohne sie zu benennen

544 * Wenn Sie die Sitzung mit `/cd` [in ein anderes Verzeichnis verschieben](/docs/de/permissions#move-the-session-to-another-directory) bei v2.1.246 oder später, verbindet Claude Code die Server von Plugins, die die Einstellungen des neuen Verzeichnisses aktivieren, und trennt die Server von Plugins, die nicht mehr aktiviert sind, daher müssen Sie `/reload-plugins` nach der Verschiebung nicht ausführen544 * Wenn Sie die Sitzung mit `/cd` [in ein anderes Verzeichnis verschieben](/docs/de/permissions#move-the-session-to-another-directory) bei v2.1.246 oder später, verbindet Claude Code die Server von Plugins, die die Einstellungen des neuen Verzeichnisses aktivieren, und trennt die Server von Plugins, die nicht mehr aktiviert sind, daher müssen Sie `/reload-plugins` nach der Verschiebung nicht ausführen

545 * In [Web-Sitzungen](/docs/de/claude-code-on-the-web) startet ein MCP-Aufruf an einen Plugin-Server, der noch nicht verbunden ist, wie direkt nach einer Idle-Sitzung, die aufwacht, den Server bei Bedarf und wartet auf die Verbindung545 * In [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) startet ein MCP-Aufruf an einen Plugin-Server, der noch nicht verbunden ist, wie direkt nach einer Idle-Sitzung, die aufwacht, den Server bei Bedarf und wartet auf die Verbindung

546* **Pfad-Platzhalter**: `${CLAUDE_PLUGIN_ROOT}` wird in das Installationsverzeichnis des Plugins aufgelöst, `${CLAUDE_PLUGIN_DATA}` in sein [persistentes Zustandsverzeichnis](/docs/de/plugins-reference#persistent-data-directory), und `${CLAUDE_PROJECT_DIR}` in das stabile Projektstammverzeichnis. Die Substitution gilt für:546* **Pfad-Platzhalter**: `${CLAUDE_PLUGIN_ROOT}` wird in das Installationsverzeichnis des Plugins aufgelöst, `${CLAUDE_PLUGIN_DATA}` in sein [persistentes Zustandsverzeichnis](/docs/de/plugins/components#path-variables-and-persistent-data), und `${CLAUDE_PROJECT_DIR}` in das stabile Projektstammverzeichnis. Die Substitution gilt für:

547 * `stdio`-Server: `command`, `args`, `env`547 * `stdio`-Server: `command`, `args`, `env`

548 * `http`-, `sse`- und `ws`-Server: `url`, `headers` und `headersHelper`. Vor v2.1.195 übergab `headersHelper` den Platzhalter als Literal-String548 * `http`-, `sse`- und `ws`-Server: `url`, `headers` und `headersHelper`. Vor v2.1.195 übergab `headersHelper` den Platzhalter als Literal-String

549* **Zugriff auf Benutzerumgebung**: Zugriff auf die gleichen Umgebungsvariablen wie manuell konfigurierte Server549* **Zugriff auf Benutzerumgebung**: Zugriff auf die gleichen Umgebungsvariablen wie manuell konfigurierte Server


563 563 

564Der Server selbst registriert sich unter dem scoped Namen `plugin:<plugin-name>:<server-name>`, wie `plugin:my-plugin:database-tools`. Verwenden Sie diesen Namen, wo ein konfigurierter Server-Name erwartet wird, wie das [`server`-Feld eines `mcp_tool`-Hooks](/docs/de/hooks#mcp-tool-hook-fields).564Der Server selbst registriert sich unter dem scoped Namen `plugin:<plugin-name>:<server-name>`, wie `plugin:my-plugin:database-tools`. Verwenden Sie diesen Namen, wo ein konfigurierter Server-Name erwartet wird, wie das [`server`-Feld eines `mcp_tool`-Hooks](/docs/de/hooks#mcp-tool-hook-fields).

565 565 

566Siehe die [Plugin-Komponenten-Referenz](/docs/de/plugins-reference#mcp-servers) für Details zum Bündeln von MCP-Servern mit Plugins.566Siehe die [Plugin-Komponenten-Referenz](/docs/de/plugins/components#mcp-servers) für Details zum Bündeln von MCP-Servern mit Plugins.

567 567 

568<h2 id="mcp-installation-scopes">568<h2 id="mcp-installation-scopes">

569 MCP-Installationsbereiche569 MCP-Installationsbereiche


6661. Lokaler Bereich6661. Lokaler Bereich

6672. Projektbereich6672. Projektbereich

6683. Benutzerbereich6683. Benutzerbereich

6694. [Von Plugins bereitgestellte Server](/docs/de/plugins)6694. [Von Plugins bereitgestellte Server](/docs/de/plugins/components#mcp-servers)

6705. [claude.ai-Connectoren](#use-mcp-servers-from-claude-ai)6705. [claude.ai-Connectoren](#use-mcp-servers-from-claude-ai)

671 671 

672Die drei Bereiche stimmen Duplikate nach Name ab. Plugins und Connectoren stimmen nach Endpunkt ab, daher wird einer, der auf die gleiche URL oder den gleichen Befehl wie ein Server oben verweist, als Duplikat behandelt.672Die drei Bereiche stimmen Duplikate nach Name ab. Plugins und Connectoren stimmen nach Endpunkt ab, daher wird einer, der auf die gleiche URL oder den gleichen Befehl wie ein Server oben verweist, als Duplikat behandelt.


876 Authentifizieren Sie sich über die Befehlszeile876 Authentifizieren Sie sich über die Befehlszeile

877</h3>877</h3>

878 878 

879Ab v2.1.186 führt `claude mcp login <name>` den OAuth-Fluss eines konfigurierten Servers direkt aus Ihrer Shell aus, sodass Sie das `/mcp`-Panel nicht innerhalb einer Sitzung öffnen müssen.879Der Befehl `claude mcp login <name>` führt den OAuth-Fluss eines konfigurierten Servers direkt aus Ihrer Shell aus, sodass Sie das `/mcp`-Panel nicht innerhalb einer Sitzung öffnen müssen.

880 880 

881```bash theme={null}881```bash theme={null}

882claude mcp login sentry882claude mcp login sentry


884 884 

885Um gespeicherte Anmeldedaten später zu löschen, führen Sie `claude mcp logout <name>` aus.885Um gespeicherte Anmeldedaten später zu löschen, führen Sie `claude mcp logout <name>` aus.

886 886 

887Ab v2.1.191 erkennt der Befehl, wenn kein lokaler Browser verfügbar ist, z. B. während einer SSH-Sitzung oder unter Linux ohne Display-Server, und gibt die Autorisierungs-URL aus, anstatt zu versuchen, einen Browser zu öffnen. Öffnen Sie die URL auf Ihrem lokalen Computer und fügen Sie dann die vollständige Umleitungs-URL aus der Adressleiste Ihres Browsers an der Eingabeaufforderung ein. Der Befehl benötigt ein interaktives Terminal für den Einfügungsschritt, daher verbinden Sie sich mit `ssh -t`. Übergeben Sie `--no-browser`, um die URL-Eingabeaufforderung zu erzwingen, auch wenn ein lokaler Browser erkannt wird.887`claude mcp login` erkennt, wenn kein lokaler Browser verfügbar ist, z. B. während einer SSH-Sitzung oder unter Linux ohne Display-Server, und gibt die Autorisierungs-URL aus, anstatt zu versuchen, einen Browser zu öffnen. Öffnen Sie die URL auf Ihrem lokalen Computer und fügen Sie dann die vollständige Umleitungs-URL aus der Adressleiste Ihres Browsers an der Eingabeaufforderung ein. Der Befehl benötigt ein interaktives Terminal für den Einfügungsschritt, daher verbinden Sie sich mit `ssh -t`. Übergeben Sie `--no-browser`, um die URL-Eingabeaufforderung zu erzwingen, auch wenn ein lokaler Browser erkannt wird.

888 888 

889```bash theme={null}889```bash theme={null}

890claude mcp login sentry --no-browser890claude mcp login sentry --no-browser


1085Claude Code setzt diese Umgebungsvariablen beim Ausführen des Helpers:1085Claude Code setzt diese Umgebungsvariablen beim Ausführen des Helpers:

1086 1086 

1087| Variable | Wert |1087| Variable | Wert |

1088| :---------------------------- | :------------------------------------------------------------------------------------------------------------------------------- |1088| :---------------------------- | :-------------------------------------------------------------------------------------------------------------------------------- |

1089| `CLAUDE_CODE_MCP_SERVER_NAME` | der Name des MCP-Servers |1089| `CLAUDE_CODE_MCP_SERVER_NAME` | der Name des MCP-Servers |

1090| `CLAUDE_CODE_MCP_SERVER_URL` | die URL des MCP-Servers |1090| `CLAUDE_CODE_MCP_SERVER_URL` | die URL des MCP-Servers |

1091| `CLAUDE_PLUGIN_ROOT` | das Root-Verzeichnis des Plugins. Wird nur gesetzt, wenn ein [Plugin](/docs/de/plugins-reference#mcp-servers) den Server bereitstellt |1091| `CLAUDE_PLUGIN_ROOT` | das Root-Verzeichnis des Plugins. Wird nur gesetzt, wenn ein [Plugin](/docs/de/plugins/components#mcp-servers) den Server bereitstellt |

1092 1092 

1093Verwenden Sie diese, um ein einzelnes Helper-Skript zu schreiben, das mehrere MCP-Server bedient.1093Verwenden Sie diese, um ein einzelnes Helper-Skript zu schreiben, das mehrere MCP-Server bedient.

1094 1094 

1095Ein von einem Plugin bereitgestellter `headersHelper` kann nicht auf die [`${user_config.*}`](/docs/de/plugins-reference#user-configuration)-Werte des Plugins verweisen, da der Befehl durch eine Shell ausgeführt wird. Claude Code meldet den Server als fehlkonfiguriert mit einem [Fehler](/docs/de/errors#plugin-command-references-user-config) und ersetzt den Wert nicht. Setzen Sie `${user_config.KEY}` stattdessen in das Feld `headers` des Servers, das nicht shell-geparst wird, oder lassen Sie das Helper-Skript den Wert aus einer Konfigurationsdatei lesen. Vor v2.1.207 ersetzte `headersHelper` `${user_config.*}`-Werte.1095Ein von einem Plugin bereitgestellter `headersHelper` kann nicht auf die [`${user_config.*}`](/docs/de/plugins/manifest-reference#user-configuration)-Werte des Plugins verweisen, da der Befehl durch eine Shell ausgeführt wird. Claude Code meldet den Server als fehlkonfiguriert mit einem [Fehler](/docs/de/errors#plugin-command-references-user-config) und ersetzt den Wert nicht. Setzen Sie `${user_config.KEY}` stattdessen in das Feld `headers` des Servers, das nicht shell-geparst wird, oder lassen Sie das Helper-Skript den Wert aus einer Konfigurationsdatei lesen. Vor v2.1.207 ersetzte `headersHelper` `${user_config.*}`-Werte.

1096 1096 

1097<h4 id="where-the-helper-runs">1097<h4 id="where-the-helper-runs">

1098 Wo der Helper ausgeführt wird1098 Wo der Helper ausgeführt wird


1102 1102 

1103| Wo Sie den Server konfiguriert haben | Arbeitsverzeichnis |1103| Wo Sie den Server konfiguriert haben | Arbeitsverzeichnis |

1104| :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------ |1104| :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------ |

1105| Ein [Plugin](/docs/de/plugins-reference#mcp-servers) | Das Root-Verzeichnis des Plugins. Erfordert Claude Code v2.1.195 oder später |1105| Ein [Plugin](/docs/de/plugins/components#mcp-servers) | Das Root-Verzeichnis des Plugins. Erfordert Claude Code v2.1.195 oder später |

1106| Eine Projekt `.mcp.json` oder ein [Local-Scope](#local-scope)-Server | Das Projektverzeichnis, in dem der Server deklariert ist |1106| Eine Projekt `.mcp.json` oder ein [Local-Scope](#local-scope)-Server | Das Projektverzeichnis, in dem der Server deklariert ist |

1107| Eine Agent-Datei in Ihrem Projekt, ein Server aus der SDK-Option `mcpServers` oder der Methode `setMcpServers()`, oder [`--mcp-config`](/docs/de/cli-reference) | Das [primäre Arbeitsverzeichnis](/docs/de/permissions#working-directories) der Sitzung |1107| Eine Agent-Datei in Ihrem Projekt, ein Server aus der SDK-Option `mcpServers` oder der Methode `setMcpServers()`, oder [`--mcp-config`](/docs/de/cli-reference) | Das [primäre Arbeitsverzeichnis](/docs/de/permissions#working-directories) der Sitzung |

1108| [User Scope](#user-scope), [verwaltetes MCP](/docs/de/managed-mcp), ein [claude.ai-Connector](#use-mcp-servers-from-claude-ai), oder eine Agent-Datei von außerhalb Ihres Projekts, einschließlich einer aus einem `--add-dir`-Verzeichnis | Ihr Konfigurationsverzeichnis, `~/.claude` sofern Sie nicht [`CLAUDE_CONFIG_DIR`](/docs/de/env-vars) gesetzt haben |1108| [User Scope](#user-scope), [verwaltetes MCP](/docs/de/managed-mcp), ein [claude.ai-Connector](#use-mcp-servers-from-claude-ai), oder eine Agent-Datei von außerhalb Ihres Projekts, einschließlich einer aus einem `--add-dir`-Verzeichnis | Ihr Konfigurationsverzeichnis, `~/.claude` sofern Sie nicht [`CLAUDE_CONFIG_DIR`](/docs/de/env-vars) gesetzt haben |


1235 </Step>1235 </Step>

1236</Steps>1236</Steps>

1237 1237 

1238Claude Code markiert einen Connector als `managed` in `/mcp` und im [`/plugin`](/docs/de/plugins)-Manager, wenn Ihre Organisation dessen Authentifizierung in claude.ai verwaltet. Der Status „Managed" ändert nicht, wie Claude Code sich mit dem Connector verbindet oder wie die [Tool-Kontrollen](#organization-controls-on-connector-tools) Ihrer Organisation angewendet werden.1238Claude Code markiert einen Connector als `managed` in `/mcp` und im [`/plugin`](/docs/de/plugins/install)-Manager, wenn Ihre Organisation dessen Authentifizierung in claude.ai verwaltet. Der Status „Managed" ändert nicht, wie Claude Code sich mit dem Connector verbindet oder wie die [Tool-Kontrollen](#organization-controls-on-connector-tools) Ihrer Organisation angewendet werden.

1239 1239 

1240Connectors, bei denen Sie sich noch nie angemeldet haben, werden hinter einer Zeile `Show unused connectors` am Ende des claude.ai-Abschnitts ausgeblendet, damit eine von der Organisation bereitgestellte Liste das Panel nicht ausfüllt. Wählen Sie die Zeile aus, um sie zu erweitern. Ein Connector, bei dem Sie sich zuvor angemeldet haben, bleibt sichtbar, auch wenn er derzeit eine erneute Authentifizierung benötigt.1240Connectors, bei denen Sie sich noch nie angemeldet haben, werden hinter einer Zeile `Show unused connectors` am Ende des claude.ai-Abschnitts ausgeblendet, damit eine von der Organisation bereitgestellte Liste das Panel nicht ausfüllt. Wählen Sie die Zeile aus, um sie zu erweitern. Ein Connector, bei dem Sie sich zuvor angemeldet haben, bleibt sichtbar, auch wenn er derzeit eine erneute Authentifizierung benötigt.

1241 1241 

monitoring-usage.md +138 −132

Details

64}64}

65```65```

66 66 

67Claude Code ignoriert die [OpenTelemetry-Exporter-Variablen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) in der `.claude/settings.json` und `.claude/settings.local.json` eines Repositorys, daher kann ein Repository diese nicht verwenden, um Telemetrie einzuschalten, zu wählen, wohin sie geht, oder Inhalte zu erfassen. Setzen Sie sie in verwalteten Einstellungen, oder lassen Sie jeden Entwickler sie in seiner Shell oder `~/.claude/settings.json` setzen. Ein Repository kann ein Signal immer noch ausschalten, indem es seinen Exporter-Selektor, wie `OTEL_LOGS_EXPORTER`, auf `none` setzt, es sei denn, verwaltete Einstellungen, eine `--settings`-Datei oder die Umgebung, aus der Sie Claude Code starten, setzen diese Variable.

68 

67Claude Code übergibt `OTEL_*` Umgebungsvariablen nicht an die Subprozesse, die es erzeugt, einschließlich des Bash-Tools, Hooks, MCP-Server und Sprachserver. Eine OpenTelemetry-instrumentierte Anwendung, die Sie über das Bash-Tool ausführen, erbt nicht den Exporter-Endpunkt oder die Header von Claude Code, daher setzen Sie diese Variablen direkt im Befehl, wenn diese Anwendung ihre eigene Telemetrie exportieren muss.69Claude Code übergibt `OTEL_*` Umgebungsvariablen nicht an die Subprozesse, die es erzeugt, einschließlich des Bash-Tools, Hooks, MCP-Server und Sprachserver. Eine OpenTelemetry-instrumentierte Anwendung, die Sie über das Bash-Tool ausführen, erbt nicht den Exporter-Endpunkt oder die Header von Claude Code, daher setzen Sie diese Variablen direkt im Befehl, wenn diese Anwendung ihre eigene Telemetrie exportieren muss.

68 70 

69<h3 id="how-managed-settings-lock-the-otlp-destination">71<h3 id="how-managed-settings-lock-the-otlp-destination">


101 Allgemeine Konfigurationsvariablen103 Allgemeine Konfigurationsvariablen

102</h3>104</h3>

103 105 

104Diese Variablen konfigurieren Exporter, Endpunkte und Exportverhalten für alle Bereitstellungen. Wenn Sie eine signalspezifische Endpunkt- oder Protokollvariable wie `OTEL_EXPORTER_OTLP_METRICS_ENDPOINT` setzen, verwendet Claude Code diese statt der generischen Variablen für dieses Signal. Wenn Sie eine signalspezifische Header-Variable wie `OTEL_EXPORTER_OTLP_METRICS_HEADERS` setzen, führt Claude Code diese mit der generischen `OTEL_EXPORTER_OTLP_HEADERS` für dieses Signal zusammen. Auf Maschinen mit verwalteten Einstellungen siehe [Wie verwaltete Einstellungen das OTLP-Ziel sperren](#how-managed-settings-lock-the-otlp-destination), um zu sehen, was Claude Code entfernt.106Diese Variablen konfigurieren Exporter, Endpunkte und Exportverhalten für alle Bereitstellungen.

107 

108Wenn Sie eine signalspezifische Endpunkt- oder Protokollvariable wie `OTEL_EXPORTER_OTLP_METRICS_ENDPOINT` setzen, verwendet Claude Code diese statt der generischen Variablen für dieses Signal. Wenn Sie eine signalspezifische Header-Variable wie `OTEL_EXPORTER_OTLP_METRICS_HEADERS` setzen, führt Claude Code diese mit der generischen `OTEL_EXPORTER_OTLP_HEADERS` für dieses Signal zusammen.

109 

110Auf Maschinen mit verwalteten Einstellungen siehe [Wie verwaltete Einstellungen das OTLP-Ziel sperren](#how-managed-settings-lock-the-otlp-destination), um zu sehen, was Claude Code entfernt.

105 111 

106| Umgebungsvariable | Beschreibung | Beispielwerte |112| Umgebungsvariable | Beschreibung | Beispielwerte |

107| --------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |113| --------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |


533| `app.entrypoint` | Wie die Sitzung gestartet wurde, z. B. `cli`, `sdk-cli`, `sdk-ts`, `sdk-py` oder `claude-vscode` | `OTEL_METRICS_INCLUDE_ENTRYPOINT` (Standard: false) |539| `app.entrypoint` | Wie die Sitzung gestartet wurde, z. B. `cli`, `sdk-cli`, `sdk-ts`, `sdk-py` oder `claude-vscode` | `OTEL_METRICS_INCLUDE_ENTRYPOINT` (Standard: false) |

534| `organization.id` | Organisations-UUID (wenn authentifiziert) | Immer enthalten, wenn verfügbar |540| `organization.id` | Organisations-UUID (wenn authentifiziert) | Immer enthalten, wenn verfügbar |

535| `user.account_uuid` | Konto-UUID (wenn authentifiziert) | `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` (Standard: true) |541| `user.account_uuid` | Konto-UUID (wenn authentifiziert) | `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` (Standard: true) |

536| `user.account_id` | Konto-ID im getaggten Format, das den Anthropic-Admin-APIs entspricht (wenn authentifiziert), z. B. `user_01BWBeN28...` | `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` (Standard: true) |542| `user.account_id` | Konto-ID im getaggten Format, das Anthropic-Admin-APIs entspricht (wenn authentifiziert), z. B. `user_01BWBeN28...` | `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` (Standard: true) |

537| `user.id` | Zufällige anonyme Kennung, die beim ersten Ausführen generiert und in `~/.claude.json` gespeichert wird. Sie enthält keine persönlichen Informationen und wird nicht von Ihrem Claude-Konto abgeleitet. Das Löschen der Datei erzeugt beim nächsten Ausführen einen neuen, nicht verwandten Wert. | Immer enthalten |543| `user.id` | Zufällige anonyme Kennung, die beim ersten Ausführen generiert und in `~/.claude.json` gespeichert wird. Sie enthält keine persönlichen Informationen und wird nicht von Ihrem Claude-Konto abgeleitet. Das Löschen der Datei erzeugt beim nächsten Ausführen einen neuen, nicht verwandten Wert. | Immer enthalten |

538| `user.email` | E-Mail-Adresse des Benutzers, von Ihrer Anmeldung oder in einer [Cloud-Sitzung](/docs/de/claude-code-on-the-web) von den Anmeldedaten der Sitzung selbst | Immer enthalten, wenn verfügbar |544| `user.email` | E-Mail-Adresse des Benutzers, von Ihrer Anmeldung oder in einer [Cloud-Sitzung](/docs/de/claude-code-on-the-web) von den Anmeldedaten der Sitzung selbst | Immer enthalten, wenn verfügbar |

539| `terminal.type` | Terminaltyp, z. B. `iTerm.app`, `vscode`, `cursor` oder `tmux` | Immer enthalten, wenn erkannt |545| `terminal.type` | Terminaltyp, z. B. `iTerm.app`, `vscode`, `cursor` oder `tmux` | Immer enthalten, wenn erkannt |


544 550 

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

546 552 

547* `prompt.id`: UUID, die eine Benutzereingabe mit allen nachfolgenden Ereignissen bis zur nächsten Eingabe korreliert. Siehe [Ereigniskorrelationsattribute](#event-correlation-attributes).553* `prompt.id`: UUID, die eine Benutzereingabeaufforderung mit allen nachfolgenden Ereignissen bis zur nächsten Eingabeaufforderung korreliert. Siehe [Ereigniskorrelationsattribute](#event-correlation-attributes).

548* `workspace.host_paths`: Im Desktop-App ausgewählte Host-Arbeitsverzeichnisse als String-Array554* `workspace.host_paths`: Host-Arbeitsverzeichnisse, die in der Desktop-App ausgewählt wurden, als String-Array

549* `workflow.run_id`: Laufkennung mit dem Präfix `wf_` auf den API- und Tool-Ereignissen, die von Agenten ausgegeben werden, die zu einem [Workflow](/docs/de/workflows)-Tool-Lauf gehören. Das Filtern von Ereignissen nach einer `workflow.run_id` rekonstruiert die API-Anfragen und Tool-Ergebnisse dieses Laufs. Die Kennung umfasst die Agenten, die das Workflow-Skript erzeugt, und alle Agenten, die diese wiederum erzeugen, z. B. Skill-Aufrufe. Sie entspricht der Laufkennung, die im Workflow-Tool-Ergebnis gemeldet wird. Fehlt bei allen anderen Ereignissen. Erfordert Claude Code v2.1.202 oder später555* `workflow.run_id`: Laufkennung mit dem Präfix `wf_` auf den API- und Tool-Ereignissen, die von Agenten ausgegeben werden, die zu einem [Workflow](/docs/de/workflows)-Tool-Lauf gehören. Das Filtern von Ereignissen nach einer `workflow.run_id` rekonstruiert die API-Anfragen und Tool-Ergebnisse dieses Laufs. Die Kennung umfasst die Agenten, die das Workflow-Skript erzeugt, und alle Agenten, die diese wiederum erzeugen, z. B. Skill-Aufrufe. Sie entspricht der Laufkennung, die im Workflow-Tool-Ergebnis gemeldet wird. Fehlt bei allen anderen Ereignissen. Erfordert Claude Code v2.1.202 oder später

550* `workflow.name`: Name des Workflows, das `meta.name` des Skripts, ausgegeben zusammen mit `workflow.run_id`. Integrierte Workflow-Namen werden wörtlich angezeigt, wenn der Lauf das unveränderte integrierte Skript ausführt. Benutzerdefinierte Namen, einschließlich bearbeiteter Kopien integrierter Skripte, werden durch `custom` ersetzt, es sei denn, `OTEL_LOG_TOOL_DETAILS=1` ist gesetzt. Erfordert Claude Code v2.1.202 oder später556* `workflow.name`: Name des Workflows, das `meta.name` des Skripts, ausgegeben zusammen mit `workflow.run_id`. Integrierte Workflow-Namen werden wörtlich angezeigt, wenn der Lauf das unveränderte integrierte Skript ausführt. Benutzerdefinierte Namen, einschließlich bearbeiteter Kopien integrierter Skripte, werden durch `custom` ersetzt, es sei denn, `OTEL_LOG_TOOL_DETAILS=1` ist gesetzt. Erfordert Claude Code v2.1.202 oder später

551 557 


558Claude Code leitet diese Attribute einmal pro Sitzung vom `origin`-Remote des Repositorys ab. Die HTTPS- und SSH-Remotes eines Repositorys erzeugen identische Werte:564Claude Code leitet diese Attribute einmal pro Sitzung vom `origin`-Remote des Repositorys ab. Die HTTPS- und SSH-Remotes eines Repositorys erzeugen identische Werte:

559 565 

560| Attribut | Wert |566| Attribut | Wert |

561| ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |567| ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |

562| `vcs.repository.url.full` | Die Browser-URL des Repositorys ohne `.git`, z. B. `https://github.com/example-org/example-repo` |568| `vcs.repository.url.full` | Die Browser-URL des Repositorys ohne `.git`, z. B. `https://github.com/example-org/example-repo` |

563| `vcs.owner.name` | Der Besitzer oder Gruppenpfad, z. B. `example-org`; wird weggelassen, wenn der Remote-Pfad ein einzelnes Segment hat |569| `vcs.owner.name` | Der Besitzer oder Gruppenpfad, z. B. `example-org`; weggelassen, wenn der Remote-Pfad ein einzelnes Segment hat |

564| `vcs.repository.name` | Der bloße Repository-Name, z. B. `example-repo` |570| `vcs.repository.name` | Der bloße Repository-Name, z. B. `example-repo` |

565| `vcs.provider.name` | `github`, `gitlab`, `bitbucket` oder `gitea`, wenn Claude Code den Host oder die URL-Form des Remotes als einen dieser Anbieter erkennt; wird weggelassen, falls nicht |571| `vcs.provider.name` | `github`, `gitlab`, `bitbucket` oder `gitea`, wenn Claude Code den Host oder die URL-Form des Remote als einen dieser Anbieter erkennt; andernfalls weggelassen |

566 572 

567Werte werden in Kleinbuchstaben konvertiert, und Anmeldedaten, Abfragezeichenfolgen und Fragmente aus der Remote-URL erscheinen niemals darin. Die Attribute werden weggelassen, wenn die Sitzung keinen `origin`-Remote hat, wenn der Remote nicht URL-förmig ist, oder wenn das einzige umschließende Repository Ihr Home-Verzeichnis ist.573Werte werden in Kleinbuchstaben konvertiert, und Anmeldedaten, Abfragezeichenfolgen und Fragmente aus der Remote-URL erscheinen niemals darin. Die Attribute werden weggelassen, wenn die Sitzung keinen `origin`-Remote hat, wenn der Remote nicht URL-förmig ist, oder wenn das einzige umschließende Repository Ihr Home-Verzeichnis ist.

568 574 

569Ein `vcs.*`-Schlüssel, den Sie in [`OTEL_RESOURCE_ATTRIBUTES`](#multi-team-organization-support) deklarieren, ersetzt den abgeleiteten Wert für diesen Schlüssel. Wenn Sie `vcs.repository.url.full` deklarieren, liest Claude Code niemals den Remote und meldet nur die Schlüssel, die Sie deklarieren.575Ein `vcs.*`-Schlüssel, den Sie in [`OTEL_RESOURCE_ATTRIBUTES`](#multi-team-organization-support) deklarieren, ersetzt den abgeleiteten Wert für diesen Schlüssel. Wenn Sie `vcs.repository.url.full` deklarieren, liest Claude Code den Remote nie und meldet nur die Schlüssel, die Sie deklarieren.

570 576 

571Die Attribute fließen nur zu Ihren eigenen Exportern; Anthropics Telemetrie verwirft jeden `vcs.*`-Schlüssel.577Die Attribute fließen nur zu Ihren eigenen Exportern; Anthropic's Telemetrie verwirft jeden `vcs.*`-Schlüssel.

572 578 

573<h3 id="metrics">579<h3 id="metrics">

574 Metriken580 Metriken


585| `claude_code.cost.usage` | Kosten der Claude Code-Sitzung | USD |591| `claude_code.cost.usage` | Kosten der Claude Code-Sitzung | USD |

586| `claude_code.token.usage` | Anzahl der verwendeten Token | tokens |592| `claude_code.token.usage` | Anzahl der verwendeten Token | tokens |

587| `claude_code.code_edit_tool.decision` | Anzahl der Genehmigungsentscheidungen für das Code-Bearbeitungs-Tool | keine |593| `claude_code.code_edit_tool.decision` | Anzahl der Genehmigungsentscheidungen für das Code-Bearbeitungs-Tool | keine |

588| `claude_code.active_time.total` | Gesamte aktive Zeit | s |594| `claude_code.active_time.total` | Gesamtaktive Zeit | s |

589 595 

590Wenn `prometheus` der einzige in `OTEL_METRICS_EXPORTER` aufgelistete Exporter ist, lässt Claude Code die Einheiten `USD`, `tokens` und `s` aus den exportierten Metriken weg, damit der Scrape im gültigen Prometheus-Textformat bleibt. Metriknamen ändern sich nicht, und Konfigurationen, die Exporter kombinieren, z. B. `otlp,prometheus`, behalten die Einheiten. Vor v2.1.216 enthielt der Prometheus-Scrape OpenMetrics-only `# UNIT`-Zeilen, die einige Scraper ablehnten.596Wenn `prometheus` der einzige in `OTEL_METRICS_EXPORTER` aufgelistete Exporter ist, lässt Claude Code die Einheiten `USD`, `tokens` und `s` aus den exportierten Metriken weg, damit der Scrape im gültigen Prometheus-Textformat bleibt. Metriknamen ändern sich nicht, und Konfigurationen, die Exporter kombinieren, z. B. `otlp,prometheus`, behalten die Einheiten. Vor v2.1.216 enthielt der Prometheus-Scrape OpenMetrics-only `# UNIT`-Zeilen, die einige Scraper ablehnten.

591 597 

592<h3 id="metric-details">598<h3 id="metric-details">

593 Metrik-Details599 Metrikdetails

594</h3>600</h3>

595 601 

596Jede Metrik enthält die oben aufgelisteten Standardattribute. Metriken mit zusätzlichen kontextspezifischen Attributen werden unten vermerkt.602Jede Metrik enthält die oben aufgelisteten Standardattribute. Metriken mit zusätzlichen kontextspezifischen Attributen werden unten vermerkt.


599 Sitzungszähler605 Sitzungszähler

600</h4>606</h4>

601 607 

602Wird am Anfang jeder Sitzung erhöht.608Wird zu Beginn jeder Sitzung erhöht.

603 609 

604**Attribute**:610**Attribute**:

605 611 

606* Alle [Standardattribute](#standard-attributes)612* Alle [Standardattribute](#standard-attributes)

607* `start_type`: Wie die Sitzung gestartet wurde. Einer von `"fresh"`, `"resume"`, `"continue"` oder `"agents_view"`. Der Wert `"agents_view"` identifiziert den `claude agents`-Dashboard-Prozess, eine von Benutzern gestartete lokale Benutzeroberfläche statt einer Gesprächssitzung. Filtern Sie nach diesem Wert, um UI-Prozessstartvorgänge von Gesprächssitzungen in Ihren Dashboards zu trennen.613* `start_type`: Wie die Sitzung gestartet wurde. Einer von `"fresh"`, `"resume"`, `"continue"` oder `"agents_view"`. Der Wert `"agents_view"` identifiziert den `claude agents`-Dashboard-Prozess, eine von Benutzern gestartete lokale UI statt einer Gesprächssitzung. Filtern Sie nach diesem Wert, um UI-Prozessstartvorgänge von Gesprächssitzungen in Ihren Dashboards zu trennen.

608 614 

609<h4 id="lines-of-code-counter">615<h4 id="lines-of-code-counter">

610 Codezeilen-Zähler616 Codezeilen-Zähler


651* `query_source`: Kategorie des Subsystems, das die Anfrage gestellt hat. Einer von `"main"`, `"subagent"` oder `"auxiliary"`657* `query_source`: Kategorie des Subsystems, das die Anfrage gestellt hat. Einer von `"main"`, `"subagent"` oder `"auxiliary"`

652* `speed`: `"fast"`, wenn die Anfrage den schnellen Modus verwendet hat. Andernfalls nicht vorhanden658* `speed`: `"fast"`, wenn die Anfrage den schnellen Modus verwendet hat. Andernfalls nicht vorhanden

653* `effort`: [Anstrengungsstufe](/docs/de/model-config#adjust-effort-level), die auf die Anfrage angewendet wird: `"low"`, `"medium"`, `"high"`, `"xhigh"` oder `"max"`. Nicht vorhanden, wenn Claude Code keine Anstrengungsstufe sendet, z. B. bei einem Modell, das Anstrengung nicht unterstützt.659* `effort`: [Anstrengungsstufe](/docs/de/model-config#adjust-effort-level), die auf die Anfrage angewendet wird: `"low"`, `"medium"`, `"high"`, `"xhigh"` oder `"max"`. Nicht vorhanden, wenn Claude Code keine Anstrengungsstufe sendet, z. B. bei einem Modell, das Anstrengung nicht unterstützt.

654* `agent.name`: Subagent-Typ, der die Anfrage gestellt hat. Integrierte Agent-Namen und Agenten aus offiziellen Marketplace-Plugins werden wörtlich angezeigt. Andere benutzerdefinierte Agent-Namen werden durch `"custom"` ersetzt. Nicht vorhanden, wenn die Anfrage nicht von einem benannten Subagent-Typ gestellt wurde.660* `agent.name`: Subagent-Typ, der die Anfrage gestellt hat. Integrierte Agent-Namen und Agenten aus offiziellen Marketplace-Plugins werden wörtlich angezeigt. Andere benutzerdefinierte Agent-Namen werden durch `"custom"` ersetzt, es sei denn, `OTEL_LOG_TOOL_DETAILS=1` ist gesetzt. Nicht vorhanden, wenn die Anfrage nicht von einem benannten Subagent-Typ gestellt wurde.

655* `skill.name`: Skill, der für die Anfrage aktiv ist, gesetzt durch das Skill-Tool, einen `/`-Befehl oder geerbt von einem erzeugten Subagenten. Integrierte, gebündelte, benutzerdefinierte und offizielle Marketplace-Plugin-Skill-Namen werden wörtlich angezeigt. Skill-Namen von Drittanbieter-Plugins werden durch `"third-party"` ersetzt. Nicht vorhanden, wenn kein Skill aktiv ist.661* `skill.name`: Skill, der für die Anfrage aktiv ist, gesetzt durch das Skill-Tool, einen `/`-Befehl oder geerbt von einem erzeugten Subagenten. Integrierte, gebündelte, benutzerdefinierte und offizielle Marketplace-Plugin-Skill-Namen werden wörtlich angezeigt. Skill-Namen von Drittanbieter-Plugins werden durch `"third-party"` ersetzt, es sei denn, `OTEL_LOG_TOOL_DETAILS=1` ist gesetzt. Nicht vorhanden, wenn kein Skill aktiv ist.

656* `plugin.name`: Besitzendes Plugin, wenn der aktive Skill oder Subagent von einem Plugin bereitgestellt wird. Offizielle Marketplace-Plugin-Namen werden wörtlich angezeigt. Drittanbieter-Plugin-Namen werden durch `"third-party"` ersetzt. Nicht vorhanden, wenn weder der Skill noch der Subagent ein besitzendes Plugin hat.662* `plugin.name`: Besitzendes Plugin, wenn der aktive Skill oder Subagent von einem Plugin bereitgestellt wird. Offizielle Marketplace-Plugin-Namen werden wörtlich angezeigt. Drittanbieter-Plugin-Namen werden durch `"third-party"` ersetzt, es sei denn, `OTEL_LOG_TOOL_DETAILS=1` ist gesetzt. Nicht vorhanden, wenn weder der Skill noch der Subagent ein besitzendes Plugin hat.

657* `marketplace.name`: Marketplace, von dem das besitzende Plugin installiert wurde. Nur für offizielle Marketplace-Plugins ausgegeben. Andernfalls nicht vorhanden.663* `marketplace.name`: Marketplace, von dem das besitzende Plugin installiert wurde. Nur für offizielle Marketplace-Plugins ausgegeben. Andernfalls nicht vorhanden.

658* `mcp_server.name`: MCP-Server, dessen Tool-Ergebnis diese Anfrage verbraucht hat. Integrierte, claude.ai-proxied und offizielle Registry-Server-Namen werden wörtlich angezeigt. Benutzerkonfigurierte Server-Namen werden durch `"custom"` ersetzt. Nicht vorhanden, wenn die Anfrage kein MCP-Tool-Ergebnis verbraucht hat. Vor v2.1.222 setzte Claude Code dieses Attribut bei jeder Anfrage nach einem MCP-Tool-Aufruf, nicht nur bei Anfragen, die ein Tool-Ergebnis verbrauchten, daher zeigen Dashboards, die es aggregieren, einen Rückgang nach dem Upgrade.664* `mcp_server.name`: MCP-Server, dessen Tool-Ergebnis diese Anfrage verbraucht hat. Integrierte, claude.ai-proxied und offizielle Registry-Server-Namen werden wörtlich angezeigt. Benutzerkonfigurierte Server-Namen werden durch `"custom"` ersetzt, es sei denn, `OTEL_LOG_TOOL_DETAILS=1` ist gesetzt. Nicht vorhanden, wenn die Anfrage kein MCP-Tool-Ergebnis verbraucht hat. Vor v2.1.222 setzte Claude Code dieses Attribut bei jeder Anfrage nach einem MCP-Tool-Aufruf, nicht nur bei Anfragen, die ein Tool-Ergebnis verbrauchten, daher zeigen Dashboards, die es aggregieren, einen Rückgang nach dem Upgrade.

659* `mcp_tool.name`: MCP-Tool, dessen Ergebnis diese Anfrage verbraucht hat, mit der gleichen Redaktion und Versionsverwaltung wie `mcp_server.name`. Nicht vorhanden, wenn die Anfrage kein MCP-Tool-Ergebnis verbraucht hat.665* `mcp_tool.name`: MCP-Tool, dessen Ergebnis diese Anfrage verbraucht hat, mit demselben Redaktions- und Versionsverhalten wie `mcp_server.name`. Nicht vorhanden, wenn die Anfrage kein MCP-Tool-Ergebnis verbraucht hat.

660 666 

661<h4 id="token-counter">667<h4 id="token-counter">

662 Token-Zähler668 Token-Zähler


692 Aktive Zeit-Zähler698 Aktive Zeit-Zähler

693</h4>699</h4>

694 700 

695Verfolgt die tatsächliche Zeit, die Claude Code aktiv verwendet wird, ausschließlich Leerlaufzeit. Diese Metrik wird während Benutzerinteraktionen wie Tippen und Lesen von Antworten sowie während CLI-Verarbeitung wie Tool-Ausführung und KI-Antwortgenerierung erhöht.701Verfolgt die tatsächliche Zeit, die Claude Code aktiv verwendet wird, ausschließlich Leerlaufzeit. Diese Metrik wird während Benutzerinteraktionen wie Tippen und Lesen von Antworten sowie während CLI-Verarbeitung wie Tool-Ausführung und KI-Antworterzeugung erhöht.

696 702 

697**Attribute**:703**Attribute**:

698 704 


709 Ereigniskorrelationsattribute715 Ereigniskorrelationsattribute

710</h4>716</h4>

711 717 

712Wenn ein Benutzer eine Eingabe einreicht, kann Claude Code mehrere API-Aufrufe tätigen und mehrere Tools ausführen. Das Attribut `prompt.id` ermöglicht es Ihnen, alle diese Ereignisse an die einzelne Eingabe zurückzuverfolgen, die sie ausgelöst hat.718Wenn ein Benutzer eine Eingabeaufforderung einreicht, kann Claude Code mehrere API-Aufrufe tätigen und mehrere Tools ausführen. Das Attribut `prompt.id` ermöglicht es Ihnen, alle diese Ereignisse an die einzelne Eingabeaufforderung zurückzuverfolgen, die sie ausgelöst hat.

713 719 

714| Attribut | Beschreibung |720| Attribut | Beschreibung |

715| ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |721| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

716| `prompt.id` | UUID v4-Kennung, die alle Ereignisse verknüpft, die während der Verarbeitung einer einzelnen Benutzereingabe erzeugt werden |722| `prompt.id` | UUID v4-Kennung, die alle Ereignisse verknüpft, die während der Verarbeitung einer einzelnen Benutzereingabeaufforderung erzeugt werden |

717| `event.sequence` | 0-basierter Zähler zum Ordnen von Ereignissen, gezählt pro Claude Code-Prozess statt pro Sitzung |723| `event.sequence` | 0-basierter Zähler zum Ordnen von Ereignissen, gezählt pro Claude Code-Prozess statt pro Sitzung |

718| `message.uuid` | UUID der Nachricht, wie sie im Sitzungstranskript gespeichert ist, die `~/.claude/projects/*/*.jsonl`-Dateien. Vorhanden auf `assistant_response`, auf `api_response_body` und auf `user_prompt` außer für Befehlsdispatcher, die null oder viele Nachrichten erzeugen können. Auf `assistant_response` und `api_response_body` ist dies der endgültige Transkripteintrag der Antwort, von dem die `parentUuid` des nächsten Zuges verkettet wird. Erfordert Claude Code v2.1.214 oder später, oder v2.1.274 oder später auf `api_response_body` |724| `message.uuid` | UUID der Nachricht, wie sie im Sitzungstranskript gespeichert ist, die Dateien `~/.claude/projects/*/*.jsonl`. Vorhanden auf `assistant_response`, auf `api_response_body` und auf `user_prompt` außer für Befehlsverteilungen, die null oder viele Nachrichten erzeugen können. Auf `assistant_response` und `api_response_body` ist dies der endgültige Transkripteintrag der Antwort, von dem die `parentUuid` des nächsten Zuges verkettet wird. Erfordert Claude Code v2.1.214 oder später, oder v2.1.274 oder später auf `api_response_body` |

719| `client_request_id` | Von Client generierte UUID, die als `x-client-request-id`-Request-Header gesendet wird. Vorhanden auf `api_request` und `api_error` bei Verbindungen zu Erstanbieter-APIs; nicht vorhanden bei Backends von Drittanbieter-Providern und wenn die Anfrage über den Fallback ohne Streaming erneut versucht wurde. Paart eine Anfrage mit ihrer Antwort und bleibt für Fehler wie Timeouts verfügbar, die niemals eine Server-`request_id` erzeugt haben. Entspricht dem gleichen Attribut auf der `llm_request`-Trace-Spanne. Erfordert Claude Code v2.1.214 oder später |725| `client_request_id` | Von Client generierte UUID, die als `x-client-request-id`-Request-Header gesendet wird. Vorhanden auf `api_request` und `api_error` bei First-Party-API-Verbindungen; nicht vorhanden bei Drittanbieter-Provider-Backends und wenn die Anfrage über den Fallback ohne Streaming erneut versucht wurde. Paart eine Anfrage mit ihrer Antwort und bleibt für Fehler wie Timeouts verfügbar, die nie eine Server-`request_id` erzeugt haben. Entspricht demselben Attribut auf der `llm_request`-Trace-Spanne. Erfordert Claude Code v2.1.214 oder später |

720 726 

721Um alle Aktivitäten zu verfolgen, die durch eine einzelne Eingabe ausgelöst werden, filtern Sie Ihre Ereignisse nach einem bestimmten `prompt.id`-Wert. Dies gibt das user\_prompt-Ereignis, alle api\_request-Ereignisse und alle tool\_result-Ereignisse zurück, die während der Verarbeitung dieser Eingabe aufgetreten sind.727Um alle Aktivitäten zu verfolgen, die durch eine einzelne Eingabeaufforderung ausgelöst werden, filtern Sie Ihre Ereignisse nach einem bestimmten `prompt.id`-Wert. Dies gibt das user\_prompt-Ereignis, alle api\_request-Ereignisse und alle tool\_result-Ereignisse zurück, die während der Verarbeitung dieser Eingabeaufforderung aufgetreten sind.

722 728 

723`event.sequence` beginnt bei 0 jedes Mal, wenn ein Claude Code-Prozess startet, und zählt für die Lebensdauer dieses Prozesses. Es zählt weiter über `/clear`, das eine neue `session.id` zuweist. Wenn Sie [eine Sitzung fortsetzen, ohne sie zu verzweigen](/docs/de/how-claude-code-works#resume-or-fork-sessions), behält die Sitzung ihre `session.id`, nimmt aber ihre `event.sequence`-Werte vom Prozess, der sie fortgesetzt hat, daher kann innerhalb einer Sitzung ein späteres Ereignis einen niedrigeren Wert als ein früheres tragen oder einen wiederholen. Um die Ereignisse einer Sitzung zu ordnen, sortieren Sie nach `event.timestamp` und verwenden Sie `event.sequence`, um Ereignisse zu ordnen, die einen Zeitstempel teilen.729`event.sequence` beginnt bei 0 jedes Mal, wenn ein Claude Code-Prozess startet, und zählt für die Lebensdauer dieses Prozesses. Es zählt weiter über `/clear`, das eine neue `session.id` zuweist. Wenn Sie [eine Sitzung fortsetzen, ohne sie zu verzweigen](/docs/de/how-claude-code-works#resume-or-fork-sessions), behält die Sitzung ihre `session.id`, nimmt aber ihre `event.sequence`-Werte vom Prozess, der sie fortgesetzt hat, daher kann innerhalb einer Sitzung ein späteres Ereignis einen niedrigeren Wert als ein früheres tragen oder einen wiederholen. Um die Ereignisse einer Sitzung zu ordnen, sortieren Sie nach `event.timestamp` und verwenden Sie `event.sequence`, um Ereignisse zu ordnen, die einen Zeitstempel teilen.

724 730 


729* `tool_use_id` auf `tool_result`- und `tool_decision`-Ereignissen735* `tool_use_id` auf `tool_result`- und `tool_decision`-Ereignissen

730 736 

731<h4 id="user-prompt-event">737<h4 id="user-prompt-event">

732 Benutzereingabe-Ereignis738 Benutzereingabeaufforderungs-Ereignis

733</h4>739</h4>

734 740 

735Protokolliert, wenn ein Benutzer eine Eingabe einreicht.741Protokolliert, wenn ein Benutzer eine Eingabeaufforderung einreicht.

736 742 

737**Ereignisname**: `claude_code.user_prompt`743**Ereignisname**: `claude_code.user_prompt`

738 744 


742* `event.name`: `"user_prompt"`748* `event.name`: `"user_prompt"`

743* `event.timestamp`: ISO 8601-Zeitstempel749* `event.timestamp`: ISO 8601-Zeitstempel

744* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)750* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)

745* `prompt_length`: Länge der Eingabe751* `prompt_length`: Länge der Eingabeaufforderung

746* `prompt`: Eingabeinhalt. Standardmäßig redaktioniert. Setzen Sie `OTEL_LOG_USER_PROMPTS=1`, um ihn einzubeziehen752* `prompt`: Inhalt der Eingabeaufforderung. Standardmäßig redaktioniert. Setzen Sie `OTEL_LOG_USER_PROMPTS=1`, um sie einzuschließen

747* `message.uuid`: UUID der resultierenden Benutzernachricht, die dem gespeicherten Transkripteintrag entspricht. Nicht vorhanden bei Befehlsdispatchern, die null oder viele Nachrichten erzeugen können. Erfordert Claude Code v2.1.214 oder später753* `message.uuid`: UUID der resultierenden Benutzernachricht, die dem gespeicherten Transkripteintrag entspricht. Nicht vorhanden bei Befehlsverteilungen, die null oder viele Nachrichten erzeugen können. Erfordert Claude Code v2.1.214 oder später

748* `command_name`: Befehlsname, wenn die Eingabe einen aufruft. Integrierte und gebündelte Befehlsnamen wie `compact` oder `debug` werden wie geschrieben ausgegeben; Aliase wie `reset` werden wie eingegeben statt des kanonischen Namens ausgegeben. Benutzerdefinierte, Plugin- und MCP-Befehlsnamen werden zu `custom` oder `mcp` zusammengefasst, es sei denn, `OTEL_LOG_TOOL_DETAILS=1` ist gesetzt754* `command_name`: Befehlsname, wenn die Eingabeaufforderung einen aufruft. Integrierte und gebündelte Befehlsnamen wie `compact` oder `debug` werden wie geschrieben ausgegeben; Aliase wie `reset` werden wie eingegeben statt des kanonischen Namens ausgegeben. Benutzerdefinierte, Plugin- und MCP-Befehlsnamen werden zu `custom` oder `mcp` zusammengefasst, es sei denn, `OTEL_LOG_TOOL_DETAILS=1` ist gesetzt

749* `command_source`: Ursprung des Befehls, wenn vorhanden: `builtin`, `custom` oder `mcp`. Von Plugins bereitgestellte Befehle werden als `custom` gemeldet755* `command_source`: Ursprung des Befehls, wenn vorhanden: `builtin`, `custom` oder `mcp`. Von Plugins bereitgestellte Befehle werden als `custom` gemeldet

750 756 

751<h4 id="assistant-response-event">757<h4 id="assistant-response-event">

752 Assistent-Antwort-Ereignis758 Assistent-Antwort-Ereignis

753</h4>759</h4>

754 760 

755Protokolliert nach jeder API-Anfrage, die Textinhalt vom Modell zurückgibt. Nur die Textblöcke der Antwort sind enthalten; Thinking-Blöcke und Tool-Use-Blöcke sind ausgeschlossen. Erfordert Claude Code v2.1.193 oder später.761Protokolliert nach jeder API-Anfrage, die Textinhalte vom Modell zurückgibt. Nur die Textblöcke der Antwort sind enthalten; Thinking-Blöcke und Tool-Use-Blöcke sind ausgeschlossen. Erfordert Claude Code v2.1.193 oder später.

756 762 

757**Ereignisname**: `claude_code.assistant_response`763**Ereignisname**: `claude_code.assistant_response`

758 764 


763* `event.timestamp`: ISO 8601-Zeitstempel769* `event.timestamp`: ISO 8601-Zeitstempel

764* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)770* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)

765* `response_length`: Länge des Antworttexts in Zeichen771* `response_length`: Länge des Antworttexts in Zeichen

766* `response`: Antworttext, gekürzt auf das Inhaltslimit (standardmäßig 60 KB). Standardmäßig auf `<REDACTED>` redaktioniert. Setzen Sie `OTEL_LOG_ASSISTANT_RESPONSES=1`, um ihn einzubeziehen. Wenn `OTEL_LOG_ASSISTANT_RESPONSES` nicht gesetzt ist, steuert `OTEL_LOG_USER_PROMPTS` es stattdessen, daher setzen Sie `OTEL_LOG_ASSISTANT_RESPONSES=0`, um Antworten redaktioniert zu halten, während die Eingabe-Protokollierung aktiv ist772* `response`: Antworttext, gekürzt auf das Inhaltslimit (standardmäßig 60 KB). Standardmäßig auf `<REDACTED>` redaktioniert. Setzen Sie `OTEL_LOG_ASSISTANT_RESPONSES=1`, um sie einzuschließen. Wenn `OTEL_LOG_ASSISTANT_RESPONSES` nicht gesetzt ist, steuert `OTEL_LOG_USER_PROMPTS` es stattdessen, daher setzen Sie `OTEL_LOG_ASSISTANT_RESPONSES=0`, um Antworten redaktioniert zu halten, während die Eingabeaufforderungs-Protokollierung aktiv ist

767* `model`: Modellkennung (z. B. „claude-sonnet-5")773* `model`: Modellkennung (z. B. „claude-sonnet-5")

768* `request_id`: Anthropic API-Anfrage-ID aus dem `request-id`-Header der Antwort. Nur vorhanden, wenn die API eine zurückgibt774* `request_id`: Anthropic API-Anfrage-ID aus dem `request-id`-Header der Antwort. Nur vorhanden, wenn die API eine zurückgibt

769* `message.uuid`: UUID des endgültigen Transkripteintrags der Antwort. Eine API-Antwort wird als ein Transkripteintrag pro Inhaltsblock gespeichert; dies ist der letzte, von dem die `parentUuid` des nächsten Zuges verkettet wird. Erfordert Claude Code v2.1.214 oder später775* `message.uuid`: UUID des endgültigen Transkripteintrags der Antwort. Eine API-Antwort wird als ein Transkripteintrag pro Inhaltsblock gespeichert; dies ist der letzte, von dem die `parentUuid` des nächsten Zuges verkettet wird. Erfordert Claude Code v2.1.214 oder später


787* `tool_use_id`: Eindeutige Kennung für diesen Tool-Aufruf. Entspricht der `tool_use_id`, die an Hooks übergeben wird, und ermöglicht die Korrelation zwischen OTel-Ereignissen und Hook-erfassten Daten.793* `tool_use_id`: Eindeutige Kennung für diesen Tool-Aufruf. Entspricht der `tool_use_id`, die an Hooks übergeben wird, und ermöglicht die Korrelation zwischen OTel-Ereignissen und Hook-erfassten Daten.

788* `success`: `"true"` oder `"false"`794* `success`: `"true"` oder `"false"`

789* `duration_ms`: Ausführungszeit in Millisekunden795* `duration_ms`: Ausführungszeit in Millisekunden

790* `error_type`: Fehlerkategorie-String, wenn das Tool fehlgeschlagen ist, z. B. `"Error:ENOENT"` oder `"ShellError"`796* `error_type`: Fehler-Kategoriezeichenkette, wenn das Tool fehlgeschlagen ist, z. B. `"Error:ENOENT"` oder `"ShellError"`

791* `error` (wenn `OTEL_LOG_TOOL_DETAILS=1`): Vollständige Fehlermeldung, wenn das Tool fehlgeschlagen ist797* `error` (wenn `OTEL_LOG_TOOL_DETAILS=1`): Vollständige Fehlermeldung, wenn das Tool fehlgeschlagen ist

792* `decision_type`: Immer `"accept"`, da dieses Ereignis nur nach der Tool-Ausführung ausgegeben wird. Abgelehnte Aufrufe erzeugen kein Tool-Ergebnis798* `decision_type`: Immer `"accept"`, da dieses Ereignis nur ausgegeben wird, nachdem das Tool ausgeführt wurde. Abgelehnte Aufrufe erzeugen kein Tool-Ergebnis

793* `decision_source`: Woher die Genehmigungsentscheidung kam. Einer von `"config"`, `"hook"`, `"user_permanent"` oder `"user_temporary"`. Siehe das [Tool-Entscheidungsereignis](#tool-decision-event) für die Bedeutung jedes Wertes. Die nur-Ablehnung-Quellen `"user_abort"` und `"user_reject"` erscheinen niemals auf diesem Ereignis.799* `decision_source`: Woher die Genehmigungsentscheidung kam. Einer von `"config"`, `"hook"`, `"user_permanent"` oder `"user_temporary"`. Siehe das [Tool-Entscheidungsereignis](#tool-decision-event) für die Bedeutung jedes Wertes. Die nur-Ablehnung-Quellen `"user_abort"` und `"user_reject"` erscheinen niemals auf diesem Ereignis.

794* `tool_input_size_bytes`: Größe der JSON-serialisierten Tool-Eingabe in Bytes800* `tool_input_size_bytes`: Größe der JSON-serialisierten Tool-Eingabe in Bytes

795* `tool_result_size_bytes`: Größe des Tool-Ergebnisses in Bytes801* `tool_result_size_bytes`: Größe des Tool-Ergebnisses in Bytes

796* `mcp_server_scope`: MCP-Server-Scope-Kennung (für MCP-Tools)802* `mcp_server_scope`: MCP-Server-Scope-Kennung (für MCP-Tools)

797* `vcs.ref.head.revision`, `vcs.ref.head.name`, `vcs.ref.head.type` (wenn `OTEL_LOG_TOOL_DETAILS=1`): die Commit-Identität eines erfolgreichen `git commit`-Laufs durch das Bash- oder PowerShell-Tool. `vcs.ref.head.revision` ist die Commit-SHA, `vcs.ref.head.name` ist der Branch, auf dem es committed wurde, und `vcs.ref.head.type` ist `branch`. Der Name und Typ werden weggelassen, wenn der Commit auf einem detached HEAD gemacht wurde. Erfordert Claude Code v2.1.269 oder später803* `vcs.ref.head.revision`, `vcs.ref.head.name`, `vcs.ref.head.type` (wenn `OTEL_LOG_TOOL_DETAILS=1`): die Commit-Identität eines erfolgreichen `git commit`-Laufs durch das Bash- oder PowerShell-Tool. `vcs.ref.head.revision` ist die Commit-SHA, `vcs.ref.head.name` ist der Branch, auf dem es committed wurde, und `vcs.ref.head.type` ist `branch`. Der Name und Typ werden weggelassen, wenn der Commit auf einem detached HEAD gemacht wurde. Erfordert Claude Code v2.1.269 oder später

798* `tool_parameters` (wenn `OTEL_LOG_TOOL_DETAILS=1`): JSON-String mit Tool-spezifischen Parametern. Für die integrierten Server von Claude Desktop in Sitzungen, die Claude Desktop besitzt, ist das Paar `mcp_server_name`/`mcp_tool_name` auch ohne das Flag enthalten, die gleiche von Host erstellte Ausnahme wie das [Tool-Entscheidungsereignis](#tool-decision-event), erfordert Claude Code v2.1.214 oder später. Die Parameter variieren je nach Tool:804* `tool_parameters` (wenn `OTEL_LOG_TOOL_DETAILS=1`): JSON-Zeichenkette mit Tool-spezifischen Parametern. Für die integrierten Server von Claude Desktop in Sitzungen, die Claude Desktop besitzt, ist das Paar `mcp_server_name`/`mcp_tool_name` auch ohne das Flag enthalten, die gleiche Host-erstellte Ausnahme wie das [Tool-Entscheidungsereignis](#tool-decision-event), erfordert Claude Code v2.1.214 oder später. Die Parameter variieren je nach Tool:

799 * Für Bash-Tool: enthält `bash_command`, `full_command`, `timeout`, `description` und `dangerouslyDisableSandbox`, plus `git_commit_id` und `git_branch`, wenn ein `git commit`-Befehl erfolgreich ist. `git_commit_id` ist die vollständige Commit-SHA, wenn der Commit der HEAD der Arbeitsverzeichnis der Sitzung ist, und Gits abgekürzte SHA andernfalls. `git_branch` ist der Branch, auf dem es committed wurde, weggelassen auf einem detached HEAD805 * Für Bash-Tool: enthält `bash_command`, `full_command`, `timeout`, `description` und `dangerouslyDisableSandbox`, plus `git_commit_id` und `git_branch`, wenn ein `git commit`-Befehl erfolgreich ist. `git_commit_id` ist die vollständige Commit-SHA, wenn der Commit der HEAD der Arbeitsverzeichnis der Sitzung ist, und Gits abgekürzte SHA andernfalls. `git_branch` ist der Branch, auf dem es committed wurde, weggelassen auf einem detached HEAD

800 * Für das Bash-Tool des Arbeitsbereichs der Desktop-App, das auch `tool_name` als `Bash` meldet: enthält nur `bash_command`, `full_command` und `timeout`806 * Für das Workspace-Bash-Tool der Desktop-App, das auch `tool_name` als `Bash` meldet: enthält nur `bash_command`, `full_command` und `timeout`

801 * Für MCP-Tools: enthält `mcp_server_name`, `mcp_tool_name`807 * Für MCP-Tools: enthält `mcp_server_name`, `mcp_tool_name`

802 * Für Skill-Tool: enthält `skill_name`808 * Für Skill-Tool: enthält `skill_name`

803 * Für Agent-Tool oder Legacy-Task-Tool: enthält `subagent_type`809 * Für Agent-Tool oder Legacy-Task-Tool: enthält `subagent_type`


819* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)825* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)

820* `model`: Verwendetes Modell (z. B. „claude-sonnet-5")826* `model`: Verwendetes Modell (z. B. „claude-sonnet-5")

821* `cost_usd`: Geschätzte Kosten in USD827* `cost_usd`: Geschätzte Kosten in USD

822* `cost_usd_micros`: Geschätzte Kosten in Millionsten eines US-Dollars, ausgegeben als Integer828* `cost_usd_micros`: Geschätzte Kosten in Millionsten eines US-Dollars, ausgegeben als Ganzzahl

823* `duration_ms`: Anfrage-Dauer in Millisekunden829* `duration_ms`: Anfrage-Dauer in Millisekunden

824* `input_tokens`: Anzahl der Eingabe-Token830* `input_tokens`: Anzahl der Eingabe-Token

825* `output_tokens`: Anzahl der Ausgabe-Token831* `output_tokens`: Anzahl der Ausgabe-Token

826* `cache_read_tokens`: Anzahl der aus dem Cache gelesenen Token832* `cache_read_tokens`: Anzahl der aus dem Cache gelesenen Token

827* `cache_creation_tokens`: Anzahl der für die Cache-Erstellung verwendeten Token833* `cache_creation_tokens`: Anzahl der für die Cache-Erstellung verwendeten Token

828* `request_id`: Anthropic API-Anfrage-ID aus dem `request-id`-Header der Antwort, z. B. `"req_011..."`. Nur vorhanden, wenn die API eine zurückgibt.834* `request_id`: Anthropic API-Anfrage-ID aus dem `request-id`-Header der Antwort, z. B. `"req_011..."`. Nur vorhanden, wenn die API eine zurückgibt.

829* `client_request_id`: Von Client generierte UUID, die als `x-client-request-id`-Request-Header gesendet wird; siehe die [Ereigniskorrelationsattribute](#event-correlation-attributes)-Tabelle für wann sie vorhanden ist. Erfordert Claude Code v2.1.214 oder später835* `client_request_id`: Von Client generierte UUID, die als `x-client-request-id`-Request-Header gesendet wird; siehe die Tabelle [Ereigniskorrelationsattribute](#event-correlation-attributes) für wann sie vorhanden ist. Erfordert Claude Code v2.1.214 oder später

830* `speed`: `"fast"` oder `"normal"`, zeigt an, ob der schnelle Modus aktiv war836* `speed`: `"fast"` oder `"normal"`, was angibt, ob der schnelle Modus aktiv war

831* `query_source`: Subsystem, das die Anfrage gestellt hat, z. B. `"repl_main_thread"`, `"compact"` oder ein Subagent-Name837* `query_source`: Subsystem, das die Anfrage gestellt hat, z. B. `"repl_main_thread"`, `"compact"` oder ein Subagent-Name

832* `effort`: [Anstrengungsstufe](/docs/de/model-config#adjust-effort-level), die auf die Anfrage angewendet wird: `"low"`, `"medium"`, `"high"`, `"xhigh"` oder `"max"`. Nicht vorhanden, wenn Claude Code keine Anstrengungsstufe sendet, z. B. bei einem Modell, das Anstrengung nicht unterstützt.838* `effort`: [Anstrengungsstufe](/docs/de/model-config#adjust-effort-level), die auf die Anfrage angewendet wird: `"low"`, `"medium"`, `"high"`, `"xhigh"` oder `"max"`. Nicht vorhanden, wenn Claude Code keine Anstrengungsstufe sendet, z. B. bei einem Modell, das Anstrengung nicht unterstützt.

833* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name`: Skill-, Plugin-, Agent- und MCP-Zuordnung für die Anfrage. Siehe [Kostenzähler](#cost-counter) für Definitionen und Redaktionsverhalten.839* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name`: Skill-, Plugin-, Agent- und MCP-Zuordnung für die Anfrage. Siehe [Kostenzähler](#cost-counter) für Definitionen und Redaktionsverhalten.


852* `duration_ms`: Anfrage-Dauer in Millisekunden858* `duration_ms`: Anfrage-Dauer in Millisekunden

853* `attempt`: Gesamtzahl der Versuche, einschließlich der ursprünglichen Anfrage (`1` bedeutet, dass keine Wiederholungen aufgetreten sind)859* `attempt`: Gesamtzahl der Versuche, einschließlich der ursprünglichen Anfrage (`1` bedeutet, dass keine Wiederholungen aufgetreten sind)

854* `request_id`: Anthropic API-Anfrage-ID aus dem `request-id`-Header der Antwort, z. B. `"req_011..."`. Nur vorhanden, wenn die API eine zurückgibt.860* `request_id`: Anthropic API-Anfrage-ID aus dem `request-id`-Header der Antwort, z. B. `"req_011..."`. Nur vorhanden, wenn die API eine zurückgibt.

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

856* `speed`: `"fast"` oder `"normal"`, zeigt an, ob der schnelle Modus aktiv war862* `speed`: `"fast"` oder `"normal"`, was angibt, ob der schnelle Modus aktiv war

857* `query_source`: Subsystem, das die Anfrage gestellt hat, z. B. `"repl_main_thread"`, `"compact"` oder ein Subagent-Name863* `query_source`: Subsystem, das die Anfrage gestellt hat, z. B. `"repl_main_thread"`, `"compact"` oder ein Subagent-Name

858* `effort`: [Anstrengungsstufe](/docs/de/model-config#adjust-effort-level), die auf die Anfrage angewendet wird. Nicht vorhanden, wenn Claude Code keine Anstrengungsstufe sendet, z. B. bei einem Modell, das Anstrengung nicht unterstützt.864* `effort`: [Anstrengungsstufe](/docs/de/model-config#adjust-effort-level), die auf die Anfrage angewendet wird. Nicht vorhanden, wenn Claude Code keine Anstrengungsstufe sendet, z. B. bei einem Modell, das Anstrengung nicht unterstützt.

859* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name`: Skill-, Plugin-, Agent- und MCP-Zuordnung für die Anfrage. Siehe [Kostenzähler](#cost-counter) für Definitionen und Redaktionsverhalten.865* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name`: Skill-, Plugin-, Agent- und MCP-Zuordnung für die Anfrage. Siehe [Kostenzähler](#cost-counter) für Definitionen und Redaktionsverhalten.


862 API-Ablehnung-Ereignis868 API-Ablehnung-Ereignis

863</h4>869</h4>

864 870 

865Protokolliert, wenn eine API-Anfrage `stop_reason: "refusal"` zurückgibt. Ablehnungen kommen auf einem erfolgreichen Response-Stream statt als HTTP-Fehler an, daher wird das `api_error`-Ereignis nicht für sie ausgelöst. Dieses Ereignis ermöglicht es Ihnen, die Ablehnungshäufigkeit zu verfolgen und Ablehnungen nach den gleichen Attributen wie `api_request` und `api_error` zu gruppieren.871Protokolliert, wenn eine API-Anfrage `stop_reason: "refusal"` zurückgibt. Ablehnungen kommen auf einem erfolgreichen Response-Stream statt als HTTP-Fehler an, daher wird das `api_error`-Ereignis nicht für sie ausgelöst. Dieses Ereignis ermöglicht es Ihnen, die Ablehnungshäufigkeit zu verfolgen und Ablehnungen nach denselben Attributen wie `api_request` und `api_error` zu gruppieren.

866 872 

867**Ereignisname**: `claude_code.api_refusal`873**Ereignisname**: `claude_code.api_refusal`

868 874 


878* `speed`: Entweder `"fast"`, wenn [Schneller Modus](/docs/de/fast-mode) aktiv ist, oder `"normal"`884* `speed`: Entweder `"fast"`, wenn [Schneller Modus](/docs/de/fast-mode) aktiv ist, oder `"normal"`

879* `attempt`: Wiederholungsversuch-Nummer. Der erste Versuch ist `1`.885* `attempt`: Wiederholungsversuch-Nummer. Der erste Versuch ist `1`.

880* `effort`: [Anstrengungsstufe](/docs/de/model-config#adjust-effort-level), die auf die Anfrage angewendet wird. Nicht vorhanden, wenn Claude Code keine Anstrengungsstufe sendet, z. B. bei einem Modell, das Anstrengung nicht unterstützt.886* `effort`: [Anstrengungsstufe](/docs/de/model-config#adjust-effort-level), die auf die Anfrage angewendet wird. Nicht vorhanden, wenn Claude Code keine Anstrengungsstufe sendet, z. B. bei einem Modell, das Anstrengung nicht unterstützt.

881* `server_fallback_hop`: `true`, wenn das API-seitige Modell-Fallback diese Ablehnung bereits auf einem anderen Modell erneut versucht hat, daher hat der Benutzer diese bestimmte Ablehnung nicht gesehen. `false`, wenn die Anfrage in einer Ablehnung endete. Ein einzelner Zug kann sowohl ein `true`-Hop-Ereignis als auch ein späteres `false`-Finales Ereignis ausgeben, wenn das Fallback-Modell auch ablehnt.887* `server_fallback_hop`: `true`, wenn das Server-seitige Modell-Fallback diesen Fehler bereits auf einem anderen Modell erneut versucht hat, daher hat der Benutzer diese bestimmte Ablehnung nicht gesehen. `false`, wenn die Anfrage in einer Ablehnung endete. Ein einzelner Zug kann sowohl ein `true`-Hop-Ereignis als auch ein späteres `false`-Finales Ereignis ausgeben, wenn das Fallback-Modell auch ablehnt.

882* `has_category`: `true`, wenn die API-Antwort eine `stop_details.category` von `"cyber"`, `"bio"`, `"frontier_llm"` oder `"reasoning_extraction"` trug. `false`, wenn die Antwort keine Kategorie oder einen Wert außerhalb dieses Satzes trug. Nicht vorhanden, wenn `server_fallback_hop` `true` ist, da Hop-Blöcke keine `stop_details` tragen.888* `has_category`: `true`, wenn die API-Antwort eine `stop_details.category` von `"cyber"`, `"bio"`, `"frontier_llm"` oder `"reasoning_extraction"` trug. `false`, wenn die Antwort keine Kategorie oder einen Wert außerhalb dieses Satzes trug. Nicht vorhanden, wenn `server_fallback_hop` `true` ist, da Hop-Blöcke keine `stop_details` tragen.

883* `has_explanation`: `true`, wenn die API-Antwort eine `stop_details.explanation` trug, andernfalls `false`. Nicht vorhanden, wenn `server_fallback_hop` `true` ist.889* `has_explanation`: `true`, wenn die API-Antwort eine `stop_details.explanation` trug, andernfalls `false`. Nicht vorhanden, wenn `server_fallback_hop` `true` ist.

884* `category`: Der `stop_details.category`-Wert aus der API-Antwort. Einer von `"cyber"`, `"bio"`, `"frontier_llm"` oder `"reasoning_extraction"`. Nur vorhanden, wenn `OTEL_LOG_TOOL_DETAILS=1` gesetzt ist und `has_category` `true` ist.890* `category`: Der `stop_details.category`-Wert aus der API-Antwort. Einer von `"cyber"`, `"bio"`, `"frontier_llm"` oder `"reasoning_extraction"`. Nur vorhanden, wenn `OTEL_LOG_TOOL_DETAILS=1` gesetzt ist und `has_category` `true` ist.


888 API-Anfrage-Body-Ereignis894 API-Anfrage-Body-Ereignis

889</h4>895</h4>

890 896 

891Protokolliert für jede API-Anfrage-Versuch, wenn `OTEL_LOG_RAW_API_BODIES` gesetzt ist. Ein Ereignis wird pro Versuch ausgegeben, daher erzeugen Wiederholungen mit angepassten Parametern jeweils ihr eigenes Ereignis.897Protokolliert für jeden API-Anfrage-Versuch, wenn `OTEL_LOG_RAW_API_BODIES` gesetzt ist. Ein Ereignis wird pro Versuch ausgegeben, daher erzeugen Wiederholungen mit angepassten Parametern jeweils ihr eigenes Ereignis.

892 898 

893**Ereignisname**: `claude_code.api_request_body`899**Ereignisname**: `claude_code.api_request_body`

894 900 


898* `event.name`: `"api_request_body"`904* `event.name`: `"api_request_body"`

899* `event.timestamp`: ISO 8601-Zeitstempel905* `event.timestamp`: ISO 8601-Zeitstempel

900* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)906* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)

901* `body`: JSON-serialisierte Messages API-Anfrage-Parameter, z. B. der System-Prompt, Nachrichten und Tools, gekürzt auf das Inhaltslimit (standardmäßig 60 KB). Extended-Thinking-Inhalt in vorherigen Assistent-Zügen wird redaktioniert. Nur im Inline-Modus ausgegeben (`OTEL_LOG_RAW_API_BODIES=1`).907* `body`: JSON-serialisierte Messages API-Anfrage-Parameter, wie die System-Eingabeaufforderung, Nachrichten und Tools, gekürzt auf das Inhaltslimit (standardmäßig 60 KB). Extended-Thinking-Inhalte in vorherigen Assistent-Zügen sind redaktioniert. Nur im Inline-Modus ausgegeben (`OTEL_LOG_RAW_API_BODIES=1`).

902* `body_ref`: Absoluter Pfad zu einer `<dir>/<uuid>.request.json`-Datei, die den ungekürzte Body enthält. Nur im Datei-Modus ausgegeben (`OTEL_LOG_RAW_API_BODIES=file:<dir>`).908* `body_ref`: Absoluter Pfad zu einer `<dir>/<uuid>.request.json`-Datei, die den ungekürzte Body enthält. Nur im Datei-Modus ausgegeben (`OTEL_LOG_RAW_API_BODIES=file:<dir>`).

903* `body_length`: Ungekürzte Body-Länge. UTF-8-Bytes, wenn `OTEL_LOG_RAW_API_BODIES=file:<dir>`, oder UTF-16-Code-Einheiten, wenn `=1`909* `body_length`: Ungekürzte Body-Länge. UTF-8-Bytes, wenn `OTEL_LOG_RAW_API_BODIES=file:<dir>`, oder UTF-16-Code-Einheiten, wenn `=1`

904* `body_truncated`: `"true"`, wenn Inline-Kürzung aufgetreten ist. Nicht vorhanden im Datei-Modus und wenn keine Kürzung aufgetreten ist.910* `body_truncated`: `"true"`, wenn Inline-Kürzung aufgetreten ist. Nicht vorhanden im Datei-Modus und wenn keine Kürzung aufgetreten ist.

905* `model`: Modellkennung aus den Anfrage-Parametern911* `model`: Modellkennung aus den Anfrage-Parametern

906* `query_source`: Subsystem, das die Anfrage gestellt hat (z. B. `"compact"`)912* `query_source`: Subsystem, das die Anfrage gestellt hat (z. B. `"compact"`)

907* `request_body_id`: UUID, die den Request-Body dieses Versuchs identifiziert. Das [`api_response_body`-Ereignis](#api-response-body-event) für den Versuch, der erfolgreich ist, trägt den gleichen Wert, daher können Sie eine Antwort mit der genauen Anfrage, die sie erzeugt hat, paaren. Erfordert Claude Code v2.1.274 oder später913* `request_body_id`: UUID, die den Body dieses Versuchs identifiziert. Das [`api_response_body`-Ereignis](#api-response-body-event) für den Versuch, der erfolgreich ist, trägt denselben Wert, daher können Sie eine Antwort mit der genauen Anfrage, die sie erzeugt hat, paaren. Erfordert Claude Code v2.1.274 oder später

908 914 

909<h4 id="api-response-body-event">915<h4 id="api-response-body-event">

910 API-Antwort-Body-Ereignis916 API-Antwort-Body-Ereignis


912 918 

913Protokolliert für jede erfolgreiche API-Antwort, wenn `OTEL_LOG_RAW_API_BODIES` gesetzt ist.919Protokolliert für jede erfolgreiche API-Antwort, wenn `OTEL_LOG_RAW_API_BODIES` gesetzt ist.

914 920 

915Im Datei-Modus (`OTEL_LOG_RAW_API_BODIES=file:<dir>`) hängt Claude Code auch eine JSON-Zeile an `<dir>/index.jsonl` für jede erfolgreiche Antwort an, mit den Feldern `timestamp`, `session_id`, `query_source`, `model`, `request_id`, `message_id`, `message_uuid`, `request_file` und `response_file`. Lesen Sie sie, um die Request- und Response-Dateien hinter einer bestimmten Transkript-Nachricht zu finden, ohne Ihren Telemetrie-Backend abzufragen. Die Index-Datei erfordert Claude Code v2.1.274 oder später.921Im Datei-Modus (`OTEL_LOG_RAW_API_BODIES=file:<dir>`) hängt Claude Code auch eine JSON-Zeile an `<dir>/index.jsonl` für jede erfolgreiche Antwort an, mit den Feldern `timestamp`, `session_id`, `query_source`, `model`, `request_id`, `message_id`, `message_uuid`, `request_file` und `response_file`. Lesen Sie es, um die Anfrage- und Antwort-Dateien hinter einer bestimmten Transkript-Nachricht zu finden, ohne Ihren Telemetrie-Backend abzufragen. Die Index-Datei erfordert Claude Code v2.1.274 oder später.

916 922 

917**Ereignisname**: `claude_code.api_response_body`923**Ereignisname**: `claude_code.api_response_body`

918 924 


922* `event.name`: `"api_response_body"`928* `event.name`: `"api_response_body"`

923* `event.timestamp`: ISO 8601-Zeitstempel929* `event.timestamp`: ISO 8601-Zeitstempel

924* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)930* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)

925* `body`: JSON-serialisierte Messages API-Antwort, einschließlich der ID, Inhaltsblöcke, Nutzung und Stop-Grund, gekürzt auf das Inhaltslimit (standardmäßig 60 KB). Extended-Thinking-Inhalt wird redaktioniert. Nur im Inline-Modus ausgegeben (`OTEL_LOG_RAW_API_BODIES=1`).931* `body`: JSON-serialisierte Messages API-Antwort, einschließlich der ID, Inhaltsblöcke, Nutzung und Stop-Grund, gekürzt auf das Inhaltslimit (standardmäßig 60 KB). Extended-Thinking-Inhalte sind redaktioniert. Nur im Inline-Modus ausgegeben (`OTEL_LOG_RAW_API_BODIES=1`).

926* `body_ref`: Absoluter Pfad zu einer `<dir>/<request_id>.response.json`-Datei, die den ungekürzte Body enthält. Nur im Datei-Modus ausgegeben (`OTEL_LOG_RAW_API_BODIES=file:<dir>`).932* `body_ref`: Absoluter Pfad zu einer `<dir>/<request_id>.response.json`-Datei, die den ungekürzte Body enthält. Nur im Datei-Modus ausgegeben (`OTEL_LOG_RAW_API_BODIES=file:<dir>`).

927* `body_length`: Ungekürzte Body-Länge. UTF-8-Bytes, wenn `OTEL_LOG_RAW_API_BODIES=file:<dir>`, oder UTF-16-Code-Einheiten, wenn `=1`933* `body_length`: Ungekürzte Body-Länge. UTF-8-Bytes, wenn `OTEL_LOG_RAW_API_BODIES=file:<dir>`, oder UTF-16-Code-Einheiten, wenn `=1`

928* `body_truncated`: `"true"`, wenn Inline-Kürzung aufgetreten ist. Nicht vorhanden im Datei-Modus und wenn keine Kürzung aufgetreten ist.934* `body_truncated`: `"true"`, wenn Inline-Kürzung aufgetreten ist. Nicht vorhanden im Datei-Modus und wenn keine Kürzung aufgetreten ist.


931* `request_id`: Anthropic API-Anfrage-ID aus dem `request-id`-Header der Antwort, z. B. `"req_011..."`. Nur vorhanden, wenn die API eine zurückgibt.937* `request_id`: Anthropic API-Anfrage-ID aus dem `request-id`-Header der Antwort, z. B. `"req_011..."`. Nur vorhanden, wenn die API eine zurückgibt.

932* `request_body_id`: Die `request_body_id` des [`api_request_body`-Ereignisses](#api-request-body-event), das diese Antwort beantwortet. Erfordert Claude Code v2.1.274 oder später938* `request_body_id`: Die `request_body_id` des [`api_request_body`-Ereignisses](#api-request-body-event), das diese Antwort beantwortet. Erfordert Claude Code v2.1.274 oder später

933* `message.id`: Nachrichten-ID, die die API der Antwort zugewiesen hat, das `id`-Feld des Response-Body. Erfordert Claude Code v2.1.274 oder später939* `message.id`: Nachrichten-ID, die die API der Antwort zugewiesen hat, das `id`-Feld des Response-Body. Erfordert Claude Code v2.1.274 oder später

934* `message.uuid`: UUID des endgültigen Transkripteintrags der Antwort. Zusammen mit `request_body_id` verknüpft es eine Transkript-Nachricht mit den Request- und Response-Bodies dahinter. Erfordert Claude Code v2.1.274 oder später940* `message.uuid`: UUID des endgültigen Transkripteintrags der Antwort. Zusammen mit `request_body_id` verknüpft es eine Transkript-Nachricht mit den Anfrage- und Antwort-Bodies dahinter. Erfordert Claude Code v2.1.274 oder später

935 941 

936<h4 id="tool-decision-event">942<h4 id="tool-decision-event">

937 Tool-Entscheidungs-Ereignis943 Tool-Entscheidungs-Ereignis


955 * `"mcp"`: MCP-Server allgemein961 * `"mcp"`: MCP-Server allgemein

956 * `"sdk_host_builtin_mcp"`: ein In-Process-Server, der in Claude Desktop selbst integriert ist, in einer Sitzung, die Claude Desktop besitzt. Claude Desktop besitzt eine Sitzung, die es von einem seiner eigenen Einstiegspunkte gestartet hat, `claude-desktop`, `claude-desktop-3p` oder `local-agent`, wenn diese Sitzung kein verschachteltes Kind ist; verschachtelte Sitzungen, einschließlich Sitzungen, die Claude Code selbst erzeugt, melden diese Server als `"mcp"`962 * `"sdk_host_builtin_mcp"`: ein In-Process-Server, der in Claude Desktop selbst integriert ist, in einer Sitzung, die Claude Desktop besitzt. Claude Desktop besitzt eine Sitzung, die es von einem seiner eigenen Einstiegspunkte gestartet hat, `claude-desktop`, `claude-desktop-3p` oder `local-agent`, wenn diese Sitzung kein verschachteltes Kind ist; verschachtelte Sitzungen, einschließlich Sitzungen, die Claude Code selbst erzeugt, melden diese Server als `"mcp"`

957* `source`: Woher die Entscheidung kam:963* `source`: Woher die Entscheidung kam:

958 * `"config"`: Automatisch ohne Aufforderung entschieden, basierend auf Projekteinstellungen, Zulassungs- oder Ablehnungsregeln in den persönlichen Einstellungen des Benutzers, Unternehmensrichtlinie, `--allowedTools`- oder `--disallowedTools`-Flags, dem aktiven Genehmigungsmodus, einer Sitzungs-Berechtigung aus einer früheren Eingabe in der gleichen interaktiven CLI-Sitzung, oder weil das Tool inhärent sicher ist. Das Ereignis zeigt nicht an, welche dieser Quellen übereinstimmte. Claude Code meldet auch `"config"`, wenn die Genehmigungsaufforderung selbst fehlschlägt, z. B. wenn der [`canUseTool`](/docs/de/agent-sdk/typescript#canusetool)-Callback des Agent SDK oder das [`--permission-prompt-tool`](/docs/de/cli-reference#cli-flags)-Tool ein ungültiges Ergebnis zurückgibt, oder wenn der Eingabestrom geschlossen wird, während die Anfrage ausstehend ist. Vor v2.1.216 meldete Claude Code diese Fehler als `"user_reject"`.964 * `"config"`: Automatisch entschieden ohne Eingabeaufforderung, basierend auf Projekteinstellungen, Zulassungs- oder Ablehnungsregeln in den persönlichen Einstellungen des Benutzers, Unternehmensrichtlinie, `--allowedTools`- oder `--disallowedTools`-Flags, dem aktiven Genehmigungsmodus, einer Sitzungs-Zuschuss aus einer früheren Eingabeaufforderung in derselben interaktiven CLI-Sitzung, oder weil das Tool inhärent sicher ist. Das Ereignis zeigt nicht an, welche dieser Quellen übereinstimmte. Claude Code meldet auch `"config"`, wenn die Genehmigungsaufforderungs-Anfrage selbst fehlschlägt, z. B. wenn der [`canUseTool`](/docs/de/agent-sdk/typescript#canusetool)-Callback des Agent SDK oder das [`--permission-prompt-tool`](/docs/de/cli-reference#cli-flags)-Tool ein ungültiges Ergebnis zurückgibt, oder wenn der Eingabestrom geschlossen wird, während die Anfrage ausstehend ist. Vor v2.1.216 meldete Claude Code diese Fehler als `"user_reject"`.

959 * `"hook"`: Ein `PreToolUse`- oder `PermissionRequest`-Hook hat die Entscheidung zurückgegeben.965 * `"hook"`: Ein `PreToolUse`- oder `PermissionRequest`-Hook gab die Entscheidung zurück.

960 * `"user_permanent"`: Ausgegeben, wenn der Benutzer „Ja, und nicht mehr fragen für ..." bei einer Genehmigungsaufforderung wählte, was eine Zulassungsregel in seinen persönlichen Einstellungen speichert. In der interaktiven CLI wird dies nur für diese Wahl selbst ausgegeben; spätere Aufrufe, die die gespeicherte Regel erfüllen, geben stattdessen `"config"` aus. In Agent SDK- oder nicht-interaktiven `-p`-Sitzungen geben sowohl die ursprüngliche Wahl als auch spätere Regelübereinstimmungen `"user_permanent"` aus. Wird als Akzeptanz behandelt.966 * `"user_permanent"`: Ausgegeben, wenn der Benutzer „Ja, und nicht mehr fragen für ..." bei einer Genehmigungsaufforderung wählte, was eine Zulassungsregel in seinen persönlichen Einstellungen speichert. In der interaktiven CLI wird dies nur für diese Wahl selbst ausgegeben; spätere Aufrufe, die die gespeicherte Regel erfüllen, geben stattdessen `"config"` aus. In Agent SDK- oder nicht-interaktiven `-p`-Sitzungen geben sowohl die ursprüngliche Wahl als auch spätere Regelübereinstimmungen `"user_permanent"` aus. Wird als Akzeptanz behandelt.

961 * `"user_temporary"`: Ausgegeben, wenn der Benutzer „Ja" bei einer Genehmigungsaufforderung für eine einmalige Genehmigung wählte, oder eine Option wählte, die Zugriff für den Rest der Sitzung bei einer Datei-Bearbeitungs- oder Lese-Aufforderung gewährt. In der interaktiven CLI wird dies nur für die Wahl selbst ausgegeben; spätere Aufrufe, die durch diese Sitzungs-Berechtigung erlaubt sind, geben stattdessen `"config"` aus. In Agent SDK- oder nicht-interaktiven `-p`-Sitzungen geben sowohl die Wahl als auch spätere Übereinstimmungen `"user_temporary"` aus. Wird als Akzeptanz behandelt.967 * `"user_temporary"`: Ausgegeben, wenn der Benutzer „Ja" bei einer Genehmigungsaufforderung für eine einmalige Genehmigung wählte, oder eine Option wählte, die Zugriff für den Rest der Sitzung bei einer Datei-Bearbeitungs- oder Lese-Aufforderung gewährt. In der interaktiven CLI wird dies nur für die Wahl selbst ausgegeben; spätere Aufrufe, die durch diesen Sitzungs-Zuschuss erlaubt sind, geben stattdessen `"config"` aus. In Agent SDK- oder nicht-interaktiven `-p`-Sitzungen geben sowohl die Wahl als auch spätere Übereinstimmungen `"user_temporary"` aus. Wird als Akzeptanz behandelt.

962 * `"user_abort"`: Ausgegeben, wenn der Benutzer die Genehmigungsaufforderung ohne Antwort geschlossen hat. In Agent SDK- und nicht-interaktiven `-p`-Sitzungen schließt dies auch das Unterbrechen des Zuges ein, während eine `canUseTool`- oder `--permission-prompt-tool`-Genehmigungsanfrage ausstehend ist; vor v2.1.216 meldete Claude Code diese Unterbrechung als `"user_reject"`. Wird als Ablehnung behandelt.968 * `"user_abort"`: Ausgegeben, wenn der Benutzer die Genehmigungsaufforderung ohne Antwort schloss. In Agent SDK- und nicht-interaktiven `-p`-Sitzungen schließt dies das Unterbrechen des Zuges ein, während eine `canUseTool`- oder `--permission-prompt-tool`-Genehmigungsanfrage ausstehend ist; vor v2.1.216 meldete Claude Code diese Unterbrechung als `"user_reject"`. Wird als Ablehnung behandelt.

963 * `"user_reject"`: Ausgegeben, wenn der Benutzer „Nein" bei einer Aufforderung wählte. In der interaktiven CLI wird dies nur für diese Wahl selbst ausgegeben; Aufrufe, die eine Ablehnungsregel in den persönlichen Einstellungen des Benutzers erfüllen, geben stattdessen `"config"` aus. In Agent SDK- oder nicht-interaktiven `-p`-Sitzungen geben Aufrufe, die eine Ablehnungsregel in persönlichen Einstellungen erfüllen, `"user_reject"` aus. Wird als Ablehnung behandelt.969 * `"user_reject"`: Ausgegeben, wenn der Benutzer „Nein" bei einer Aufforderung wählte. In der interaktiven CLI wird dies nur für diese Wahl selbst ausgegeben; Aufrufe, die eine Ablehnungsregel in den persönlichen Einstellungen des Benutzers erfüllen, geben stattdessen `"config"` aus. In Agent SDK- oder nicht-interaktiven `-p`-Sitzungen geben Aufrufe, die eine Ablehnungsregel in persönlichen Einstellungen erfüllen, `"user_reject"` aus. Wird als Ablehnung behandelt.

964* `tool_parameters` (wenn `OTEL_LOG_TOOL_DETAILS=1`): JSON-String mit Tool-spezifischen Parametern. Gleiche Form wie das [Tool-Ergebnis-Ereignis](#tool-result-event), minus Post-Execution-Felder wie `git_commit_id`. Werte können sich von `tool_result` für einen akzeptierten Aufruf unterscheiden, wenn die Genehmigungsentscheidung die Tool-Eingabe über `updatedInput` umschreibt. Verwenden Sie dieses Attribut, um zu sehen, welcher Befehl abgelehnt wurde, wenn `decision` `"reject"` ist.970* `tool_parameters` (wenn `OTEL_LOG_TOOL_DETAILS=1`): JSON-Zeichenkette mit Tool-spezifischen Parametern. Gleiche Form wie das [Tool-Ergebnis-Ereignis](#tool-result-event), minus Post-Ausführungs-Felder wie `git_commit_id`. Werte können sich von `tool_result` für einen akzeptierten Aufruf unterscheiden, wenn die Genehmigungsentscheidung die Tool-Eingabe über `updatedInput` umschreibt. Verwenden Sie dieses Attribut, um zu sehen, welcher Befehl abgelehnt wurde, wenn `decision` `"reject"` ist.

965 * Für `"sdk_host_builtin_mcp"`-Tools: `mcp_server_name` und `mcp_tool_name` sind auch enthalten, wenn `OTEL_LOG_TOOL_DETAILS` aus ist, weil die Host-Anwendung diese Namen definiert; ohne sie wäre ein abgelehnter Aufruf an einen dieser integrierten Server auf dem Standard-Stream nicht zuordenbar. Für benutzerkonfigurierte MCP-Server ist der `tool_name` des Ereignisses immer das Literal `"mcp_tool"`, und die Server- und Tool-Namen erscheinen nur in `tool_parameters` mit dem Flag an; Argument-Inhalt erfordert das Flag überall. Erfordert Claude Code v2.1.214 oder später971 * Für `"sdk_host_builtin_mcp"`-Tools: `mcp_server_name` und `mcp_tool_name` sind auch enthalten, wenn `OTEL_LOG_TOOL_DETAILS` aus ist, da die Host-Anwendung diese Namen definiert; ohne sie wäre ein abgelehnter Aufruf an einen dieser integrierten Server auf dem Standard-Stream nicht zuordenbar. Für benutzerkonfigurierte MCP-Server ist der `tool_name` des Ereignisses immer das Literal `"mcp_tool"`, und die Server- und Tool-Namen erscheinen nur in `tool_parameters` mit dem Flag an; Argument-Inhalte erfordern das Flag überall. Erfordert Claude Code v2.1.214 oder später

966 * Für Bash-Tool: enthält `bash_command`, `full_command`, `timeout`, `description`, `dangerouslyDisableSandbox`. Das Arbeitsbereichs-Bash-Tool der Desktop-App meldet auch `tool_name` als `Bash`, enthält aber nur `bash_command`, `full_command` und `timeout`972 * Für Bash-Tool: enthält `bash_command`, `full_command`, `timeout`, `description`, `dangerouslyDisableSandbox`. Das Workspace-Bash-Tool der Desktop-App meldet auch `tool_name` als `Bash`, enthält aber nur `bash_command`, `full_command` und `timeout`

967 * Für MCP-Tools: enthält `mcp_server_name`, `mcp_tool_name`973 * Für MCP-Tools: enthält `mcp_server_name`, `mcp_tool_name`

968 * Für Skill-Tool: enthält `skill_name`974 * Für Skill-Tool: enthält `skill_name`

969 * Für Agent-Tool oder Legacy-Task-Tool: enthält `subagent_type`975 * Für Agent-Tool oder Legacy-Task-Tool: enthält `subagent_type`


1003* `action`: `"login"` oder `"logout"`1009* `action`: `"login"` oder `"logout"`

1004* `success`: `"true"` oder `"false"`1010* `success`: `"true"` oder `"false"`

1005* `auth_method`: Authentifizierungsmethode, z. B. `"oauth"`1011* `auth_method`: Authentifizierungsmethode, z. B. `"oauth"`

1006* `error_category`: Kategorische Fehlerart, wenn die Aktion fehlgeschlagen ist. Die rohe Fehlermeldung wird niemals einbezogen1012* `error_category`: Kategorische Fehlerart, wenn die Aktion fehlgeschlagen ist. Die rohe Fehlermeldung ist niemals enthalten

1007* `status_code`: HTTP-Statuscode als String, wenn die Aktion mit einem HTTP-Fehler fehlgeschlagen ist1013* `status_code`: HTTP-Statuscode als Zeichenkette, wenn die Aktion mit einem HTTP-Fehler fehlgeschlagen ist

1008 1014 

1009<h4 id="mcp-server-connection-event">1015<h4 id="mcp-server-connection-event">

1010 MCP-Server-Verbindungs-Ereignis1016 MCP-Server-Verbindungs-Ereignis

1011</h4>1017</h4>

1012 1018 

1013Protokolliert, wenn ein MCP-Server verbunden wird, getrennt wird oder keine Verbindung herstellen kann.1019Protokolliert, wenn ein MCP-Server verbunden wird, die Verbindung trennt oder nicht verbunden werden kann.

1014 1020 

1015**Ereignisname**: `claude_code.mcp_server_connection`1021**Ereignisname**: `claude_code.mcp_server_connection`

1016 1022 


1026* `duration_ms`: Verbindungsversuch-Dauer in Millisekunden1032* `duration_ms`: Verbindungsversuch-Dauer in Millisekunden

1027* `error_code`: Fehlercode, wenn die Verbindung fehlgeschlagen ist1033* `error_code`: Fehlercode, wenn die Verbindung fehlgeschlagen ist

1028* `is_plugin`: `true`, wenn der Server von einem Plugin bereitgestellt wird, `false` andernfalls1034* `is_plugin`: `true`, wenn der Server von einem Plugin bereitgestellt wird, `false` andernfalls

1029* `plugin_id_hash` (wenn `is_plugin` `true` ist): Stabiler Hash des Plugin-Namens und Marketplace, zum Gruppieren von Ereignissen nach Plugin ohne den Namen freizulegen. Claude Code berechnet ihn wie unter dem [Plugin-Laden-Ereignis](#plugin-loaded-event) beschrieben1035* `plugin_id_hash` (wenn `is_plugin` `true` ist): Stabiler Hash des Plugin-Namens und des Marketplace, zum Gruppieren von Ereignissen nach Plugin ohne Offenlegung des Namens. Claude Code berechnet ihn wie unter dem [Plugin-Laden-Ereignis](#plugin-loaded-event) beschrieben

1030* `plugin.name` (wenn `is_plugin` `true` ist): Name des Plugins, das den Server bereitstellt. Für Drittanbieter-Plugins ist dieser Wert das Literal `"third-party"`, es sei denn, `OTEL_LOG_TOOL_DETAILS=1`; dies schützt Drittanbieter-Plugin-Namen davor, standardmäßig in Protokollen zu erscheinen. Plugins aus offiziellen Anthropic-Quellen werden immer nach Name identifiziert. Die Attribute `plugin_id_hash` und `plugin.name` fließen zu Ihrem eigenen Monitoring-Backend und werden nicht an Anthropic gesendet1036* `plugin.name` (wenn `is_plugin` `true` ist): Name des Plugins, das den Server bereitstellt. Für Drittanbieter-Plugins ist dieser die Literal-Zeichenkette `"third-party"`, es sei denn, `OTEL_LOG_TOOL_DETAILS=1`; dies schützt Drittanbieter-Plugin-Namen davor, standardmäßig in Protokollen zu erscheinen. Plugins aus offiziellen Anthropic-Quellen werden immer nach Name identifiziert. Die Attribute `plugin_id_hash` und `plugin.name` fließen zu Ihrem eigenen Monitoring-Backend und werden nicht an Anthropic gesendet

1031* `server_name` (wenn `OTEL_LOG_TOOL_DETAILS=1`): Konfigurierter Server-Name1037* `server_name` (wenn `OTEL_LOG_TOOL_DETAILS=1`): Konfigurierter Server-Name

1032* `error` (wenn `OTEL_LOG_TOOL_DETAILS=1`): Vollständige Fehlermeldung, wenn die Verbindung fehlgeschlagen ist1038* `error` (wenn `OTEL_LOG_TOOL_DETAILS=1`): Vollständige Fehlermeldung, wenn die Verbindung fehlgeschlagen ist

1033 1039 


1035 Interner Fehler-Ereignis1041 Interner Fehler-Ereignis

1036</h4>1042</h4>

1037 1043 

1038Protokolliert, wenn Claude Code einen unerwarteten internen Fehler abfängt. Nur der Fehlerklassen-Name und ein errno-ähnlicher Code werden aufgezeichnet. Die Fehlermeldung und Stack-Trace werden niemals einbezogen. Dieses Ereignis wird nicht ausgegeben, wenn gegen Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry ausgeführt wird, oder wenn `DISABLE_ERROR_REPORTING` gesetzt ist.1044Protokolliert, wenn Claude Code einen unerwarteten internen Fehler abfängt. Nur der Fehlerklassen-Name und ein errno-ähnlicher Code werden aufgezeichnet. Die Fehlermeldung und Stack-Trace sind niemals enthalten. Dieses Ereignis wird nicht ausgegeben, wenn gegen Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry ausgeführt wird, oder wenn `DISABLE_ERROR_REPORTING` gesetzt ist.

1039 1045 

1040**Ereignisname**: `claude_code.internal_error`1046**Ereignisname**: `claude_code.internal_error`

1041 1047 


1049* `error_code`: Node.js errno-Code wie `"ENOENT"`, wenn auf dem Fehler vorhanden1055* `error_code`: Node.js errno-Code wie `"ENOENT"`, wenn auf dem Fehler vorhanden

1050 1056 

1051<h4 id="plugin-installed-event">1057<h4 id="plugin-installed-event">

1052 Plugin-Installation-Ereignis1058 Plugin-Installiert-Ereignis

1053</h4>1059</h4>

1054 1060 

1055Protokolliert, wenn ein Plugin die Installation abgeschlossen hat, sowohl vom `claude plugin install`-CLI-Befehl als auch von der interaktiven `/plugin`-Benutzeroberfläche.1061Protokolliert, wenn ein Plugin die Installation abgeschlossen hat, sowohl vom `claude plugin install`-CLI-Befehl als auch von der interaktiven `/plugin`-UI.

1056 1062 

1057**Ereignisname**: `claude_code.plugin_installed`1063**Ereignisname**: `claude_code.plugin_installed`

1058 1064 


1069* `marketplace.name`: Marketplace, von dem das Plugin installiert wurde. Für Drittanbieter-Marketplaces ist dies nur enthalten, wenn `OTEL_LOG_TOOL_DETAILS=1`1075* `marketplace.name`: Marketplace, von dem das Plugin installiert wurde. Für Drittanbieter-Marketplaces ist dies nur enthalten, wenn `OTEL_LOG_TOOL_DETAILS=1`

1070 1076 

1071<h4 id="plugin-loaded-event">1077<h4 id="plugin-loaded-event">

1072 Plugin-Laden-Ereignis1078 Plugin-Geladen-Ereignis

1073</h4>1079</h4>

1074 1080 

1075Protokolliert einmal pro aktiviertem Plugin beim Sitzungsstart. Verwenden Sie dieses Ereignis, um zu inventarisieren, welche Plugins über Ihre Flotte aktiv sind, als Ergänzung zu `plugin_installed`, das die Installationsaktion selbst aufzeichnet.1081Protokolliert einmal pro aktiviertem Plugin beim Sitzungsstart. Verwenden Sie dieses Ereignis, um zu inventarisieren, welche Plugins über Ihre Flotte aktiv sind, als Ergänzung zu `plugin_installed`, das die Installationsaktion selbst aufzeichnet.


1083* `event.timestamp`: ISO 8601-Zeitstempel1089* `event.timestamp`: ISO 8601-Zeitstempel

1084* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)1090* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)

1085* `plugin.name`: Name des Plugins. Für Plugins außerhalb des offiziellen Marketplace und des integrierten Bundles ist der Wert `"third-party"`, es sei denn, `OTEL_LOG_TOOL_DETAILS=1`1091* `plugin.name`: Name des Plugins. Für Plugins außerhalb des offiziellen Marketplace und des integrierten Bundles ist der Wert `"third-party"`, es sei denn, `OTEL_LOG_TOOL_DETAILS=1`

1086* `marketplace.name`: Marketplace, von dem das Plugin installiert wurde, wenn bekannt. Unter der gleichen Bedingung wie `plugin.name` auf `"third-party"` redaktioniert1092* `marketplace.name`: Marketplace, von dem das Plugin installiert wurde, wenn bekannt. Unter derselben Bedingung wie `plugin.name` auf `"third-party"` redaktioniert

1087* `plugin.version`: Version aus dem Plugin-Manifest. Nur enthalten, wenn der Name nicht redaktioniert ist und das Manifest eine Version deklariert1093* `plugin.version`: Version aus dem Plugin-Manifest. Nur enthalten, wenn der Name nicht redaktioniert ist und das Manifest eine Version deklariert

1088* `plugin.scope`: Herkunftskategorie für das Plugin: `"official"`, `"community"`, `"org"`, `"user-local"` oder `"default-bundle"`1094* `plugin.scope`: Herkunftskategorie für das Plugin: `"official"`, `"community"`, `"org"`, `"user-local"` oder `"default-bundle"`

1089* `enabled_via`: wie das Plugin aktiviert wurde: `"default-enable"`, `"org-policy"`, `"admin-install"`, `"seed-mount"` oder `"user-install"`. Der Wert `"admin-install"` bedeutet, dass das Plugin in [**Organisationseinstellungen > Plugins**](https://claude.ai/admin-settings/plugins) für Ihre Organisation erforderlich oder automatisch installiert ist. Vor v2.1.246 meldete Claude Code diese Plugins als `"user-install"` oder `"seed-mount"`1095* `enabled_via`: wie das Plugin aktiviert wurde: `"default-enable"`, `"org-policy"`, `"admin-install"`, `"seed-mount"` oder `"user-install"`. Der Wert `"admin-install"` bedeutet, dass das Plugin in [**Organisationseinstellungen > Plugins & Skills**](https://claude.ai/admin-settings/skills?tab=inventory) für Ihre Organisation erforderlich oder automatisch installiert ist. Vor v2.1.246 meldete Claude Code diese Plugins als `"user-install"` oder `"seed-mount"`

1090* `plugin_id_hash`: Deterministischer Hash des Plugin-Namens und Marketplace, nur an Ihren konfigurierten Exporter gesendet. Ermöglicht es Ihnen, die unterschiedlichen Drittanbieter-Plugins, die über Ihre Flotte geladen werden, zu zählen, ohne ihre Namen aufzuzeichnen. Für [Plugins, die von claude.ai synchronisiert werden](/docs/de/plugins-reference#synced-plugins), hasht Claude Code den Plugin-Namen mit dem Marketplace-Namen, den claude.ai für das Plugin meldet, oder mit `synced` andernfalls. Vor v2.1.246 verwendete Claude Code den Marketplace-Namen, den claude.ai meldet, nicht im Hash1096* `plugin_id_hash`: deterministischer Hash des Plugin-Namens und des Marketplace, nur an Ihren konfigurierten Exporter gesendet. Ermöglicht es Ihnen, die unterschiedlichen Drittanbieter-Plugins, die über Ihre Flotte geladen werden, zu zählen, ohne ihre Namen aufzuzeichnen. Für [Plugins, die von claude.ai synchronisiert werden](/docs/de/plugins/loading#synced-plugins), hasht Claude Code den Plugin-Namen mit dem Marketplace-Namen, den claude.ai für das Plugin meldet, oder mit `synced` andernfalls. Vor v2.1.246 verwendete Claude Code den Marketplace-Namen, den claude.ai meldet, nicht im Hash

1091* `has_hooks`: ob das Plugin Hooks beiträgt1097* `has_hooks`: ob das Plugin Hooks beiträgt

1092* `has_mcp`: ob das Plugin MCP-Server beiträgt1098* `has_mcp`: ob das Plugin MCP-Server beiträgt

1093* `host_owned_mcp`: `true`, wenn der SDK-Host die MCP-Verbindungen dieses Plugins verwaltet und Claude Code das Lesen der MCP-Server-Konfiguration des Plugins übersprungen hat, `false` andernfalls. Erfordert Claude Code v2.1.172 oder später1099* `host_owned_mcp`: `true`, wenn der SDK-Host die MCP-Verbindungen dieses Plugins verwaltet und Claude Code das Lesen der MCP-Server-Konfiguration des Plugins übersprungen hat, `false` andernfalls. Erfordert Claude Code v2.1.172 oder später

1094* `skill_path_count`: Anzahl der Skill-Verzeichnisse, die das Plugin deklariert1100* `skill_path_count`: Anzahl der Skill-Verzeichnisse, die das Plugin deklariert

1095* `command_path_count`: Anzahl der Befehlsverzeichnisse, die das Plugin deklariert1101* `command_path_count`: Anzahl der Befehlsverzeichnisse, die das Plugin deklariert

1096* `agent_path_count`: Anzahl der Agent-Verzeichnisse, die das Plugin deklariert1102* `agent_path_count`: Anzahl der Agent-Verzeichnisse, die das Plugin deklariert

1097* `safe_mode`: `"true"`, wenn die Sitzung mit [`--safe-mode`](/docs/de/cli-reference) gestartet wurde, `"false"` andernfalls. Im sicheren Modus meldet dieses Ereignis nur die konfigurierte Inventur; die Befehle, Skills, Hooks und MCP-Server des Plugins werden nicht geladen. Erfordert Claude Code v2.1.169 oder später1103* `safe_mode`: `"true"`, wenn die Sitzung mit [`--safe-mode`](/docs/de/cli-reference) gestartet wurde, `"false"` andernfalls. Im sicheren Modus meldet dieses Ereignis nur konfigurierte Inventare; die Befehle, Skills, Hooks und MCP-Server des Plugins werden nicht geladen. Erfordert Claude Code v2.1.169 oder später

1098 1104 

1099<h4 id="skill-activated-event">1105<h4 id="skill-activated-event">

1100 Skill-Aktivierungs-Ereignis1106 Skill-Aktiviert-Ereignis

1101</h4>1107</h4>

1102 1108 

1103Protokolliert, wenn ein Skill aufgerufen wird, ob Claude ihn durch das Skill-Tool aufruft oder Sie ihn als `/`-Befehl ausführen.1109Protokolliert, wenn ein Skill aufgerufen wird, ob Claude ihn durch das Skill-Tool aufruft oder Sie ihn als `/`-Befehl ausführen.


1121 At-Mention-Ereignis1127 At-Mention-Ereignis

1122</h4>1128</h4>

1123 1129 

1124Protokolliert, wenn Claude Code eine `@`-Erwähnung in einer Eingabe auflöst. Nicht jede Erwähnung gibt ein Ereignis aus: Early-Exit-Pfade wie Genehmigungsverweigerungen, übergroße Dateien, PDF-Referenz-Anhänge und Fehler beim Auflisten von Verzeichnissen geben zurück, ohne zu protokollieren.1130Protokolliert, wenn Claude Code eine `@`-Erwähnung in einer Eingabeaufforderung auflöst. Nicht jede Erwähnung gibt ein Ereignis aus: Early-Exit-Pfade wie Genehmigungsablehnungen, übergroße Dateien, PDF-Referenz-Anhänge und Fehler beim Auflisten von Verzeichnissen geben zurück, ohne zu protokollieren.

1125 1131 

1126**Ereignisname**: `claude_code.at_mention`1132**Ereignisname**: `claude_code.at_mention`

1127 1133 


1156* `speed`: `"fast"` oder `"normal"`1162* `speed`: `"fast"` oder `"normal"`

1157 1163 

1158<h4 id="hook-registered-event">1164<h4 id="hook-registered-event">

1159 Hook-Registrierungs-Ereignis1165 Hook-Registriert-Ereignis

1160</h4>1166</h4>

1161 1167 

1162Protokolliert einmal pro konfiguriertem Hook beim Sitzungsstart. Verwenden Sie dieses Ereignis, um zu inventarisieren, welche Hooks über Ihre Flotte aktiv sind, als Ergänzung zu den Pro-Execution-Ereignissen `hook_execution_start` und `hook_execution_complete`.1168Protokolliert einmal pro konfiguriertem Hook beim Sitzungsstart. Verwenden Sie dieses Ereignis, um zu inventarisieren, welche Hooks über Ihre Flotte aktiv sind, als Ergänzung zu den Pro-Ausführungs-Ereignissen `hook_execution_start` und `hook_execution_complete`.

1163 1169 

1164**Ereignisname**: `claude_code.hook_registered`1170**Ereignisname**: `claude_code.hook_registered`

1165 1171 


1175* `safe_mode`: `"true"`, wenn die Sitzung mit [`--safe-mode`](/docs/de/cli-reference) gestartet wurde, `"false"` andernfalls. Erfordert Claude Code v2.1.169 oder später1181* `safe_mode`: `"true"`, wenn die Sitzung mit [`--safe-mode`](/docs/de/cli-reference) gestartet wurde, `"false"` andernfalls. Erfordert Claude Code v2.1.169 oder später

1176* `hook_matcher` (wenn `OTEL_LOG_TOOL_DETAILS=1`): die Matcher-Zeichenkette aus der Hook-Konfiguration, wenn eine gesetzt ist1182* `hook_matcher` (wenn `OTEL_LOG_TOOL_DETAILS=1`): die Matcher-Zeichenkette aus der Hook-Konfiguration, wenn eine gesetzt ist

1177* `plugin.name` (wenn `hook_source` `"pluginHook"` ist): Name des beitragenden Plugins. Für Plugins außerhalb des offiziellen Marketplace und des integrierten Bundles ist der Wert `"third-party"`, es sei denn, `OTEL_LOG_TOOL_DETAILS=1`1183* `plugin.name` (wenn `hook_source` `"pluginHook"` ist): Name des beitragenden Plugins. Für Plugins außerhalb des offiziellen Marketplace und des integrierten Bundles ist der Wert `"third-party"`, es sei denn, `OTEL_LOG_TOOL_DETAILS=1`

1178* `plugin_id_hash` (wenn `hook_source` `"pluginHook"` ist): Deterministischer Hash des Plugin-Namens und Marketplace, nur an Ihren konfigurierten Exporter gesendet. Ermöglicht es Ihnen, unterschiedliche beitragende Plugins zu zählen, ohne ihre Namen aufzuzeichnen. Claude Code berechnet ihn wie unter dem [Plugin-Laden-Ereignis](#plugin-loaded-event) beschrieben1184* `plugin_id_hash` (wenn `hook_source` `"pluginHook"` ist): deterministischer Hash des Plugin-Namens und des Marketplace, nur an Ihren konfigurierten Exporter gesendet. Ermöglicht es Ihnen, unterschiedliche beitragende Plugins zu zählen, ohne ihre Namen aufzuzeichnen. Claude Code berechnet ihn wie unter dem [Plugin-Geladen-Ereignis](#plugin-loaded-event) beschrieben

1179 1185 

1180<h4 id="hook-execution-start-event">1186<h4 id="hook-execution-start-event">

1181 Hook-Ausführungs-Start-Ereignis1187 Hook-Ausführungs-Start-Ereignis


1194* `hook_event`: Hook-Ereignistyp, z. B. `"PreToolUse"` oder `"PostToolUse"`1200* `hook_event`: Hook-Ereignistyp, z. B. `"PreToolUse"` oder `"PostToolUse"`

1195* `hook_name`: Vollständiger Hook-Name einschließlich Matcher, z. B. `"PreToolUse:Write"`1201* `hook_name`: Vollständiger Hook-Name einschließlich Matcher, z. B. `"PreToolUse:Write"`

1196* `num_hooks`: Anzahl der übereinstimmenden Hook-Befehle1202* `num_hooks`: Anzahl der übereinstimmenden Hook-Befehle

1197* `managed_only`: `"true"`, wenn nur verwaltete Richtlinien-Hooks erlaubt sind1203* `managed_only`: `"true"`, wenn nur verwaltete Richtlinien-Hooks zulässig sind

1198* `hook_source`: `"policySettings"` oder `"merged"`1204* `hook_source`: `"policySettings"` oder `"merged"`

1199* `safe_mode`: `"true"`, wenn die Sitzung mit [`--safe-mode`](/docs/de/cli-reference) gestartet wurde, `"false"` andernfalls. Erfordert Claude Code v2.1.169 oder später1205* `safe_mode`: `"true"`, wenn die Sitzung mit [`--safe-mode`](/docs/de/cli-reference) gestartet wurde, `"false"` andernfalls. Erfordert Claude Code v2.1.169 oder später

1200* `hook_definitions`: JSON-serialisierte Hook-Konfiguration. Nur enthalten, wenn sowohl detaillierte Beta-Verfolgung als auch `OTEL_LOG_TOOL_DETAILS=1` aktiviert sind1206* `hook_definitions`: JSON-serialisierte Hook-Konfiguration. Nur enthalten, wenn sowohl detaillierte Beta-Verfolgung als auch `OTEL_LOG_TOOL_DETAILS=1` aktiviert sind


1218* `num_hooks`: Anzahl der übereinstimmenden Hook-Befehle1224* `num_hooks`: Anzahl der übereinstimmenden Hook-Befehle

1219* `num_success`: Anzahl, die erfolgreich abgeschlossen wurde1225* `num_success`: Anzahl, die erfolgreich abgeschlossen wurde

1220* `num_blocking`: Anzahl, die eine blockierende Entscheidung zurückgab1226* `num_blocking`: Anzahl, die eine blockierende Entscheidung zurückgab

1221* `num_non_blocking_error`: Anzahl, die ohne Blockierung fehlgeschlagen ist1227* `num_non_blocking_error`: Anzahl, die fehlgeschlagen ist, ohne zu blockieren

1222* `num_cancelled`: Anzahl, die vor Abschluss abgebrochen wurde1228* `num_cancelled`: Anzahl, die vor Abschluss abgebrochen wurde

1223* `total_duration_ms`: Wanduhr-Dauer aller übereinstimmenden Hooks1229* `total_duration_ms`: Wanduhr-Dauer aller übereinstimmenden Hooks

1224* `stdout_chars`: Gesamtzahl der Zeichen von stdout über die übereinstimmenden Hooks, die erfolgreich waren. Erfordert Claude Code v2.1.280 oder später1230* `stdout_chars`: Gesamtzeichen von stdout über die übereinstimmenden Hooks, die erfolgreich waren. Erfordert Claude Code v2.1.280 oder später

1225* `additional_context_chars`: Gesamtzahl der Zeichen von `additionalContext`, die von den übereinstimmenden Hooks zurückgegeben wurden. Erfordert Claude Code v2.1.280 oder später1231* `additional_context_chars`: Gesamtzeichen von `additionalContext`, die von den übereinstimmenden Hooks zurückgegeben wurden. Erfordert Claude Code v2.1.280 oder später

1226* `system_message_chars`: Gesamtzahl der Zeichen von `systemMessage`, die von den übereinstimmenden Hooks zurückgegeben wurden. Erfordert Claude Code v2.1.280 oder später1232* `system_message_chars`: Gesamtzeichen von `systemMessage`, die von den übereinstimmenden Hooks zurückgegeben wurden. Erfordert Claude Code v2.1.280 oder später

1227* `initial_user_message_chars`: Gesamtzahl der Zeichen von `initialUserMessage`, die von den übereinstimmenden Hooks zurückgegeben wurden. Erfordert Claude Code v2.1.280 oder später1233* `initial_user_message_chars`: Gesamtzeichen von `initialUserMessage`, die von den übereinstimmenden Hooks zurückgegeben wurden. Erfordert Claude Code v2.1.280 oder später

1228* `num_outputs_persisted`: Anzahl der Hook-Ausgaben über die [10.000-Zeichen-Grenze](/docs/de/hooks#json-output), die Claude Code in einer Datei gespeichert hat. Erfordert Claude Code v2.1.280 oder später1234* `num_outputs_persisted`: Anzahl der Hook-Ausgaben über die [10.000-Zeichen-Obergrenze](/docs/de/hooks#json-output), die Claude Code in einer Datei gespeichert hat. Erfordert Claude Code v2.1.280 oder später

1229* `managed_only`: `"true"`, wenn nur verwaltete Richtlinien-Hooks erlaubt sind1235* `managed_only`: `"true"`, wenn nur verwaltete Richtlinien-Hooks zulässig sind

1230* `hook_source`: `"policySettings"` oder `"merged"`1236* `hook_source`: `"policySettings"` oder `"merged"`

1231* `safe_mode`: `"true"`, wenn die Sitzung mit [`--safe-mode`](/docs/de/cli-reference) gestartet wurde, `"false"` andernfalls. Erfordert Claude Code v2.1.169 oder später1237* `safe_mode`: `"true"`, wenn die Sitzung mit [`--safe-mode`](/docs/de/cli-reference) gestartet wurde, `"false"` andernfalls. Erfordert Claude Code v2.1.169 oder später

1232* `hook_definitions`: JSON-serialisierte Hook-Konfiguration. Nur enthalten, wenn sowohl detaillierte Beta-Verfolgung als auch `OTEL_LOG_TOOL_DETAILS=1` aktiviert sind1238* `hook_definitions`: JSON-serialisierte Hook-Konfiguration. Nur enthalten, wenn sowohl detaillierte Beta-Verfolgung als auch `OTEL_LOG_TOOL_DETAILS=1` aktiviert sind


1247* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)1253* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)

1248* `plugin_id`: Plugin-Kennung in `<name>@<marketplace>`-Form1254* `plugin_id`: Plugin-Kennung in `<name>@<marketplace>`-Form

1249* `hook_event`: Hook-Ereignistyp, der die Metriken ausgegeben hat1255* `hook_event`: Hook-Ereignistyp, der die Metriken ausgegeben hat

1250* Bis zu 20 von Plugin ausgegebene Metrik-Schlüssel. Namen entsprechen `^[a-z][a-z0-9_]{0,39}$`. Werte sind Boolean oder Zahl.1256* Bis zu 20 Plugin-ausgegebene Metrik-Schlüssel. Namen entsprechen `^[a-z][a-z0-9_]{0,39}$`. Werte sind Boolean oder Zahl.

1251 1257 

1252<h4 id="compaction-event">1258<h4 id="compaction-event">

1253 Kompaktierungs-Ereignis1259 Kompaktierungs-Ereignis


1272* `precompute_reuse`: Nur gesetzt, wenn `trigger` `"manual"` ist. Auto-Kompaktierung kann eine Zusammenfassung im Hintergrund vorbereiten, bevor das Kontextfenster voll wird, und dieses Attribut zeichnet auf, ob `/compact` diese vorbereitete Zusammenfassung wiederverwendet hat. `"hit"` bedeutet, dass sie wiederverwendet wurde; `"miss_custom_instructions"`, `"miss_hook"` und `"miss_not_ready"` geben den Grund an, warum stattdessen eine frische Zusammenfassung berechnet wurde. Erfordert Claude Code v2.1.153 oder später1278* `precompute_reuse`: Nur gesetzt, wenn `trigger` `"manual"` ist. Auto-Kompaktierung kann eine Zusammenfassung im Hintergrund vorbereiten, bevor das Kontextfenster voll wird, und dieses Attribut zeichnet auf, ob `/compact` diese vorbereitete Zusammenfassung wiederverwendet hat. `"hit"` bedeutet, dass sie wiederverwendet wurde; `"miss_custom_instructions"`, `"miss_hook"` und `"miss_not_ready"` geben den Grund an, warum stattdessen eine frische Zusammenfassung berechnet wurde. Erfordert Claude Code v2.1.153 oder später

1273 1279 

1274<h4 id="subagent-completed-event">1280<h4 id="subagent-completed-event">

1275 Subagent-Abschluss-Ereignis1281 Subagent-Abgeschlossen-Ereignis

1276</h4>1282</h4>

1277 1283 

1278Protokolliert, wenn ein [Subagent](/docs/de/sub-agents) abgeschlossen ist und sein Ergebnis an das Gespräch zurückgibt, das ihn gestartet hat. Verwenden Sie es, um Tool-Nutzung und Laufzeit nach Subagent-Typ zu aggregieren; für Token- oder Kosten-Aggregationen verwenden Sie den [Token-Zähler](#token-counter) und [Kostenzähler](#cost-counter), gefiltert nach `query_source` `"subagent"`, da das `total_tokens` dieses Ereignisses nur die endgültige Anfrage abdeckt. Die Kategorie `"subagent"` zählt auch Anfragen von Agent-basierten Hooks, die kein Subagent-Ereignis ausgeben.1284Protokolliert, wenn ein [Subagent](/docs/de/sub-agents) fertig wird und sein Ergebnis an das Gespräch zurückgibt, das ihn gestartet hat. Verwenden Sie es, um Tool-Nutzung und Laufzeit nach Subagent-Typ zu aggregieren; für Token- oder Kosten-Aggregationen verwenden Sie den [Token-Zähler](#token-counter) und [Kostenzähler](#cost-counter), gefiltert nach `query_source` `"subagent"`, da das `total_tokens` dieses Ereignisses nur die endgültige Anfrage abdeckt. Die Kategorie `"subagent"` zählt auch Anfragen von Agent-basierten Hooks, die kein Subagent-Ereignis ausgeben.

1279 1285 

1280**Ereignisname**: `claude_code.subagent_completed`1286**Ereignisname**: `claude_code.subagent_completed`

1281 1287 


1286* `event.timestamp`: ISO 8601-Zeitstempel1292* `event.timestamp`: ISO 8601-Zeitstempel

1287* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)1293* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)

1288* `agent_type`: Der Subagent-Typ. Integrierte Agent-Namen und Agenten aus offiziellen Marketplace-Plugins werden wörtlich angezeigt; andere Agent-Namen werden durch `"custom"` ersetzt, es sei denn, `OTEL_LOG_TOOL_DETAILS=1` ist gesetzt1294* `agent_type`: Der Subagent-Typ. Integrierte Agent-Namen und Agenten aus offiziellen Marketplace-Plugins werden wörtlich angezeigt; andere Agent-Namen werden durch `"custom"` ersetzt, es sei denn, `OTEL_LOG_TOOL_DETAILS=1` ist gesetzt

1289* `agent.source`: Woher die Agent-Definition kam: `built-in`, `plugin` oder die Einstellungsquelle, die einen benutzerdefinierten Agent definiert, z. B. `userSettings` oder `projectSettings`1295* `agent.source`: Woher die Agent-Definition kam: `built-in`, `plugin` oder die Einstellungsquelle, die einen benutzerdefinierten Agent definierte, z. B. `userSettings` oder `projectSettings`

1290* `is_built_in`: Ob der Subagent ein integrierter Agent-Typ ist1296* `is_built_in`: Ob der Subagent ein integrierter Agent-Typ ist

1291* `is_async`: Ob der Subagent im [Hintergrund](/docs/de/sub-agents#run-subagents-in-foreground-or-background) ausgeführt wurde1297* `is_async`: Ob der Subagent im [Hintergrund](/docs/de/sub-agents#run-subagents-in-foreground-or-background) ausgeführt wurde

1292* `total_tokens`: Der Token-Fußabdruck der endgültigen API-Anfrage des Subagenten: diese eine Anfrage's Eingabe-, Cache-Erstellungs-, Cache-Lese- und Ausgabe-Token, ungefähr die Kontextgröße des Subagenten beim Abschluss. Keine Summe über den Lauf1298* `total_tokens`: Der Token-Fußabdruck der endgültigen API-Anfrage des Subagenten: dieser einen Anfrage's Eingabe-, Cache-Erstellungs-, Cache-Lese- und Ausgabe-Token, ungefähr die Kontextgröße des Subagenten beim Abschluss. Keine Summe über den Lauf

1293* `total_tool_uses`: Anzahl der Tool-Aufrufe, die der Subagent über den ganzen Lauf gemacht hat1299* `total_tool_uses`: Anzahl der Tool-Aufrufe, die der Subagent über den ganzen Lauf hinweg gemacht hat

1294* `duration_ms`: Laufzeit in Millisekunden1300* `duration_ms`: Laufzeit in Millisekunden

1295* `model`: Das Modell, das der Subagent ausgeführt hat1301* `model`: Das Modell, das der Subagent ausgeführt wurde

1296* `final_model`: Das Modell, das die endgültige Antwort des Subagenten erzeugt hat, das sich von `model` nach einem Mid-Run-Wechsel wie einem Fallback unterscheidet. Erfordert Claude Code v2.1.212 oder später1302* `final_model`: Das Modell, das die endgültige Antwort des Subagenten erzeugt hat, das sich von `model` nach einem Mid-Run-Wechsel wie einem Fallback unterscheidet. Erfordert Claude Code v2.1.212 oder später

1297* `model_swapped`: Ob mehr als ein Modell die Anfragen des Subagenten bedient hat. Erfordert Claude Code v2.1.212 oder später1303* `model_swapped`: Ob mehr als ein Modell die Anfragen des Subagenten bedient hat. Erfordert Claude Code v2.1.212 oder später

1298* `plugin_id_hash`, `plugin.name`: Vorhanden für von Plugins bereitgestellte Agenten. Offizielle Marketplace-Plugin-Namen werden wörtlich angezeigt; andere Plugin-Namen werden durch `"third-party"` ersetzt, es sei denn, `OTEL_LOG_TOOL_DETAILS=1` ist gesetzt1304* `plugin_id_hash`, `plugin.name`: Vorhanden für Plugin-bereitgestellte Agenten. Offizielle Marketplace-Plugin-Namen werden wörtlich angezeigt; andere Plugin-Namen werden durch `"third-party"` ersetzt, es sei denn, `OTEL_LOG_TOOL_DETAILS=1` ist gesetzt

1299 1305 

1300<h4 id="feedback-survey-event">1306<h4 id="feedback-survey-event">

1301 Feedback-Umfrage-Ereignis1307 Feedback-Umfrage-Ereignis

1302</h4>1308</h4>

1303 1309 

1304Protokolliert, wenn eine Sitzungsqualitäts-Umfrage angezeigt oder beantwortet wird. Siehe [Sitzungsqualitäts-Umfragen](/docs/de/data-usage#session-quality-surveys) für was die Umfragen sammeln und wie Sie sie steuern.1310Protokolliert, wenn eine Sitzungsqualitäts-Umfrage angezeigt oder beantwortet wird. Siehe [Sitzungsqualitäts-Umfragen](/docs/de/data-usage#session-quality-surveys) für was die Umfragen erfassen und wie Sie sie steuern.

1305 1311 

1306**Ereignisname**: `claude_code.feedback_survey`1312**Ereignisname**: `claude_code.feedback_survey`

1307 1313 


1315* `appearance_id`: Eindeutige ID, die die Ereignisse verknüpft, die für eine Umfrage-Instanz ausgegeben werden1321* `appearance_id`: Eindeutige ID, die die Ereignisse verknüpft, die für eine Umfrage-Instanz ausgegeben werden

1316* `survey_type`: Welche Umfrage das Ereignis erzeugt hat. `"session"` ist die Aufforderung „Wie macht Claude es?" Bewertung1322* `survey_type`: Welche Umfrage das Ereignis erzeugt hat. `"session"` ist die Aufforderung „Wie macht Claude es?" Bewertung

1317* `response`: Die Auswahl des Benutzers auf `responded`-Ereignissen1323* `response`: Die Auswahl des Benutzers auf `responded`-Ereignissen

1318* `enabled_via_override`: `true`, wenn [`CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL`](/docs/de/env-vars) gesetzt ist. Ausgegeben als Boolean, nicht als String. Vorhanden auf `session`-Umfrage-Ereignissen. Filtern Sie nach diesem Attribut, um zu bestätigen, dass die Überschreibung über eine Flotte angewendet wird1324* `enabled_via_override`: `true`, wenn [`CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL`](/docs/de/env-vars) gesetzt ist. Ausgegeben als Boolean, nicht als Zeichenkette. Vorhanden auf `session`-Umfrage-Ereignissen. Filtern Sie nach diesem Attribut, um zu bestätigen, dass die Überschreibung über eine Flotte angewendet wird

1319 1325 

1320<h4 id="retention-sweep-event">1326<h4 id="retention-sweep-event">

1321 Aufbewahrungslösch-Ereignis1327 Aufbewahrungslösch-Ereignis

1322</h4>1328</h4>

1323 1329 

1324Protokolliert einmal pro Lauf des Aufbewahrungslösch-Sweeps, der [Sitzungstranskripte und andere Anwendungsdaten](/docs/de/claude-directory#cleaned-up-automatically) löscht, die älter als die [`cleanupPeriodDays`](/docs/de/settings-reference#cleanupperioddays)-Einstellung sind. Claude Code führt den Sweep im Hintergrund höchstens einmal pro Sitzung aus, und ein Lauf, der nichts löscht, gibt trotzdem das Ereignis aus. Wenn Claude Code den Sweep in einer Sitzung auf der gleichen Maschine in den letzten 24 Stunden ausgeführt hat, verzögert er den Sweep dieser Sitzung um mindestens 10 Minuten, daher gibt eine Sitzung, die früher beendet wird, nichts aus. Wenn Sie `claude -p` mit `--bare` ausführen, führt Claude Code den Sweep nicht aus und gibt nichts aus.1330Protokolliert einmal pro Lauf des Aufbewahrungslösch-Sweeps, der [Sitzungstranskripte und andere Anwendungsdaten](/docs/de/claude-directory#cleaned-up-automatically) löscht, die älter als die Einstellung [`cleanupPeriodDays`](/docs/de/settings-reference#cleanupperioddays) sind. Claude Code führt den Sweep im Hintergrund höchstens einmal pro Sitzung aus, und ein Lauf, der nichts löscht, gibt trotzdem das Ereignis aus. Wenn Claude Code den Sweep in einer Sitzung auf derselben Maschine in den letzten 24 Stunden ausgeführt hat, verzögert er den Sweep dieser Sitzung um mindestens 10 Minuten, daher gibt eine Sitzung, die früher beendet wird, nichts aus. Wenn Sie `claude -p` mit `--bare` ausführen, führt Claude Code den Sweep nicht aus und gibt nichts aus.

1325 1331 

1326Wie jedes OTel-Ereignis auf dieser Seite geht es nur an den Telemetrie-Backend, den Sie konfigurieren. Erfordert Claude Code v2.1.227 oder später.1332Wie jedes OTel-Ereignis auf dieser Seite geht es nur an das Telemetrie-Backend, das Sie konfigurieren. Erfordert Claude Code v2.1.227 oder später.

1327 1333 

1328Wenn Claude Code die Aufbewahrungsfrist nicht sicher bestimmen kann, pausiert es den Sweep und gibt das Ereignis mit `result` auf `"skipped"` und einem `skip_reason` aus. Wenn [verwaltete Einstellungen](/docs/de/server-managed-settings) `cleanupPeriodDays` setzen, pinnt der verwaltete Wert die Aufbewahrungsfrist und der Sweep läuft auch wenn eine Einstellungsdatei in einem niedrigeren Prioritätsbereich kaputt oder ungültig ist. Wenn `managed-settings.json` selbst nicht gelesen werden kann, pausiert Claude Code den Sweep trotzdem nicht, es sei denn, die [verwaltete Ebene](/docs/de/managed-settings#how-claude-code-combines-managed-sources) liefert `cleanupPeriodDays` von anderswo, z. B. von Server-verwalteten Einstellungen oder einem `managed-settings.d/`-Drop-In neben der kaputten Datei. Die Lösch-Zähler-Attribute sind nur vorhanden, wenn `result` `"complete"` ist.1334Wenn Claude Code die Aufbewahrungsfrist nicht sicher bestimmen kann, pausiert es den Sweep und gibt das Ereignis mit `result` auf `"skipped"` und einem `skip_reason` aus. Wenn [verwaltete Einstellungen](/docs/de/server-managed-settings) `cleanupPeriodDays` setzen, pinnt der verwaltete Wert die Aufbewahrungsfrist und der Sweep läuft auch wenn eine Einstellungsdatei in einem niedrigeren Prioritätsbereich unterbrochen oder ungültig ist. Wenn `managed-settings.json` selbst nicht gelesen werden kann, pausiert Claude Code den Sweep trotzdem nicht, es sei denn, die [verwaltete Ebene](/docs/de/managed-settings#how-claude-code-combines-managed-sources) liefert `cleanupPeriodDays` von anderswo, z. B. Server-verwaltete Einstellungen oder ein `managed-settings.d/`-Drop-In neben der unterbrochenen Datei. Die Lösch-Zähler-Attribute sind nur vorhanden, wenn `result` `"complete"` ist.

1329 1335 

1330**Ereignisname**: `claude_code.retention_sweep`1336**Ereignisname**: `claude_code.retention_sweep`

1331 1337 


1335* `event.name`: `"retention_sweep"`1341* `event.name`: `"retention_sweep"`

1336* `event.timestamp`: ISO 8601-Zeitstempel1342* `event.timestamp`: ISO 8601-Zeitstempel

1337* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)1343* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)

1338* `result`: `"complete"`, wenn der Sweep ausgeführt wurde, `"skipped"`, wenn Claude Code ihn pausiert hat1344* `result`: `"complete"`, wenn der Sweep ausgeführt wurde, `"skipped"`, wenn Claude Code ihn pausierte

1339* `period_days`: Der `cleanupPeriodDays`-Wert aus zusammengeführten Einstellungen, in Tagen, oder `30`, wenn keine Quelle ihn setzt. Bei übersprungenen Ereignissen der Wert, den der Sweep verwendet hätte, berechnet aus den Einstellungsquellen, die Claude Code lesen konnte1345* `period_days`: Der `cleanupPeriodDays`-Wert aus zusammengeführten Einstellungen, in Tagen, oder `30`, wenn keine Quelle ihn setzt. Bei übersprungenen Ereignissen der Wert, den der Sweep verwendet hätte, berechnet aus den Einstellungsquellen, die Claude Code lesen konnte

1340* `used_default`: `"true"`, wenn keine lesbare Einstellungsquelle `cleanupPeriodDays` setzt, `"false"` andernfalls. Bei abgeschlossenen Ereignissen bedeutet `"true"`, dass der 30-Tage-Standard angewendet wurde1346* `used_default`: `"true"`, wenn keine lesbare Einstellungsquelle `cleanupPeriodDays` setzt, `"false"` andernfalls. Bei abgeschlossenen Ereignissen bedeutet `"true"`, dass der 30-Tage-Standard angewendet wurde

1341* `skip_reason`: Warum Claude Code den Sweep pausiert hat. Nur vorhanden, wenn `result` `"skipped"` ist:1347* `skip_reason`: Warum Claude Code den Sweep pausierte. Nur vorhanden, wenn `result` `"skipped"` ist:

1342 * `"user_source_disabled"`: Benutzereinstellungen sind ausgeschlossen, z. B. durch das [`--setting-sources`](/docs/de/cli-reference#cli-flags)-Flag oder die [`settingSources`](/docs/de/agent-sdk/typescript#options)-Option des SDK, und keine aktivierte Quelle liefert `cleanupPeriodDays`1348 * `"user_source_disabled"`: Benutzereinstellungen sind ausgeschlossen, z. B. durch das Flag [`--setting-sources`](/docs/de/cli-reference#cli-flags) oder die Option [`settingSources`](/docs/de/agent-sdk/typescript#options) des SDK, und keine aktivierte Quelle liefert `cleanupPeriodDays`

1343 * `"settings_unknowable"`: Eine Einstellungsdatei konnte nicht gelesen oder geparst werden, daher kann `cleanupPeriodDays` oder `desktopSessionCleanupPeriodDays` auf einen Wert gesetzt sein, den Claude Code nicht sehen kann1349 * `"settings_unknowable"`: Eine Einstellungsdatei konnte nicht gelesen oder geparst werden, daher kann `cleanupPeriodDays` oder `desktopSessionCleanupPeriodDays` auf einen Wert gesetzt sein, den Claude Code nicht sehen kann

1344 * `"settings_invalid_key_set"`: Einstellungen haben Validierungsfehler und `cleanupPeriodDays` oder `desktopSessionCleanupPeriodDays` ist explizit gesetzt, daher könnte ein Fallback auf den Standard Dateien gegen diese Einstellung löschen oder behalten1350 * `"settings_invalid_key_set"`: Einstellungen haben Validierungsfehler und `cleanupPeriodDays` oder `desktopSessionCleanupPeriodDays` ist explizit gesetzt, daher könnte ein Fallback auf den Standard Dateien gegen diese Einstellung löschen oder behalten

1345* `transcripts_deleted`: Anzahl der Sitzungstranskripte, die Top-Level-`~/.claude/projects/*/*.jsonl`-Dateien, die der Sweep gelöscht hat1351* `transcripts_deleted`: Anzahl der Sitzungstranskripte, die Top-Level-Dateien `~/.claude/projects/*/*.jsonl`, die der Sweep gelöscht hat

1346* `transcripts_exempted_desktop`: Anzahl der Transkripte, die älter als die Aufbewahrungsfrist sind und die der Sweep unter der [Claude Desktop und Cowork-Regel](/docs/de/claude-directory#cleaned-up-automatically) behalten hat. Diese zählen nicht zu `files_past_cutoff`. Erfordert Claude Code v2.1.248 oder später1352* `transcripts_exempted_desktop`: Anzahl der Transkripte, die über die Aufbewahrungsfrist hinaus sind und die der Sweep unter der [Claude Desktop- und Cowork-Regel](/docs/de/claude-directory#cleaned-up-automatically) behalten hat. Diese zählen nicht zu `files_past_cutoff`. Erfordert Claude Code v2.1.248 oder später

1347* `session_files_deleted`: Anzahl der Artefakte, die der Sitzungs-Dateien-Sweep gelöscht hat: Transkripte plus Pro-Sitzungs-Begleitdateien wie Sidecars, Aufzeichnungen und Tool-Ergebnisse1353* `session_files_deleted`: Anzahl der Artefakte, die der Sitzungs-Dateien-Sweep gelöscht hat: Transkripte plus Pro-Sitzungs-Begleitdateien wie Sidecars, Aufzeichnungen und Tool-Ergebnisse

1348* `artifacts_deleted`: Gesamtzahl der Elemente, die der Sweep über die Datenverzeichnisse, die er abdeckt, gelöscht hat, einschließlich der Sitzungsdateien. Einige Sweeps zählen einen ganzen entfernten Verzeichnisbaum als ein Element und ein paar Cleanup-Durchläufe tragen nicht zum Zähler bei, daher behandeln Sie den Wert als Untergrenze statt als genaue Dateianzahl1354* `artifacts_deleted`: Gesamtzahl der Elemente, die der Sweep über die Datenverzeichnisse hinweg gelöscht hat, die er abdeckt, einschließlich der Sitzungsdateien. Einige Sweeps zählen einen ganzen entfernten Verzeichnisbaum als ein Element und ein paar Cleanup-Durchläufe tragen nicht zum Zähler bei, daher behandeln Sie den Wert als Untergrenze statt als genaue Dateianzahl

1349* `files_retained_fresh`: Dateien, die inspiziert und behalten wurden, weil sie noch innerhalb der Aufbewahrungsfrist sind. Nur Pro-Datei-Sweeps zählen diese, daher ist der Wert eine Untergrenze; ein Nicht-Null-Wert ist der normale stabile Zustand1355* `files_retained_fresh`: Dateien, die inspiziert und behalten wurden, weil sie noch innerhalb der Aufbewahrungsfrist sind. Nur Pro-Datei-Sweeps zählen diese, daher ist der Wert eine Untergrenze; ein Wert ungleich Null ist der normale stabile Zustand

1350* `files_past_cutoff`: Dateien, die älter als die Aufbewahrungsfrist sind und die der Sweep nicht löschen konnte, z. B. wegen eines Berechtigungsfehlers oder einer offenen Datei. Ein Wert über Null bedeutet, dass Dateien die konfigurierte Aufbewahrungsfrist überlebten; Null ist kein Beweis, dass keine es taten, weil ein fehlgeschlagenes Entfernen eines ganzen Verzeichnisses zu `error_count` statt zählt1356* `files_past_cutoff`: Dateien, die älter als die Aufbewahrungsfrist sind und die der Sweep nicht löschen konnte, z. B. wegen eines Berechtigungsfehlers oder einer offenen Datei. Ein Wert über Null bedeutet, dass Dateien die konfigurierte Aufbewahrungsfrist überdauert haben; Null ist kein Beweis, dass keine, weil ein fehlgeschlagenes Entfernen eines ganzen Verzeichnisses zu `error_count` statt zählt

1351* `error_count`: Anzahl der Fehler, die der Sweep beim Auflisten oder Löschen von Dateien angetroffen hat1357* `error_count`: Anzahl der Fehler, die der Sweep beim Auflisten oder Löschen von Dateien angetroffen hat

1352 1358 

1353<h4 id="managed-settings-resolved-event">1359<h4 id="managed-settings-resolved-event">

1354 Verwaltete Einstellungen aufgelöst-Ereignis1360 Verwaltete Einstellungen Aufgelöst-Ereignis

1355</h4>1361</h4>

1356 1362 

1357Protokolliert mit den [verwalteten Einstellungen](/docs/de/managed-settings), die eine Sitzung aufgelöst hat: einmal beim Sitzungsstart, erneut wenn sich entweder die verwalteten Einstellungen oder der Zustand des [Policy-Helpers](/docs/de/managed-settings#compute-the-policy-with-a-helper-program) während der Sitzung ändert, und wenn Claude Code sich weigert zu starten oder die Sitzung aus einem der Gründe beendet, die das Attribut `error.type` auflistet.1363Protokolliert mit den [verwalteten Einstellungen](/docs/de/managed-settings), die eine Sitzung aufgelöst hat: einmal beim Sitzungsstart, erneut wenn sich entweder die verwalteten Einstellungen oder der Zustand des [Policy-Helfers](/docs/de/managed-settings#compute-the-policy-with-a-helper-program) während der Sitzung ändert, und wenn Claude Code sich weigert zu starten oder die Sitzung aus einem der Gründe beendet, die das Attribut `error.type` auflistet.

1358Verwenden Sie dieses Ereignis, um Maschinen zu finden, die auf einer unerwarteten verwalteten Quelle laufen, Maschinen, deren Policy-Helper fehlschlägt, und den Grund, warum eine Maschine sich weigert zu starten.1364Verwenden Sie dieses Ereignis, um Maschinen zu finden, die auf einer unerwarteten verwalteten Quelle laufen, Maschinen, deren Policy-Helfer fehlschlägt, und den Grund, warum eine Maschine sich weigert zu starten.

1359Erfordert Claude Code v2.1.274 oder später.1365Erfordert Claude Code v2.1.274 oder später.

1360 1366 

1361Standardmäßig trägt das Ereignis die verwalteten Quellen und den Zustand des Policy-Helpers, aber nicht die Einstellungen selbst. Um das redaktionierte Attribut `managed_settings.settings` und die `managed_settings.resolved_sha256`-Zusammenfassung hinzuzufügen, setzen Sie `OTEL_LOG_MANAGED_SETTINGS=1`:1367Standardmäßig trägt das Ereignis die verwalteten Quellen und den Zustand des Policy-Helfers, aber nicht die Einstellungen selbst. Um das redaktionierte Attribut `managed_settings.settings` und die Zusammenfassung `managed_settings.resolved_sha256` hinzuzufügen, setzen Sie `OTEL_LOG_MANAGED_SETTINGS=1`:

1362 1368 

1363* Setzen Sie es im `env`-Block von verwalteten Einstellungen, Benutzereinstellungen oder `--settings`, oder in der Umgebung, mit der Sie Claude Code starten. Ein Wert in Projekt- oder lokalen Einstellungen schaltet es nicht ein, weil ein geklontes Repository sie schreiben kann.1369* Setzen Sie es im `env`-Block von verwalteten Einstellungen, Benutzereinstellungen oder `--settings`, oder in der Umgebung, mit der Sie Claude Code starten. Ein Wert in Projekt- oder lokalen Einstellungen schaltet es nicht ein, da ein geklontes Repository sie schreiben kann.

1364* Server-verwaltete Einstellungen können es setzen, ohne den [Sicherheitsgenehmigungsdialog](/docs/de/server-managed-settings#security-approval-dialogs) anzuzeigen, weil die Variable nur Ihre Organisationseigene redaktionierte Richtlinie zu einem Ereignis hinzufügt, das Ihre Organisation bereits erhält.1370* Server-verwaltete Einstellungen können es setzen, ohne den [Sicherheitsgenehmigungsdialog](/docs/de/server-managed-settings#security-approval-dialogs) anzuzeigen, da die Variable nur Ihre Organisationseigene redaktionierte Richtlinie zu einem Ereignis hinzufügt, das Ihre Organisation bereits erhält.

1365 1371 

1366In einer interaktiven Sitzung in einem Ordner, den Sie nicht [vertraut](/docs/de/permissions#what-runs-before-you-trust-a-folder) haben, exportiert Claude Code das Verweigerungs-Ereignis nicht, weil Projekt- und lokale Einstellungen den Export auf einen anderen Collector verweisen könnten, bevor Vertrauen besteht.1372In einer interaktiven Sitzung in einem Ordner, den Sie nicht [vertraut](/docs/de/permissions#what-runs-before-you-trust-a-folder) haben, exportiert Claude Code das Verweigerungs-Ereignis nicht.

1367 1373 

1368**Ereignisname**: `claude_code.managed_settings_resolved`1374**Ereignisname**: `claude_code.managed_settings_resolved`

1369 1375 


1373* `event.name`: `"managed_settings_resolved"`1379* `event.name`: `"managed_settings_resolved"`

1374* `event.timestamp`: ISO 8601-Zeitstempel1380* `event.timestamp`: ISO 8601-Zeitstempel

1375* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)1381* `event.sequence`: Pro-Prozess-Zähler zum Ordnen von Ereignissen, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes)

1376* `managed_settings.trigger`: `"startup"` für das Sitzungsstart-Ereignis, `"change"`, wenn sich die verwalteten Einstellungen oder der Zustand des Policy-Helpers später in der Sitzung ändert, oder `"refused"`, wenn eine verwaltete Einstellungsrichtlinie die Sitzung stoppte. Claude Code sendet ein `change`-Ereignis nur, wenn sich ein Attribut vom letzten Ereignis unterscheidet, das es gesendet hat, und ein geänderter Einstellungswert zählt auch wenn `OTEL_LOG_MANAGED_SETTINGS` aus ist1382* `managed_settings.trigger`: `"startup"` für das Sitzungsstart-Ereignis, `"change"`, wenn sich die verwalteten Einstellungen oder der Zustand des Policy-Helfers später in der Sitzung ändert, oder `"refused"`, wenn eine verwaltete Einstellungsrichtlinie die Sitzung stoppte. Claude Code sendet ein `change`-Ereignis nur, wenn sich ein Attribut vom letzten Ereignis unterscheidet, das es gesendet hat, und ein geänderter Einstellungswert zählt auch wenn `OTEL_LOG_MANAGED_SETTINGS` aus ist

1377* `error.type`: Warum Claude Code die Sitzung stoppte. Nur vorhanden auf `refused`-Ereignissen:1383* `error.type`: warum Claude Code die Sitzung stoppte. Nur vorhanden auf `refused`-Ereignissen:

1378 * `"helper_failed"`: ein [Policy-Helper-Lauf fehlgeschlagen](/docs/de/settings-reference#helper-failures)1384 * `"helper_failed"`: ein [Policy-Helfer-Lauf fehlgeschlagen](/docs/de/settings-reference#helper-failures)

1379 * `"policy_invalid"`: die verwalteten Einstellungen enthalten einen Fehler, der Claude Code vom Starten abhält, oder eine Admin-Quelle konnte nicht geladen werden, daher kann Claude Code die Durchsetzung der Organisationsanmeldung nicht prüfen1385 * `"policy_invalid"`: die verwalteten Einstellungen enthalten einen Fehler, der Claude Code vom Starten abhält, oder eine Admin-Quelle konnte nicht geladen werden, daher kann Claude Code die Organisations-Login-Erzwingung nicht prüfen

1380 * `"consent_rejected"`: der Benutzer lehnte den [Sicherheitsgenehmigungsdialog](/docs/de/server-managed-settings#security-approval-dialogs) für Server-verwaltete Einstellungen ab1386 * `"consent_rejected"`: der Benutzer lehnte den [Sicherheitsgenehmigungsdialog](/docs/de/server-managed-settings#security-approval-dialogs) für Server-verwaltete Einstellungen ab

1381 * `"force_refresh_failed"`: der Einstellungs-Abruf, den [`forceRemoteSettingsRefresh`](/docs/de/settings-reference#forceremotesettingsrefresh) erfordert, fehlgeschlagen1387 * `"force_refresh_failed"`: der Einstellungs-Abruf, den [`forceRemoteSettingsRefresh`](/docs/de/settings-reference#forceremotesettingsrefresh) erfordert, fehlgeschlagen

1382 * `"gateway_rejected"`: ein [Claude-Apps-Gateway](/docs/de/claude-apps-gateway) antwortete auf den Abruf der verwalteten Einstellungen mit HTTP 4031388 * `"gateway_rejected"`: ein [Claude-Apps-Gateway](/docs/de/claude-apps-gateway) antwortete auf den verwalteten Einstellungs-Abruf mit HTTP 403

1383 * `"version_below_minimum"`: diese Version von Claude Code ist unter [`requiredMinimumVersion`](/docs/de/settings-reference#requiredminimumversion) oder über [`requiredMaximumVersion`](/docs/de/settings-reference#requiredmaximumversion)1389 * `"version_below_minimum"`: diese Version von Claude Code ist unter [`requiredMinimumVersion`](/docs/de/settings-reference#requiredminimumversion) oder über [`requiredMaximumVersion`](/docs/de/settings-reference#requiredmaximumversion)

1384 * `"_OTHER"`: der Abruf der Claude-Apps-Gateway-verwalteten Einstellungen fehlgeschlagen aus einem anderen Grund1390 * `"_OTHER"`: der Claude-Apps-Gateway verwaltete Einstellungs-Abruf fehlgeschlagen aus einem anderen Grund

1385* `managed_settings.sources`: jede verwaltete Quelle, die mindestens einen [Policy-Schlüssel](/docs/de/managed-settings#how-claude-code-combines-managed-sources) liefert, höchste Priorität zuerst, einschließlich Quellen, deren Schlüssel nicht unter `first-wins` wirksam werden. Werte sind `"remote"`, `"plist"` oder `"hklm"` für die MDM- oder OS-Level-Richtlinie, `"file"` für verwaltete Einstellungsdateien und Drop-Ins, `"parent"`, wenn ein [Embedding-Host](/docs/de/managed-settings#let-an-embedding-host-add-policy) Einstellungen liefert, und `"hkcu"` für den [Windows HKCU-Registrierungswert](/docs/de/managed-settings#where-each-mechanism-stores-the-policy), wenn Claude Code [ihn liest](/docs/de/managed-settings#how-claude-code-combines-managed-sources). Eine Quelle, die nur Kontrollschlüssel trägt, oder die Claude Code nicht lesen konnte, ist nicht aufgelistet. Ausgegeben als String-Array, leer, wenn keine verwaltete Quelle einen Policy-Schlüssel liefert1391* `managed_settings.sources`: jede verwaltete Quelle, die mindestens einen [Policy-Schlüssel](/docs/de/managed-settings#how-claude-code-combines-managed-sources) liefert, höchste Priorität zuerst, einschließlich Quellen, deren Schlüssel nicht unter `first-wins` wirksam werden. Werte sind `"remote"`, `"plist"` oder `"hklm"` für die MDM- oder OS-Level-Richtlinie, `"file"` für verwaltete Einstellungsdateien und Drop-Ins, `"parent"`, wenn ein [Embedding-Host](/docs/de/managed-settings#let-an-embedding-host-add-policy) Einstellungen liefert, und `"hkcu"` für den [Windows HKCU-Registry-Wert](/docs/de/managed-settings#where-each-mechanism-stores-the-policy), wenn Claude Code [ihn liest](/docs/de/managed-settings#how-claude-code-combines-managed-sources). Eine Quelle, die nur Kontrollschlüssel trägt, oder die Claude Code nicht lesen konnte, ist nicht aufgelistet. Ausgegeben als Array von Zeichenketten, leer wenn keine verwaltete Quelle einen Policy-Schlüssel liefert

1386* `managed_settings.source_behavior`: der [`managedSourcesBehavior`](/docs/de/settings-reference#managedsourcesbehavior)-Wert, den Claude Code gelesen hat, `"first-wins"` oder `"merge"`. `"first-wins"`, wenn keine Quelle den Schlüssel setzt1392* `managed_settings.source_behavior`: der [`managedSourcesBehavior`](/docs/de/settings-reference#managedsourcesbehavior)-Wert, den Claude Code las, `"first-wins"` oder `"merge"`. `"first-wins"`, wenn keine Quelle den Schlüssel setzt

1387* `managed_settings.helper.state`: Zustand des Policy-Helpers, den die ausgewählte MDM- oder Datei-Quelle konfiguriert:1393* `managed_settings.helper.state`: Zustand des Policy-Helfers, den die ausgewählte MDM- oder Datei-Quelle konfiguriert:

1388 * `"ok"`: die Ausgabe des Helpers dient als verwaltete Einstellungen1394 * `"ok"`: die Ausgabe des Helfers dient als verwaltete Einstellungen

1389 * `"bad_path"`, `"not_a_file"`, `"exit_nonzero"`, `"timed_out"`, `"oversize"`, `"parse_failed"`, `"envelope_invalid"` oder `"schema_rejected"`: der letzte Lauf des Helpers fehlgeschlagen. [Helper-Fehler](/docs/de/settings-reference#helper-failures) beschreibt die Fälle1395 * `"bad_path"`, `"not_a_file"`, `"exit_nonzero"`, `"timed_out"`, `"oversize"`, `"parse_failed"`, `"envelope_invalid"` oder `"schema_rejected"`: der letzte Lauf des Helfers fehlgeschlagen. [Helper-Fehler](/docs/de/settings-reference#helper-failures) beschreibt die Fälle

1390 * `"none"`: kein Helper ist konfiguriert, oder die Quelle, die ihn konfiguriert, ist keine MDM-Richtlinie oder verwaltete Einstellungsdatei1396 * `"none"`: kein Helfer ist konfiguriert, oder die Quelle, die ihn konfiguriert, ist keine MDM-Richtlinie oder verwaltete Einstellungsdatei

1391* `managed_settings.helper.applied`: `"output"`, während die eigene Ausgabe des Helpers als verwaltete Einstellungen dient, `"none"`, wenn es nicht tut1397* `managed_settings.helper.applied`: `"output"`, während die eigene Ausgabe des Helfers als verwaltete Einstellungen dient, `"none"`, wenn sie nicht

1392* `managed_settings.helper.entry`: `"policyHelper"`, wenn Claude Code einen [`policyHelper`](/docs/de/settings-reference#policyhelper) ausgewählt hat. Nicht vorhanden, wenn es keinen Helper ausgewählt hat1398* `managed_settings.helper.entry`: `"policyHelper"`, wenn Claude Code einen [`policyHelper`](/docs/de/settings-reference#policyhelper) ausgewählt hat. Nicht vorhanden, wenn es keinen Helfer ausgewählt hat

1393* `managed_settings.helper.path`: der konfigurierte [`path`](/docs/de/settings-reference#policyhelper-path) des Helpers. Vorhanden, wenn Claude Code einen Helper ausgewählt hat, ob `OTEL_LOG_MANAGED_SETTINGS` gesetzt ist oder nicht1399* `managed_settings.helper.path`: der konfigurierte [`path`](/docs/de/settings-reference#policyhelper-path) des Helfers. Vorhanden, wenn Claude Code einen Helfer ausgewählt hat, ob `OTEL_LOG_MANAGED_SETTINGS` gesetzt ist oder nicht

1394* `managed_settings.resolved_sha256` (wenn `OTEL_LOG_MANAGED_SETTINGS=1`): SHA-256 der aufgelösten verwalteten Einstellungen vor Redaktion, serialisiert als JSON mit rekursiv sortierten Schlüsseln und ohne Leerzeichen. Maschinen mit der gleichen Zusammenfassung führen die gleiche Richtlinie aus. Claude Code sendet die Zusammenfassung nur mit dem Opt-In, weil eine kurze Richtlinie durch Hashing von Vermutungen wiederhergestellt werden kann. Nicht vorhanden, wenn keine verwalteten Einstellungen aufgelöst wurden, und auf `refused`-Ereignissen1400* `managed_settings.resolved_sha256` (wenn `OTEL_LOG_MANAGED_SETTINGS=1`): SHA-256 der aufgelösten verwalteten Einstellungen vor Redaktion, serialisiert als JSON mit rekursiv sortierten Schlüsseln und ohne Leerzeichen. Maschinen mit derselben Zusammenfassung führen dieselbe Richtlinie aus. Claude Code sendet die Zusammenfassung nur mit dem Opt-In, da eine kurze Richtlinie durch Hashing von Vermutungen wiederhergestellt werden kann. Nicht vorhanden, wenn keine verwalteten Einstellungen aufgelöst wurden, und auf `refused`-Ereignissen

1395* `managed_settings.settings` (wenn `OTEL_LOG_MANAGED_SETTINGS=1`): die Namen und Form der aufgelösten verwalteten Einstellungen als JSON-String, mit den Werten redaktioniert. Nicht vorhanden auf `refused`-Ereignissen. Claude Code erstellt es aus seinem Einstellungsschema:1401* `managed_settings.settings` (wenn `OTEL_LOG_MANAGED_SETTINGS=1`): die Namen und Form der aufgelösten verwalteten Einstellungen als JSON-Zeichenkette, mit den Werten redaktioniert. Nicht vorhanden auf `refused`-Ereignissen. Claude Code erstellt es aus seinem Einstellungsschema:

1396 1402 

1397 * Ein Einstellungsname, den das Schema deklariert, wird exportiert, und ein Schlüssel, den es nicht deklariert, wird weggelassen1403 * Ein Einstellungsname, den das Schema deklariert, wird exportiert, und ein Schlüssel, den es nicht deklariert, wird weggelassen

1398 * Booleans, Zahlen und String-Werte, die das Schema auf einen festen Satz von Optionen beschränkt, z. B. `permissions.defaultMode`, werden wie geschrieben exportiert. `sandbox.network.httpProxyPort` und `sandbox.network.socksProxyPort` werden als `"[REDACTED]"` exportiert1404 * Booleans, Zahlen und String-Werte, die das Schema auf einen festen Satz von Optionen beschränkt, z. B. `permissions.defaultMode`, werden wie geschrieben exportiert. `sandbox.network.httpProxyPort` und `sandbox.network.socksProxyPort` werden als `"[REDACTED]"` exportiert

1399 * Jeder andere String, z. B. `model`, `apiKeyHelper`, jeder `env`-Wert, jede URL und jeder Befehl, wird als `"[REDACTED]"` exportiert1405 * Jede andere Zeichenkette, z. B. `model`, `apiKeyHelper`, jeder `env`-Wert, jede URL und jeder Befehl, wird als `"[REDACTED]"` exportiert

1400 * Die Eintrags-Namen von Maps, z. B. `env`-Variablennamen und Plugin-IDs, werden wie geschrieben exportiert. Eine Einstellung, deren Einträge das Schema nicht typisiert, z. B. `vimInsertModeRemaps`, wird als ein einzelnes `"[REDACTED]"` exportiert, und `sandbox.ignoreViolations` wird als eine Liste seiner Pfad-Listen ohne die Befehlsmuster exportiert1406 * Die Eintrags-Namen von Maps, z. B. `env`-Variablennamen und Plugin-IDs, werden wie geschrieben exportiert. Eine Einstellung, deren Einträge das Schema nicht typisiert, z. B. `vimInsertModeRemaps`, wird als ein einzelnes `"[REDACTED]"` exportiert, und `sandbox.ignoreViolations` wird als eine Liste seiner Pfad-Listen ohne die Befehlsmuster exportiert

1401 * Eine Liste behält ihre Länge, mit jedem Eintrag nach den gleichen Regeln redaktioniert1407 * Eine Liste behält ihre Länge, mit jedem Eintrag nach denselben Regeln redaktioniert

1402 * Eine `permissions.allow`-, `permissions.deny`- oder `permissions.ask`-Regel wird als ihr Tool-Name mit dem Inhalt redaktioniert exportiert, z. B. `Read([REDACTED])`, wenn das Tool in diese Version von Claude Code integriert ist oder ein `mcp__`-Verweis wie `mcp__jira__create_issue` ist. Jede andere Regel wird als `"[REDACTED]"` exportiert1408 * Eine `permissions.allow`-, `permissions.deny`- oder `permissions.ask`-Regel wird als ihr Tool-Name mit dem Inhalt redaktioniert exportiert, z. B. `Read([REDACTED])`, wenn das Tool in diese Version von Claude Code integriert ist oder ein `mcp__`-Verweis wie `mcp__jira__create_issue` ist. Jede andere Regel wird als `"[REDACTED]"` exportiert

1403 * Hooks folgen den gleichen Regeln, daher zeigen fest-Option und numerische Felder wie `type` und `timeout`, während jeder Befehl, jede URL, `matcher` und `if`-Bedingung als `"[REDACTED]"` exportiert wird1409 * Hooks folgen denselben Regeln, daher zeigen Fixed-Option- und numerische Felder wie `type` und `timeout`, während jeder Befehl, jede URL, `matcher` und `if`-Bedingung als `"[REDACTED]"` exportiert wird

1404 1410 

1405 Zum Beispiel werden verwaltete Einstellungen mit `apiKeyHelper`, zwei `env`-Variablen und einer Ablehnungsregel als `{"apiKeyHelper":"[REDACTED]","env":{"HTTPS_PROXY":"[REDACTED]","CLAUDE_CODE_ENABLE_TELEMETRY":"[REDACTED]"},"permissions":{"deny":["Read([REDACTED])"]}}` exportiert.1411 Zum Beispiel werden verwaltete Einstellungen mit `apiKeyHelper`, zwei `env`-Variablen und einer Ablehnungsregel als `{"apiKeyHelper":"[REDACTED]","env":{"HTTPS_PROXY":"[REDACTED]","CLAUDE_CODE_ENABLE_TELEMETRY":"[REDACTED]"},"permissions":{"deny":["Read([REDACTED])"]}}` exportiert.

1406 1412 

1407 Claude Code schneidet den Wert bei 8 KB UTF-8 ab, und der abgeschnittene Wert ist kein gültiges JSON1413 Claude Code schneidet den Wert bei 8 KB UTF-8 ab, und der abgeschnittene Wert ist kein gültiges JSON

1408* `managed_settings.settings_truncated` (wenn `managed_settings.settings` vorhanden ist): `true`, wenn Claude Code `managed_settings.settings` bei 8 KB abgeschnitten hat, `false` andernfalls. Ausgegeben als Boolean, nicht als String1414* `managed_settings.settings_truncated` (wenn `managed_settings.settings` vorhanden ist): `true`, wenn Claude Code `managed_settings.settings` bei 8 KB abschnitt, `false` andernfalls. Ausgegeben als Boolean, nicht als Zeichenkette

1409 1415 

1410<h2 id="interpret-metrics-and-events-data">1416<h2 id="interpret-metrics-and-events-data">

1411 Interpretation von Metriken- und Ereignisdaten1417 Interpretation von Metriken- und Ereignisdaten

Details

245| `registry.npmjs.org` | Plugin-Installationen (Abrufen von npm-Quell-Plugin-Paketen und Installation von Node.js-Paketabhängigkeiten von Plugins), `npx`-gestartete MCP-Server und die Paketregistrierung für npm- und bun-Installationen von Claude Code selbst |245| `registry.npmjs.org` | Plugin-Installationen (Abrufen von npm-Quell-Plugin-Paketen und Installation von Node.js-Paketabhängigkeiten von Plugins), `npx`-gestartete MCP-Server und die Paketregistrierung für npm- und bun-Installationen von Claude Code selbst |

246| `bridge.claudeusercontent.com` | [Claude in Chrome](/docs/de/chrome) Erweiterungs-WebSocket-Bridge |246| `bridge.claudeusercontent.com` | [Claude in Chrome](/docs/de/chrome) Erweiterungs-WebSocket-Bridge |

247| `*.frame.claudeusercontent.com` | [Artifact](/docs/de/artifacts) Inhaltslesevorgänge. Die CLI ruft die Dateien eines Artifacts von diesem Host ab, wenn Claude eines öffnet, und nur wenn das Artifact-Tool [verfügbar](/docs/de/artifacts#availability) für Ihr Konto ist. Um das Tool auszuschalten und diese Anforderung zu entfernen, setzen Sie [`"enableArtifact": false`](/docs/de/settings-reference#enableartifact) oder [`CLAUDE_CODE_DISABLE_ARTIFACT=1`](/docs/de/env-vars); Claude Code berücksichtigt auch die veraltete Einstellung [`disableArtifact`](/docs/de/settings-reference#disableartifact). Siehe [Disable artifacts](/docs/de/artifacts#disable-artifacts) für die Interaktion dieser Einstellungen |247| `*.frame.claudeusercontent.com` | [Artifact](/docs/de/artifacts) Inhaltslesevorgänge. Die CLI ruft die Dateien eines Artifacts von diesem Host ab, wenn Claude eines öffnet, und nur wenn das Artifact-Tool [verfügbar](/docs/de/artifacts#availability) für Ihr Konto ist. Um das Tool auszuschalten und diese Anforderung zu entfernen, setzen Sie [`"enableArtifact": false`](/docs/de/settings-reference#enableartifact) oder [`CLAUDE_CODE_DISABLE_ARTIFACT=1`](/docs/de/env-vars); Claude Code berücksichtigt auch die veraltete Einstellung [`disableArtifact`](/docs/de/settings-reference#disableartifact). Siehe [Disable artifacts](/docs/de/artifacts#disable-artifacts) für die Interaktion dieser Einstellungen |

248| `github.com` | Klonen von GitHub-gehosteten [Plugin-Marktplätzen](/docs/de/plugin-marketplaces) und Plugins, einschließlich des offiziellen Anthropic-Marktplatzes, über HTTPS oder SSH. Um GitHub `owner/repo` Quellen nur über HTTPS zu klonen, setzen Sie [`CLAUDE_CODE_PLUGIN_PREFER_HTTPS=1`](/docs/de/env-vars) |248| `github.com` | Klonen von GitHub-gehosteten [Plugin-Marktplätzen](/docs/de/plugins/overview) und Plugins, einschließlich des offiziellen Anthropic-Marktplatzes, über HTTPS oder SSH. Um GitHub `owner/repo` Quellen nur über HTTPS zu klonen, setzen Sie [`CLAUDE_CODE_PLUGIN_PREFER_HTTPS=1`](/docs/de/env-vars) |

249| `raw.githubusercontent.com` | Changelog-Feed für [`/release-notes`](/docs/de/commands). In interaktiven Sitzungen ruft Claude Code ihn auch beim Start im Hintergrund ab, wenn sein zwischengespeichertes Changelog die laufende Version noch nicht abdeckt, z. B. beim ersten Start nach einem Update; nicht-interaktive und Cloud-Sitzungen rufen ihn nie ab |249| `raw.githubusercontent.com` | Changelog-Feed für [`/release-notes`](/docs/de/commands). In interaktiven Sitzungen ruft Claude Code ihn auch beim Start im Hintergrund ab, wenn sein zwischengespeichertes Changelog die laufende Version noch nicht abdeckt, z. B. beim ersten Start nach einem Update; nicht-interaktive und Cloud-Sitzungen rufen ihn nie ab |

250| `*-review.googlesource.com` | Gerrit-Änderungssuche bei `googlesource.com`-Checkouts. Wenn eine Claude Desktop Code-Tab-Sitzung auf einem [vertrauenswürdigen](/docs/de/permissions#project-allow-rules-and-workspace-trust) Checkout startet oder fortgesetzt wird, dessen `origin` ein `googlesource.com`-Host ist, fragt Claude Code diesen Host's `-review`-Server anonym nach der offenen Änderung, die HEADs `Change-Id` entspricht, einmal pro Start oder Fortsetzung. Andere Sitzungstypen überspringen die Suche, und kein anderer Gerrit-Host wird kontaktiert. Optional: deaktivieren mit [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/de/env-vars) |250| `*-review.googlesource.com` | Gerrit-Änderungssuche bei `googlesource.com`-Checkouts. Wenn eine Claude Desktop Code-Tab-Sitzung auf einem [vertrauenswürdigen](/docs/de/permissions#project-allow-rules-and-workspace-trust) Checkout startet oder fortgesetzt wird, dessen `origin` ein `googlesource.com`-Host ist, fragt Claude Code diesen Host's `-review`-Server anonym nach der offenen Änderung, die HEADs `Change-Id` entspricht, einmal pro Start oder Fortsetzung. Andere Sitzungstypen überspringen die Suche, und kein anderer Gerrit-Host wird kontaktiert. Optional: deaktivieren mit [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/de/env-vars) |

251| `http-intake.logs.us5.datadoghq.com` | Operationale Telemetrie-Ereignisse, die nur gesendet werden, wenn die CLI die Anthropic API direkt nutzt, niemals für Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry. Optional: deaktivieren mit [`DISABLE_TELEMETRY`](/docs/de/data-usage#telemetry-services) oder `DO_NOT_TRACK` |251| `http-intake.logs.us5.datadoghq.com` | Operationale Telemetrie-Ereignisse, die nur gesendet werden, wenn die CLI die Anthropic API direkt nutzt, niemals für Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry. Optional: deaktivieren mit [`DISABLE_TELEMETRY`](/docs/de/data-usage#telemetry-services) oder `DO_NOT_TRACK` |

Details

171 </Step>171 </Step>

172</Steps>172</Steps>

173 173 

174[Plugins](/docs/de/plugins-reference) können auch Ausgabestile in einem `output-styles/`-Verzeichnis bereitstellen.174[Plugins](/docs/de/plugins/manifest-reference) können auch Ausgabestile in einem `output-styles/`-Verzeichnis bereitstellen.

175 175 

176<h3 id="frontmatter">176<h3 id="frontmatter">

177 Frontmatter-Referenz177 Frontmatter-Referenz


228 228 

229* [Settings](/docs/de/settings): wo das Feld `outputStyle` lebt und wie die Einstellungspriorität funktioniert229* [Settings](/docs/de/settings): wo das Feld `outputStyle` lebt und wie die Einstellungspriorität funktioniert

230* [Permission modes](/docs/de/permission-modes): wie der Proactive-Stil den Auto-Modus vergleicht230* [Permission modes](/docs/de/permission-modes): wie der Proactive-Stil den Auto-Modus vergleicht

231* [Plugins](/docs/de/plugins): Verpacken und verteilen Sie Ausgabestile zusammen mit Skills, Hooks und Agents231* [Plugins](/docs/de/plugins/overview): Verpacken und verteilen Sie Ausgabestile zusammen mit Skills, Hooks und Agents

232* [Debug your configuration](/docs/de/debug-your-config): Diagnostizieren Sie, warum ein Ausgabestil nicht wirksam wird232* [Debug your configuration](/docs/de/debug-your-config): Diagnostizieren Sie, warum ein Ausgabestil nicht wirksam wird

Details

332 Serverseitige Klassifizierer-Überprüfung332 Serverseitige Klassifizierer-Überprüfung

333</h3>333</h3>

334 334 

335Bei Enterprise-Plänen und Konten, die die Claude API verwenden, bei [Claude Platform on AWS](/docs/de/claude-platform-on-aws), Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry, und wenn Sie `ANTHROPIC_BASE_URL` auf ein [LLM-Gateway oder einen Proxy](/docs/de/llm-gateway) verweisen, fragt Claude Code im Auto-Modus den Server, um [die Aktionen zu überprüfen, die zum Klassifizierer gehen](#how-the-classifier-evaluates-actions) als Teil der Modellabfragen der Sitzung. Wo der Server sie überprüft, entscheiden seine Urteile diese Aktionen. Wo er nicht, meist weil ein LLM-Gateway oder Proxy den Verkehr behindert, oder weil die Plattform, Region oder Anmeldedaten noch keine serverseitigen Überprüfungen haben, fällt Claude Code auf seine eigenen Klassifizierer-Anfragen zurück, und sobald dieses Fallback für den Rest der Sitzung gilt, zeigt es eine [Mitteilung über Klassifizierer-Anfrage-Gebühren](/docs/de/auto-mode-classifier-billing) auf Konten, bei denen diese Anfragen abgerechnet werden. Um das Fragen des Servers zu überspringen und immer Claude Codes eigene Klassifizierer-Anfragen zu verwenden, setzen Sie [`CLAUDE_CODE_AUTO_MODE_SERVER=0`](/docs/de/env-vars). Die Variable wird nicht auf einer direkten Verbindung zur Anthropic API gelesen. Wenn Sie `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` setzen und `CLAUDE_CODE_AUTO_MODE_SERVER` nicht gesetzt lassen, stoppt Claude Code auch das Fragen des Servers.335Im Auto-Modus kann Claude Code den Server bitten, die Aktionen zu überprüfen, die [die Entscheidungsreihenfolge](#how-the-classifier-evaluates-actions) zur Überprüfung sendet, als Teil der Modellabfragen der Sitzung, anstatt seine eigenen Klassifizierer-Anfragen zu senden. Diese Sitzungen fragen:

336 336 

337Das Fragen des Servers standardmäßig erfordert Claude Code v2.1.278 oder später.337* **Eine direkte Verbindung zur Anthropic API**: in einer interaktiven Terminal-Sitzung, auf jedem claude.ai-Plan und auf Konten, die die Claude API verwenden, wenn Anthropic dies ausrollt. Erfordert Claude Code v2.1.271 oder später auf Pro-, Max- und Team-Plänen und v2.1.278 oder später auf Enterprise-Plänen und Claude API-Konten. Ab v2.1.282 fragt eine Sitzung, die [Feature-Flags nicht abruft](/docs/de/env-vars#features-that-need-feature-flag-fetching), zum Beispiel weil Sie Telemetrie deaktiviert haben, den Server standardmäßig in jeder Art von Sitzung.

338* **Ein Cloud-Anbieter, oder ein LLM-Gateway oder Proxy**: auf [Claude Platform on AWS](/docs/de/claude-platform-on-aws), Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry, und wenn Sie `ANTHROPIC_BASE_URL` auf ein [LLM-Gateway oder einen Proxy](/docs/de/llm-gateway) verweisen, unabhängig von Ihrem Plan. Das standardmäßige Fragen erfordert Claude Code v2.1.278 oder später.

339* **Eine angemeldete [Claude-Apps-Gateway](/docs/de/claude-apps-gateway)-Sitzung**: erfordert Claude Code v2.1.280 oder später

340 

341Wo der Server die Aktionen überprüft, entscheiden seine Urteile diese. Zwei andere Ergebnisse sind möglich:

342 

343* **Der Server überprüft die Sitzung nicht**: Eine Antwort wird ohne Überprüfungsergebnisse abgeschlossen, oder der Server antwortet, dass er diese Sitzung nicht überprüft. Die häufigsten Ursachen sind ein LLM-Gateway oder Proxy, der die Anfrage zur Überprüfung oder die Ergebnisse blockiert, und eine Plattform, Region oder Anmeldedaten, die noch keine serverseitigen Überprüfungen haben. Claude Code fällt auf seine eigenen Klassifizierer-Anfragen zurück. Sobald dieses Fallback für den Rest der Sitzung gilt, zeigt es eine [Mitteilung über Klassifizierer-Anfrage-Gebühren](/docs/de/auto-mode-classifier-billing) auf Konten, bei denen diese Anfragen abgerechnet werden.

344* **Der Server gibt kein Urteil für eine Aktion**: Claude Code verweigert die Aktion, anstatt sie unüberprüft auszuführen. Bei jeder Verbindung geschieht dies, wenn die Antwort endet, bevor die Überprüfungsergebnisse ankommen, oder die Ergebnisse in einer Form ankommen, die Claude Code nicht lesen kann. Ein LLM-Gateway oder Proxy, der Antworten kürzt oder die Ergebnisse umschreibt, kann beides verursachen. Bei einer direkten Verbindung zur Anthropic API geschieht es auch, wenn die Überprüfung des Servers für die Aktion fehlschlägt, zum Beispiel durch Timeout. [Der Server hat kein Sicherheitsurteil zurückgegeben](/docs/de/errors#the-server-returned-no-safety-verdict) behandelt die Verweigerungsmitteilung, was passiert, wenn Verweigerungen wiederholt werden, und was zu tun ist.

345 

346Um das Fragen des Servers zu überspringen und immer Claude Codes eigene Klassifizierer-Anfragen zu verwenden, setzen Sie [`CLAUDE_CODE_AUTO_MODE_SERVER=0`](/docs/de/env-vars). Bei einer direkten Verbindung zur Anthropic API erfordert die Variable Claude Code v2.1.281 oder später. Das Setzen auf `1` dort schaltet die Serverseitige Überprüfung in einer Sitzung ein, die sie noch nicht hat, wie eine `-p`- oder Agent SDK-Sitzung, es sei denn, Sie haben auch `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` gesetzt. Wenn Sie `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` setzen und `CLAUDE_CODE_AUTO_MODE_SERVER` nicht gesetzt lassen, stoppt Claude Code auch das Fragen des Servers.

338 347 

339<h3 id="what-the-classifier-blocks-by-default">348<h3 id="what-the-classifier-blocks-by-default">

340 Was der Klassifizierer standardmäßig blockiert349 Was der Klassifizierer standardmäßig blockiert


476* **Eine blockierte Aktion**: Claude Code zeigt eine Benachrichtigung und listet die Aktion in `/permissions` unter der Registerkarte **Kürzlich verweigert** auf, wo Sie `r` drücken können, um sie mit einer manuellen Genehmigung erneut zu versuchen. Wenn der Klassifizierer [kein Urteil über die Aktion](/docs/de/errors#auto-mode-cannot-determine-the-safety-of-an-action) erzeugt, weil eine Sicherheitsüberprüfung, die vom Auto-Modus getrennt ist, die Anfrage des Klassifizierers selbst verweigerte oder seine Antwort nicht geparst wurde, verweigert Claude Code die Aktion ohne die Benachrichtigung oder den Eintrag **Kürzlich verweigert**.485* **Eine blockierte Aktion**: Claude Code zeigt eine Benachrichtigung und listet die Aktion in `/permissions` unter der Registerkarte **Kürzlich verweigert** auf, wo Sie `r` drücken können, um sie mit einer manuellen Genehmigung erneut zu versuchen. Wenn der Klassifizierer [kein Urteil über die Aktion](/docs/de/errors#auto-mode-cannot-determine-the-safety-of-an-action) erzeugt, weil eine Sicherheitsüberprüfung, die vom Auto-Modus getrennt ist, die Anfrage des Klassifizierers selbst verweigerte oder seine Antwort nicht geparst wurde, verweigert Claude Code die Aktion ohne die Benachrichtigung oder den Eintrag **Kürzlich verweigert**.

477* **Wiederholte Blöcke**: Wenn der Klassifizierer eine Aktion 3 Mal hintereinander oder 20 Mal insgesamt blockiert, pausiert der Auto-Modus und Claude Code setzt das Auffordern fort. Das Genehmigen der aufgeforderten Aktion setzt den Auto-Modus fort. Diese Schwellwerte sind nicht konfigurierbar. Jede erlaubte Aktion setzt den aufeinanderfolgenden Zähler zurück, während der Gesamtzähler für die Sitzung bestehen bleibt und nur zurückgesetzt wird, wenn sein eigenes Limit einen Fallback auslöst. Claude Code zählt eine Verweigerung nicht zu einem Schwellwert, wenn [eine Sicherheitsüberprüfung, die vom Auto-Modus getrennt ist, die Anfrage des Klassifizierers verweigert](/docs/de/errors#auto-mode-cannot-determine-the-safety-of-an-action); der verlinkte Eintrag behandelt, wie Claude Code diese Verweigerungen handhabt.486* **Wiederholte Blöcke**: Wenn der Klassifizierer eine Aktion 3 Mal hintereinander oder 20 Mal insgesamt blockiert, pausiert der Auto-Modus und Claude Code setzt das Auffordern fort. Das Genehmigen der aufgeforderten Aktion setzt den Auto-Modus fort. Diese Schwellwerte sind nicht konfigurierbar. Jede erlaubte Aktion setzt den aufeinanderfolgenden Zähler zurück, während der Gesamtzähler für die Sitzung bestehen bleibt und nur zurückgesetzt wird, wenn sein eigenes Limit einen Fallback auslöst. Claude Code zählt eine Verweigerung nicht zu einem Schwellwert, wenn [eine Sicherheitsüberprüfung, die vom Auto-Modus getrennt ist, die Anfrage des Klassifizierers verweigert](/docs/de/errors#auto-mode-cannot-determine-the-safety-of-an-action); der verlinkte Eintrag behandelt, wie Claude Code diese Verweigerungen handhabt.

478* **Sitzungen, die nicht auffordern können**: Ein [nicht-interaktiver](/docs/de/headless) `-p`-Lauf ohne ein [`--permission-prompt-tool`](/docs/de/cli-reference#cli-flags) hat keine Aufforderung, auf die zurückgegriffen werden kann. Wenn wiederholte Blöcke einen Schwellwert erreichen, läuft die Aktion nicht und Claude arbeitet weiter. Das gleiche gilt, wenn [eine Sicherheitsüberprüfung, die vom Auto-Modus getrennt ist, die Anfrage des Klassifizierers verweigert](/docs/de/errors#auto-mode-cannot-determine-the-safety-of-an-action). Claude Code stoppt den Lauf in keinem Fall.487* **Sitzungen, die nicht auffordern können**: Ein [nicht-interaktiver](/docs/de/headless) `-p`-Lauf ohne ein [`--permission-prompt-tool`](/docs/de/cli-reference#cli-flags) hat keine Aufforderung, auf die zurückgegriffen werden kann. Wenn wiederholte Blöcke einen Schwellwert erreichen, läuft die Aktion nicht und Claude arbeitet weiter. Das gleiche gilt, wenn [eine Sicherheitsüberprüfung, die vom Auto-Modus getrennt ist, die Anfrage des Klassifizierers verweigert](/docs/de/errors#auto-mode-cannot-determine-the-safety-of-an-action). Claude Code stoppt den Lauf in keinem Fall.

488* **Kein Urteil vom Server**: Unter [serverseitiger Klassifizierer-Überprüfung](#server-side-classifier-review) verweigert Claude Code eine Aktion, für die der Server kein Urteil gibt, und stoppt die Runde nach zehn Antworten hintereinander ohne Urteil. Siehe [Der Server hat kein Sicherheitsurteil zurückgegeben](/docs/de/errors#the-server-returned-no-safety-verdict).

479* **Ein Modusschalter während einer Überprüfung**: Wenn Sie Genehmigungsmodi wechseln, während eine Klassifizierer-Überprüfung ausstehend ist, verwirft Claude Code ein Urteil, das der neue Modus nicht angefordert hätte, statt es anzuwenden: Sie werden stattdessen aufgefordert, oder die Aktion wird im [`dontAsk`-Modus](#allow-only-pre-approved-tools-with-dontask-mode) automatisch verweigert.489* **Ein Modusschalter während einer Überprüfung**: Wenn Sie Genehmigungsmodi wechseln, während eine Klassifizierer-Überprüfung ausstehend ist, verwirft Claude Code ein Urteil, das der neue Modus nicht angefordert hätte, statt es anzuwenden: Sie werden stattdessen aufgefordert, oder die Aktion wird im [`dontAsk`-Modus](#allow-only-pre-approved-tools-with-dontask-mode) automatisch verweigert.

480 490 

481Wiederholte Blöcke bedeuten normalerweise, dass dem Klassifizierer Kontext über Ihre Infrastruktur fehlt. Verwenden Sie `/feedback`, um falsch positive zu melden, oder lassen Sie einen Administrator [vertrauenswürdige Infrastruktur konfigurieren](/docs/de/auto-mode-config).491Wiederholte Blöcke bedeuten normalerweise, dass dem Klassifizierer Kontext über Ihre Infrastruktur fehlt. Verwenden Sie `/feedback`, um falsch positive zu melden, oder lassen Sie einen Administrator [vertrauenswürdige Infrastruktur konfigurieren](/docs/de/auto-mode-config).


492 * Ein Shell-Befehl, der [pro-Befehl erlaubte Domänen](/docs/de/sandboxing#per-command-allowed-domains-in-auto-mode) trägt, wird auch zum Klassifizierer weitergeleitet, auch wenn eine Allow-Regel passt, weil eine Regel den Befehl genehmigt, nicht seine Hosts502 * Ein Shell-Befehl, der [pro-Befehl erlaubte Domänen](/docs/de/sandboxing#per-command-allowed-domains-in-auto-mode) trägt, wird auch zum Klassifizierer weitergeleitet, auch wenn eine Allow-Regel passt, weil eine Regel den Befehl genehmigt, nicht seine Hosts

493 * Ask-Regeln, die auf Befehlsinhalte abgleichen, wie `Bash(git push *)`, fallen auf eine Genehmigungsaufforderung zurück503 * Ask-Regeln, die auf Befehlsinhalte abgleichen, wie `Bash(git push *)`, fallen auf eine Genehmigungsaufforderung zurück

494 2. Schreibgeschützte Aktionen und Dateieditierungen in Ihrem Arbeitsverzeichnis werden automatisch genehmigt, außer Schreibvorgänge zu [geschützten Pfaden](#protected-paths) und [dem ersten Lesezugriff außerhalb der Arbeitsverzeichnisse](#first-read-outside-the-working-directories), die Sie auffordern504 2. Schreibgeschützte Aktionen und Dateieditierungen in Ihrem Arbeitsverzeichnis werden automatisch genehmigt, außer Schreibvorgänge zu [geschützten Pfaden](#protected-paths) und [dem ersten Lesezugriff außerhalb der Arbeitsverzeichnisse](#first-read-outside-the-working-directories), die Sie auffordern

505 * In einer Sitzung mit [serverseitiger Klassifizierer-Überprüfung](#server-side-classifier-review) warten schreibgeschützte und [Sandbox](/docs/de/sandboxing#sandbox-modes)-Shell-Befehle auf diese Überprüfung und werden blockiert, wenn sie diese kennzeichnet

495 3. Alles andere geht zum Klassifizierer. Die Connector-Tools und `requiresUserInteraction` MCP-Tools, die Sie direkt in Schritt 1 auffordern, erreichen den Klassifizierer nie, daher wird weder eine von der Organisation erforderliche Genehmigung noch ein Zustimmungsschritt automatisch genehmigt506 3. Alles andere geht zum Klassifizierer. Die Connector-Tools und `requiresUserInteraction` MCP-Tools, die Sie direkt in Schritt 1 auffordern, erreichen den Klassifizierer nie, daher wird weder eine von der Organisation erforderliche Genehmigung noch ein Zustimmungsschritt automatisch genehmigt

496 4. Wenn der Klassifizierer blockiert, erhält Claude den Grund und versucht eine Alternative. In den meisten Sitzungen benennt der Grund die Regel, die der Klassifizierer abgeglichen hat, wie `[Data Exfiltration]`, statt eine schriftliche Erklärung zu geben; siehe [Verweigerungen überprüfen](/docs/de/auto-mode-config#review-denials)507 4. Wenn der Klassifizierer blockiert, erhält Claude den Grund und versucht eine Alternative. In den meisten Sitzungen benennt der Grund die Regel, die der Klassifizierer abgeglichen hat, wie `[Data Exfiltration]`, statt eine schriftliche Erklärung zu geben; siehe [Verweigerungen überprüfen](/docs/de/auto-mode-config#review-denials)

497 508 

permissions.md +5 −5

Details

278 Schreibgeschützte Befehle278 Schreibgeschützte Befehle

279</h4>279</h4>

280 280 

281Claude Code erkennt einen integrierten Satz von Bash-Befehlen als schreibgeschützt und führt sie ohne Berechtigungsaufforderung in jedem Modus aus, außer für einen Pfad, den [`permissions.blockReadsOutsideWorkingDirectories`](/docs/de/settings-reference#permissions-blockreadsoutsideworkingdirectories) einschränkt. Der Satz umfasst `ls`, `cat`, `echo`, `pwd`, `head`, `tail`, `grep`, `find`, `wc`, `which`, `diff`, `stat`, `du`, `cd` und schreibgeschützte Formen von `git`. Der Satz ist nicht konfigurierbar; um eine Aufforderung für einen dieser Befehle zu erfordern, fügen Sie eine `ask`- oder `deny`-Regel dafür hinzu.281Claude Code erkennt einen integrierten Satz von Bash-Befehlen als schreibgeschützt und führt sie ohne Berechtigungsaufforderung in jedem Modus aus, außer für einen Pfad, den [`permissions.blockReadsOutsideWorkingDirectories`](/docs/de/settings-reference#permissions-blockreadsoutsideworkingdirectories) einschränkt. Der Satz umfasst `ls`, `cat`, `echo`, `pwd`, `head`, `tail`, `grep`, `find`, `wc`, `which`, `diff`, `stat`, `du`, `cd` und schreibgeschützte Formen von `git`. Der Satz ist nicht konfigurierbar; um eine Aufforderung für einen dieser Befehle zu erfordern, fügen Sie eine `ask`- oder `deny`-Regel dafür hinzu. Im Auto-Modus können diese Befehle auch auf die Überprüfung durch den Klassifizierer warten; siehe [wie der Klassifizierer Aktionen bewertet](/docs/de/permission-modes#how-the-classifier-evaluates-actions).

282 282 

283Eine Umleitung wie `ls > out.txt` fügt eine Überprüfung des Ziels hinzu. Siehe [Umleitungen](#redirections).283Eine Umleitung wie `ls > out.txt` fügt eine Überprüfung des Ziels hinzu. Siehe [Umleitungen](#redirections).

284 284 


603 603 

604* Seine Projekteinstellungen, einschließlich ihrer Berechtigungsregeln und [Hooks](/docs/de/hooks)604* Seine Projekteinstellungen, einschließlich ihrer Berechtigungsregeln und [Hooks](/docs/de/hooks)

605* Seine [`.mcp.json`-Server](/docs/de/mcp#project-scope), unterliegen der gleichen [Server-Genehmigung](/docs/de/mcp#project-server-approvals-and-workspace-trust) wie beim Start, und die [lokalen](/docs/de/mcp#local-scope) MCP-Server, die Sie darin registriert haben605* Seine [`.mcp.json`-Server](/docs/de/mcp#project-scope), unterliegen der gleichen [Server-Genehmigung](/docs/de/mcp#project-server-approvals-and-workspace-trust) wie beim Start, und die [lokalen](/docs/de/mcp#local-scope) MCP-Server, die Sie darin registriert haben

606* Die [Plugins](/docs/de/plugins), die seine Einstellungen aktivieren, seine [Skills](/docs/de/skills#discovery-from-parent-and-nested-directories) und seine [Subagents](/docs/de/sub-agents)606* Die [Plugins](/docs/de/plugins/overview), die seine Einstellungen aktivieren, seine [Skills](/docs/de/skills#discovery-from-parent-and-nested-directories) und seine [Subagents](/docs/de/sub-agents)

607* Seine [`env`](/docs/de/settings-reference#env)-Werte, angewendet auf die Umgebungsvariablen aus den Einstellungen des vorherigen Verzeichnisses, die weiterhin gültig sind607* Seine [`env`](/docs/de/settings-reference#env)-Werte, angewendet auf die Umgebungsvariablen aus den Einstellungen des vorherigen Verzeichnisses, die weiterhin gültig sind

608 608 

609Claude Code trennt auch die MCP-Server des vorherigen Verzeichnisses und [lokalen](/docs/de/mcp#local-scope) ab, sowie die Server von [Plugins](/docs/de/mcp#plugin-provided-mcp-servers), die nach dem Verschieben nicht mehr aktiviert sind. Es nimmt [zusätzliche Verzeichnisse](#working-directories) aus den Einstellungen des neuen Verzeichnisses statt aus denen des vorherigen, und behält die Verzeichnisse bei, die Sie mit `--add-dir` oder `/add-dir` hinzugefügt haben. Hooks, die das Verschieben aktiviert, erhalten immer noch [`${CLAUDE_PROJECT_DIR}`](/docs/de/hooks#reference-scripts-by-path) auf das Projektverzeichnis gesetzt, in dem die Sitzung gestartet wurde.609Claude Code trennt auch die MCP-Server des vorherigen Verzeichnisses und [lokalen](/docs/de/mcp#local-scope) ab, sowie die Server von [Plugins](/docs/de/mcp#plugin-provided-mcp-servers), die nach dem Verschieben nicht mehr aktiviert sind. Es nimmt [zusätzliche Verzeichnisse](#working-directories) aus den Einstellungen des neuen Verzeichnisses statt aus denen des vorherigen, und behält die Verzeichnisse bei, die Sie mit `--add-dir` oder `/add-dir` hinzugefügt haben. Hooks, die das Verschieben aktiviert, erhalten immer noch [`${CLAUDE_PROJECT_DIR}`](/docs/de/hooks#reference-scripts-by-path) auf das Projektverzeichnis gesetzt, in dem die Sitzung gestartet wurde.


639Um diese Konfiguration über Projekte hinweg zu teilen, verwenden Sie einen dieser Ansätze:639Um diese Konfiguration über Projekte hinweg zu teilen, verwenden Sie einen dieser Ansätze:

640 640 

641* **Benutzergesteuerte Konfiguration**: Platzieren Sie Dateien in `~/.claude/agents/`, `~/.claude/output-styles/` oder `~/.claude/settings.json`, um sie in jedem Projekt verfügbar zu machen641* **Benutzergesteuerte Konfiguration**: Platzieren Sie Dateien in `~/.claude/agents/`, `~/.claude/output-styles/` oder `~/.claude/settings.json`, um sie in jedem Projekt verfügbar zu machen

642* **Plugins**: Verpacken und verteilen Sie Konfiguration als [Plugin](/docs/de/plugins), das Teams installieren können642* **Plugins**: Verpacken und verteilen Sie Konfiguration als [Plugin](/docs/de/plugins/overview), das Teams installieren können

643* **Starten Sie aus dem Konfigurationsverzeichnis**: Führen Sie Claude Code aus dem Verzeichnis aus, das die `.claude/`-Konfiguration enthält, die Sie verwenden möchten643* **Starten Sie aus dem Konfigurationsverzeichnis**: Führen Sie Claude Code aus dem Verzeichnis aus, das die `.claude/`-Konfiguration enthält, die Sie verwenden möchten

644 644 

645<h2 id="how-permissions-interact-with-sandboxing">645<h2 id="how-permissions-interact-with-sandboxing">


727Jede Zeile ist eine Art von Inhalten, die ein Repository bereitstellen kann. Die Spalten sind die beiden Situationen, in denen Sie dem Ordner selbst nicht vertraut haben: Sie haben nur einem übergeordneten Ordner vertraut, oder Sie haben `claude -p` oder das SDK dort ausgeführt, was nie den Vertrauensdialog anzeigt. Die Spalte für übergeordnete Ordner gilt nicht in einem [verschachtelten Repository](#project-allow-rules-and-workspace-trust): In einer interaktiven Sitzung zeigt Claude Code den Vertrauensdialog dafür an, und ein `claude -p`- oder SDK-Lauf dort folgt der `claude -p`-Spalte.727Jede Zeile ist eine Art von Inhalten, die ein Repository bereitstellen kann. Die Spalten sind die beiden Situationen, in denen Sie dem Ordner selbst nicht vertraut haben: Sie haben nur einem übergeordneten Ordner vertraut, oder Sie haben `claude -p` oder das SDK dort ausgeführt, was nie den Vertrauensdialog anzeigt. Die Spalte für übergeordnete Ordner gilt nicht in einem [verschachtelten Repository](#project-allow-rules-and-workspace-trust): In einer interaktiven Sitzung zeigt Claude Code den Vertrauensdialog dafür an, und ein `claude -p`- oder SDK-Lauf dort folgt der `claude -p`-Spalte.

728 728 

729| Was das Repository bereitstellt | Sie haben nur einem übergeordneten Ordner vertraut | `claude -p` oder das SDK, Ordner wurde nie vertraut |729| Was das Repository bereitstellt | Sie haben nur einem übergeordneten Ordner vertraut | `claude -p` oder das SDK, Ordner wurde nie vertraut |

730| :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |730| :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

731| [Hooks](/docs/de/hooks) in Einstellungsdateien, der [`env`](/docs/de/settings-reference#env)-Block und Hilfsbefehle wie [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper), und die [Hooks](/docs/de/hooks#hooks-in-skills-and-agents) und [`allowed-tools`](/docs/de/skills#pre-approve-tools-for-a-skill) eines Projektskills | Verwendet | Verwendet. Workspace-Vertrauen gatet nie die `allowed-tools` eines Skills in einer Sitzung |731| [Hooks](/docs/de/hooks) in Einstellungsdateien, der [`env`](/docs/de/settings-reference#env)-Block und Hilfsbefehle wie [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper), und die [Hooks](/docs/de/hooks#hooks-in-skills-and-agents) und [`allowed-tools`](/docs/de/skills#pre-approve-tools-for-a-skill) eines Projektskills | Verwendet | Verwendet. Workspace-Vertrauen gatet nie die `allowed-tools` eines Skills in einer Sitzung |

732| `permissions.allow`-Regeln und `additionalDirectories` in `.claude/settings.json` | Nicht verwendet, bis Sie den Vertrauensdialog akzeptieren, der sie erneut auflistet | Nicht verwendet. Claude Code gibt eine [`this workspace has not been trusted`](/docs/de/errors#workspace-has-not-been-trusted)-Warnung auf stderr aus |732| `permissions.allow`-Regeln und `additionalDirectories` in `.claude/settings.json` | Nicht verwendet, bis Sie den Vertrauensdialog akzeptieren, der sie erneut auflistet | Nicht verwendet. Claude Code gibt eine [`this workspace has not been trusted`](/docs/de/errors#workspace-has-not-been-trusted)-Warnung auf stderr aus |

733| Frontmatter-Hooks in einem Projekt-[Subagent](/docs/de/sub-agents#hooks-in-subagent-frontmatter), einem Projekt-[`@skills-dir`-Plugin](/docs/de/plugins-reference#skills-directory-plugins) und [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces)-Einträgen aus dem Repository oder einem `--add-dir`-Verzeichnis | Nicht verwendet, und es wird kein Dialog angeboten | Nicht verwendet |733| Frontmatter-Hooks in einem Projekt-[Subagent](/docs/de/sub-agents#hooks-in-subagent-frontmatter), einem Projekt-[`@skills-dir`-Plugin](/docs/de/plugins/loading#plugins-shared-through-a-repository) und [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces)-Einträgen aus dem Repository oder einem `--add-dir`-Verzeichnis | Nicht verwendet, und es wird kein Dialog angeboten | Nicht verwendet |

734| Inline-[`mcpServers`](/docs/de/sub-agents#scope-mcp-servers-to-a-subagent) im Frontmatter eines Subagents aus dem Repository oder einem `--add-dir`-Verzeichnis. Vor v2.1.238 lud Claude Code diese Server in beiden Situationen | Nicht verwendet, und es wird kein Dialog angeboten | Nicht verwendet |734| Inline-[`mcpServers`](/docs/de/sub-agents#scope-mcp-servers-to-a-subagent) im Frontmatter eines Subagents aus dem Repository oder einem `--add-dir`-Verzeichnis. Vor v2.1.238 lud Claude Code diese Server in beiden Situationen | Nicht verwendet, und es wird kein Dialog angeboten | Nicht verwendet |

735| Server in `.mcp.json`, einschließlich derjenigen, die das Repository [in seinen eigenen Einstellungen genehmigt](/docs/de/mcp#project-server-approvals-and-workspace-trust) | Claude Code fragt Sie, bevor er sich mit ihnen verbindet. Die eigenen Genehmigungen des Repositorys zählen nicht | Verbunden ohne zu fragen, genehmigt oder nicht. Das SDK lädt sie nur, wenn `settingSources` Projekteinstellungen enthält. `claude mcp list` im selben Ordner meldet einen solchen Server immer noch als ausstehend |735| Server in `.mcp.json`, einschließlich derjenigen, die das Repository [in seinen eigenen Einstellungen genehmigt](/docs/de/mcp#project-server-approvals-and-workspace-trust) | Claude Code fragt Sie, bevor er sich mit ihnen verbindet. Die eigenen Genehmigungen des Repositorys zählen nicht | Verbunden ohne zu fragen, genehmigt oder nicht. Das SDK lädt sie nur, wenn `settingSources` Projekteinstellungen enthält. `claude mcp list` im selben Ordner meldet einen solchen Server immer noch als ausstehend |

736| Ein [`headersHelper`](/docs/de/mcp#trust-a-folder-before-its-headershelper-runs) auf einem Server in `.mcp.json`. Vor v2.1.238 führte Claude Code den Helper in beiden Situationen aus | Nicht ausgeführt, bis Sie den Vertrauensdialog akzeptieren, der erneut anzeigt, wo der Helper deklariert ist. Claude Code verbindet den Server nur mit seinen statischen `headers`, bis dahin | Nicht ausgeführt. Claude Code verbindet den Server mit seinen statischen `headers` und gibt eine [`headersHelper not run`](/docs/de/errors#headershelper-not-run)-Zeile pro Server auf stderr aus |736| Ein [`headersHelper`](/docs/de/mcp#trust-a-folder-before-its-headershelper-runs) auf einem Server in `.mcp.json`. Vor v2.1.238 führte Claude Code den Helper in beiden Situationen aus | Nicht ausgeführt, bis Sie den Vertrauensdialog akzeptieren, der erneut anzeigt, wo der Helper deklariert ist. Claude Code verbindet den Server nur mit seinen statischen `headers`, bis dahin | Nicht ausgeführt. Claude Code verbindet den Server mit seinen statischen `headers` und gibt eine [`headersHelper not run`](/docs/de/errors#headershelper-not-run)-Zeile pro Server auf stderr aus |

platforms.md +3 −3

Details

34Integrationen ermöglichen es Claude, mit Services außerhalb Ihrer Codebasis zu arbeiten.34Integrationen ermöglichen es Claude, mit Services außerhalb Ihrer Codebasis zu arbeiten.

35 35 

36| Integration | Was es tut | Verwenden Sie es für |36| Integration | Was es tut | Verwenden Sie es für |

37| :----------------------------------- | :------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------- |37| :----------------------------------------------- | :------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------- |

38| [Chrome](/docs/de/chrome) | Steuert Ihren Browser mit Ihren angemeldeten Sitzungen | Testen von Web-Apps, Ausfüllen von Formularen, Automatisierung von Websites ohne API |38| [Chrome](/docs/de/chrome) | Steuert Ihren Browser mit Ihren angemeldeten Sitzungen | Testen von Web-Apps, Ausfüllen von Formularen, Automatisierung von Websites ohne API |

39| [GitHub Actions](/docs/de/github-actions) | Führt Claude in Ihrer CI-Pipeline aus | Automatisierte PR-Überprüfungen, Issue-Triage, geplante Wartung |39| [GitHub Actions](/docs/de/github-actions) | Führt Claude in Ihrer CI-Pipeline aus | Automatisierte PR-Überprüfungen, Issue-Triage, geplante Wartung |

40| [GitLab CI/CD](/docs/de/gitlab-ci-cd) | Dasselbe wie GitHub Actions für GitLab | CI-gesteuerte Automatisierung auf GitLab |40| [GitLab CI/CD](/docs/de/gitlab-ci-cd) | Dasselbe wie GitHub Actions für GitLab | CI-gesteuerte Automatisierung auf GitLab |

41| [Code Review](/docs/de/code-review) | Überprüft jeden PR automatisch | Fehler vor der menschlichen Überprüfung erkennen |41| [Code Review](/docs/de/code-review) | Überprüft jeden PR automatisch | Fehler vor der menschlichen Überprüfung erkennen |

42| [Slack](/docs/de/slack) | Antwortet auf `@Claude`-Erwähnungen in Ihren Kanälen | Umwandlung von Fehlerberichten in Pull Requests aus Team-Chat |42| [Slack](/docs/de/slack) | Antwortet auf `@Claude`-Erwähnungen in Ihren Kanälen | Umwandlung von Fehlerberichten in Pull Requests aus Team-Chat |

43| [Claude Tag](/docs/de/claude-tag) | Führt `@Claude` als gemeinsame Identität Ihrer Organisation mit vom Administrator konfigurierten Zugriffsrechten aus | Gemeinsamer Team-Zugriff auf Team- und Enterprise-Plänen, anstelle von Slack-Sitzungen pro Benutzer |43| [Claude Tag](https://claude.com/docs/claude-tag) | Führt `@Claude` als gemeinsame Identität Ihrer Organisation mit vom Administrator konfigurierten Zugriffsrechten aus | Gemeinsamer Team-Zugriff auf Team- und Enterprise-Plänen, anstelle von Slack-Sitzungen pro Benutzer |

44 44 

45Für Integrationen, die hier nicht aufgeführt sind, ermöglichen [MCP-Server](/docs/de/mcp) und [Konnektoren](/docs/de/desktop#connect-external-tools) die Verbindung mit fast allem: Linear, Notion, Google Drive oder Ihren eigenen internen APIs.45Für Integrationen, die hier nicht aufgeführt sind, ermöglichen [MCP-Server](/docs/de/mcp) und [Konnektoren](/docs/de/desktop#connect-external-tools) die Verbindung mit fast allem: Linear, Notion, Google Drive oder Ihren eigenen internen APIs.

46 46 


87* [GitLab CI/CD](/docs/de/gitlab-ci-cd): dasselbe für GitLab87* [GitLab CI/CD](/docs/de/gitlab-ci-cd): dasselbe für GitLab

88* [Code Review](/docs/de/code-review): automatische Überprüfung bei jedem Pull Request88* [Code Review](/docs/de/code-review): automatische Überprüfung bei jedem Pull Request

89* [Slack](/docs/de/slack): Senden Sie Aufgaben aus Team-Chat, erhalten Sie PRs zurück89* [Slack](/docs/de/slack): Senden Sie Aufgaben aus Team-Chat, erhalten Sie PRs zurück

90* [Claude Tag](/docs/de/claude-tag): Führen Sie `@Claude` als gemeinsame Identität Ihrer Organisation in Team- und Enterprise-Plänen aus90* [Claude Tag](https://claude.com/docs/claude-tag): Führen Sie `@Claude` als gemeinsame Identität Ihrer Organisation in Team- und Enterprise-Plänen aus

91 91 

92<h3 id="remote-access">92<h3 id="remote-access">

93 Remote-Zugriff93 Remote-Zugriff

plugin-dependencies.md +0 −267 deleted

File Deleted View Diff

1> ## Documentation Index

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

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

4 

5# Versionsbeschränkungen für Plugin-Abhängigkeiten

6 

7> Deklarieren Sie Versionsbeschränkungen für Plugin-Abhängigkeiten, und bündeln Sie einen kuratierten Plugin-Satz hinter einer Installation.

8 

9Ein Plugin kann von anderen Plugins abhängen, indem es diese in `plugin.json` oder in seinem Marketplace-Eintrag auflistet. Standardmäßig verfolgt eine Abhängigkeit die neueste verfügbare Version, sodass eine vorgelagerte Veröffentlichung die Abhängigkeit Ihres Plugins ohne Warnung ändern kann. Versionsbeschränkungen ermöglichen es Ihnen, eine Abhängigkeit in einem getesteten Versionsbereich zu halten, bis Sie sich entscheiden, sie zu aktualisieren.

10 

11Wenn Sie ein Plugin installieren, das Abhängigkeiten deklariert, löst Claude Code diese automatisch auf und installiert sie, mit Ausnahme einer Abhängigkeit, deren Marketplace-Eintrag eine [`command`-Quelle](/docs/de/plugin-marketplaces#how-users-accept-the-command) oder einen [`headersHelper`](/docs/de/plugin-marketplaces#how-users-accept-a-headershelper-command) hat, den Sie zuerst selbst installieren. Später installieren `/reload-plugins`, die automatische Aktualisierung des Marketplace des abhängigen Plugins, das erneute Ausführen von `claude plugin install` auf dem abhängigen Plugin und `claude plugin marketplace add` alle deklarierten Abhängigkeiten, die noch nicht installiert sind, unter denselben Regeln. Wenn eine ungelöst bleibt, siehe [Abhängigkeitsfehler beheben](#resolve-dependency-errors).

12 

13Diese Anleitung ist für Plugin-Autoren, die Abhängigkeiten in `plugin.json` deklarieren, und für Marketplace-Verwalter, die Versionen taggen. Abhängigkeiten hier sind andere Plugins. Für die npm- und Bun-Pakete, die ein Plugin selbst verwendet, siehe [Node.js-Paketabhängigkeiten](/docs/de/plugins-reference#node-js-package-dependencies). Um Plugins mit Abhängigkeiten zu installieren, siehe [Plugins entdecken und installieren](/docs/de/discover-plugins). Für das vollständige Manifest-Schema siehe die [Plugins-Referenz](/docs/de/plugins-reference).

14 

15<h2 id="why-constrain-dependency-versions">

16 Warum Versionsbeschränkungen verwenden

17</h2>

18 

19Stellen Sie sich einen internen Marketplace vor, auf dem zwei Teams Plugins veröffentlichen. Das Platform-Team verwaltet `secrets-vault`, einen MCP-Server, der ein Secrets-Backend umhüllt. Das Deploy-Team verwaltet `deploy-kit`, das `secrets-vault` aufruft, um während Deployments Anmeldedaten abzurufen.

20 

21`deploy-kit` wird gegen `secrets-vault` v2.1.0 getestet. Ohne Versionsbeschränkung führt die nächste Veröffentlichung des Platform-Teams, die ein MCP-Tool umbenennt, dazu, dass die automatische Aktualisierung `secrets-vault` auf die neue Version für jeden Ingenieur aktualisiert und `deploy-kit` bricht.

22 

23Mit einer Versionsbeschränkung deklariert `deploy-kit`, dass es `secrets-vault` im Bereich `~2.1.0` benötigt. Ingenieure mit installiertem `deploy-kit` bleiben auf der höchsten passenden `2.1.x`-Patch-Version. Das Deploy-Team aktualisiert nach eigenem Zeitplan, indem es eine neue `deploy-kit`-Version mit einer breiteren Beschränkung veröffentlicht.

24 

25<h2 id="declare-a-dependency-with-a-version-constraint">

26 Abhängigkeit mit Versionsbeschränkung deklarieren

27</h2>

28 

29Listet Abhängigkeiten im `dependencies`-Array der `plugin.json` Ihres Plugins auf.

30 

31Das folgende Manifest deklariert eine unversionierte Abhängigkeit und eine beschränkte Abhängigkeit:

32 

33```json .claude-plugin/plugin.json theme={null}

34{

35 "name": "deploy-kit",

36 "version": "3.1.0",

37 "dependencies": [

38 "audit-logger",

39 { "name": "secrets-vault", "version": "~2.1.0" }

40 ]

41}

42```

43 

44Ein Eintrag kann ein einfacher String mit nur dem Plugin-Namen sein, wie `"audit-logger"` im `deploy-kit`-Manifest, das von der Version abhängt, die der Marketplace dieses Plugins bereitstellt. Für mehr Kontrolle verwenden Sie ein Objekt mit diesen Feldern:

45 

46| Feld | Typ | Beschreibung |

47| :------------ | :----- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

48| `name` | string | Plugin-Name. Wird im selben Marketplace wie das deklarierte Plugin aufgelöst. Erforderlich. |

49| `version` | string | Ein [semver-Bereich](https://github.com/npm/node-semver#ranges) wie `~2.1.0`, `^2.0`, `>=1.4` oder `=2.1.0`. Die Abhängigkeit wird in der höchsten getaggten Version abgerufen, die diesen Bereich erfüllt. |

50| `marketplace` | string | Ein anderer Marketplace, um `name` darin aufzulösen. Marketplace-übergreifende Abhängigkeiten sind blockiert, es sei denn, der Ziel-Marketplace ist in [`allowCrossMarketplaceDependenciesOn`](#depend-on-a-plugin-from-another-marketplace) in der `marketplace.json` des Root-Marketplace aufgelistet. |

51 

52Vorabversionen wie `2.0.0-beta.1` sind ausgeschlossen, es sei denn, Ihr Bereich entscheidet sich mit einem Vorabversions-Suffix wie `^2.0.0-0` dafür.

53 

54<h2 id="bundle-plugins-for-a-team">

55 Plugins für ein Team bündeln

56</h2>

57 

58Neben dem erforderlichen `name` kann ein Plugin-Manifest nur aus einem `dependencies`-Array bestehen. Die Installation zieht jede Abhängigkeit nach sich, was es zu einer Möglichkeit macht, einen kuratierten Plugin-Satz hinter einer Installation zu verpacken.

59 

60Beispielsweise kann ein Plattform-Team rollenspezifische Bundles in einem internen Marketplace veröffentlichen, damit Ingenieure ein `claude plugin install` ausführen, anstatt jedes Tool separat zu installieren:

61 

62```json .claude-plugin/plugin.json theme={null}

63{

64 "name": "backend-standard",

65 "version": "1.0.0",

66 "description": "Standard plugin set for backend engineers",

67 "dependencies": [

68 "secrets-vault",

69 "deploy-kit",

70 { "name": "db-migrate", "version": "^3.0" },

71 "oncall-runbook"

72 ]

73}

74```

75 

76Die Installation von `backend-standard` löst alle vier Abhängigkeiten auf und installiert sie.

77 

78Um später ein Tool zum Standard-Set hinzuzufügen, veröffentlichen Sie eine neue `backend-standard`-Version mit der zusätzlichen Abhängigkeit. Sofern der Marketplace nicht [Auto-Updates konfiguriert hat](/docs/de/discover-plugins#configure-auto-updates), wählen Ingenieure die neue Version auf eine von zwei Arten:

79 

80* Aktivieren Sie Auto-Update für den Marketplace in `/plugin`. Das nächste Auto-Update verschiebt das Bundle zur neuen Version und installiert alle Abhängigkeiten, die es hinzufügt.

81* Führen Sie `claude plugin update backend-standard` aus, dann `/reload-plugins`, um die neu hinzugefügten Abhängigkeiten zu installieren.

82 

83Um Bundles in einer Organisation auszurollen, fügen Sie das Bundle-Plugin zu `enabledPlugins` in [verwalteten Einstellungen](/docs/de/settings-reference#enabledplugins) hinzu.

84 

85<h2 id="depend-on-a-plugin-from-another-marketplace">

86 Abhängigkeit von einem Plugin aus einem anderen Marketplace

87</h2>

88 

89Standardmäßig weigert sich Claude Code, eine Abhängigkeit automatisch zu installieren, die sich in einem anderen Marketplace als das Plugin befindet, das sie deklariert. Dies verhindert, dass ein Marketplace stillschweigend Plugins aus einer Quelle abruft, die Sie nicht überprüft haben.

90 

91Um dies zu ermöglichen, fügt der Verwalter des Root-Marketplace den Namen des Ziel-Marketplace zu `allowCrossMarketplaceDependenciesOn` in `marketplace.json` hinzu. Der Root-Marketplace ist derjenige, der das Plugin hostet, das der Benutzer installiert. Nur seine Allowlist wird konsultiert, daher vertraut nicht durch zwischengelagerte Marketplaces.

92 

93Die folgende `marketplace.json` ermöglicht es `deploy-kit`, von einem Plugin aus `acme-shared` abhängig zu sein:

94 

95```json .claude-plugin/marketplace.json theme={null}

96{

97 "name": "acme-tools",

98 "owner": { "name": "Acme" },

99 "allowCrossMarketplaceDependenciesOn": ["acme-shared"],

100 "plugins": [

101 {

102 "name": "deploy-kit",

103 "source": "./deploy-kit",

104 "dependencies": [

105 { "name": "audit-logger", "marketplace": "acme-shared" }

106 ]

107 }

108 ]

109}

110```

111 

112Wenn das Feld fehlt oder den Ziel-Marketplace nicht enthält, schlägt die Installation mit einem `cross-marketplace`-Fehler fehl, der das zu setzende Feld benennt. Benutzer können die Abhängigkeit immer noch manuell zuerst installieren, was die Beschränkung erfüllt, ohne die Allowlist zu ändern.

113 

114<h2 id="test-a-plugin-and-its-dependency-locally">

115 Ein Plugin und seine Abhängigkeit lokal testen

116</h2>

117 

118Wenn Sie ein Plugin und das Plugin, von dem es abhängt, gleichzeitig entwickeln, laden Sie beide mit `--plugin-dir`:

119 

120```bash theme={null}

121claude --plugin-dir ./my-dependency --plugin-dir ./my-plugin

122```

123 

124Die lokale Kopie der Abhängigkeit erfüllt den Abhängigkeitseintrag Ihres Plugins, auch wenn der Eintrag einen Marketplace benennt, sodass Sie die Abhängigkeit nicht von seinem Marketplace installieren müssen. Claude Code überprüft keine [Versionsbeschränkung](#declare-a-dependency-with-a-version-constraint) gegen eine lokale Kopie, daher muss die lokale `plugin.json` keine `version` haben. Vor v2.1.242 stimmte ein Abhängigkeitseintrag, der einen Marketplace benannte, nie mit der lokalen Kopie überein, und Claude Code deaktivierte Ihr Plugin beim Laden.

125 

126Wenn sich beide Plugins in einem übergeordneten Ordner befinden, können Sie diesen Ordner einmal an `--plugin-dir` übergeben. Wenn der Ordner selbst kein Plugin ist, lädt Claude Code jeden untergeordneten Ordner, der eine `.claude-plugin/plugin.json` hat. Erfordert Claude Code v2.1.265 oder später.

127 

128Wenn Sie die Abhängigkeit nicht von ihrem Marketplace installiert haben, wird Ihr Plugin nicht mehr geladen, wenn die lokale Kopie verschwindet:

129 

130* **Sie haben die lokale Kopie deaktiviert**: Claude Code deaktiviert Ihr Plugin beim nächsten Plugin-Laden. Für einen Abhängigkeitseintrag, der einen Marketplace benennt, meldet Claude Code `Dependency "<name>@inline" is disabled — enable it or remove the dependency`; für einen Eintrag mit bloßem Namen meldet es die Abhängigkeit nach ihrem bloßen Namen. `<name>@inline` ist die Art, wie Claude Code jedes `--plugin-dir` und `--plugin-url` Plugin identifiziert.

131* **Sie haben eine Sitzung ohne das Flag `--plugin-dir` der Abhängigkeit gestartet**: Claude Code meldet die Abhängigkeit als nicht installiert. Übergeben Sie das Flag erneut, oder installieren Sie die Abhängigkeit von ihrem Marketplace.

132 

133<h2 id="tag-plugin-releases-for-version-resolution">

134 Tag-Plugin-Releases für Versionauflösung

135</h2>

136 

137Claude Code löst Versionsbeschränkungen gegen Git-Tags im Repository auf, das die Abhängigkeit hostet: das eigene Repository des Plugins für `github`, `url` und `git-subdir` [Plugin-Quellen](/docs/de/plugin-marketplaces#plugin-sources), oder das Marketplace-Repository für ein Plugin, das der Marketplace über einen relativen Pfad referenziert. Damit Claude Code die verfügbaren Versionen einer Abhängigkeit findet, müssen die Releases des Upstream-Plugins mit einer bestimmten Namenskonvention getaggt werden.

138 

139Taggen Sie jedes Release als `{plugin-name}--v{version}`, wobei `{version}` dem Feld `version` in der `plugin.json` dieses Commits entspricht. Führen Sie aus dem Plugin-Verzeichnis aus:

140 

141```bash theme={null}

142claude plugin tag --push

143```

144 

145Der Befehl `claude plugin tag` leitet den Tag-Namen aus dem Plugin-Manifest und dem umschließenden Marketplace-Eintrag ab. Vor dem Erstellen des Tags validiert er den Plugin-Inhalt, prüft, dass `plugin.json` und der Marketplace-Eintrag sich auf die Version einigen, erfordert einen sauberen Arbeitsbaum im Plugin-Verzeichnis und weigert sich, wenn das Tag bereits existiert.

146 

147* `--push` pusht das Tag zum Remote `origin`, daher benötigt das Repository einen konfigurierten Remote `origin`. Übergeben Sie `--remote`, um zu einem anderen zu pushen.

148* Wenn der Push fehlschlägt, wird das Tag trotzdem lokal erstellt und der Befehl beendet sich mit einem Fehler.

149* Mit `--push` endet eine erfolgreiche Ausführung mit `Created tag secrets-vault--v2.1.0` und `Pushed to origin`, wobei die letzte Zeile den Remote benennt, zu dem gepusht wurde. Ohne `--push` gibt der Befehl stattdessen den auszuführenden `git push`-Befehl aus.

150* `--dry-run` gibt aus, was getaggt würde, ohne es zu erstellen.

151 

152Das direkte Ausführen von `git tag secrets-vault--v2.1.0` ist gleichwertig, wenn Sie `plugin.json` und den Marketplace-Eintrag selbst synchron halten.

153 

154Das Plugin-Namen-Präfix ermöglicht es einem Marketplace-Repository, mehrere Plugins mit unabhängigen Versionssträngen zu hosten. Das Trennzeichen `--v` wird als Präfix-Abgleich auf den vollständigen Plugin-Namen geparst, daher werden Plugin-Namen, die Bindestriche enthalten, korrekt behandelt.

155 

156Wenn Sie ein Plugin installieren, das `{ "name": "secrets-vault", "version": "~2.1.0" }` deklariert, listet Claude Code die Tags im Repository auf, das `secrets-vault` hostet, filtert diejenigen, die mit `secrets-vault--v` beginnen, und ruft die höchste Version ab, die `~2.1.0` erfüllt. Wenn kein Tag im eigenen Repository des Plugins den Bereich erfüllt, schlägt die Installation mit `Dependency "secrets-vault@acme-tools" has no git tag satisfying ~2.1.0` fehl, was die Abhängigkeit zusammen mit ihrem Marketplace benennt. Für ein Plugin mit relativem Pfad ohne passendes Tag installiert Claude Code stattdessen die aktuelle Kopie des Marketplace und prüft die Beschränkung beim Laden des Plugins.

157 

158Für ein Plugin, das der Marketplace über einen relativen Pfad referenziert, löst ein als lokaler Ordnerpfad hinzugefügter Marketplace Tags auf die gleiche Weise auf, wenn der Ordner ein Git-Repository ist. Dies erfordert Claude Code v2.1.196 oder später. In zwei Fällen installiert Claude Code die Abhängigkeit stattdessen aus dem aktuellen Inhalt des Ordners:

159 

160* Frühere Versionen lesen keine Tags aus einem lokalen Marketplace-Ordner, daher wird eine eingeschränkte Abhängigkeit nur geladen, wenn diese Kopie den Bereich erfüllt.

161* Ein lokaler Ordner, der kein Git-Repository ist, hat keine Tags, unabhängig von der Version.

162 

163Die Semver des aufgelösten Tags wird separat von der `version` der `plugin.json` aufgezeichnet, daher verwenden Beschränkungsprüfungen das Tag, das tatsächlich abgerufen wurde, auch wenn die `plugin.json` bei diesem Commit einen veralteten Wert hat. Der Cache-Verzeichnisname für eine Tag-aufgelöste Installation enthält ein 12-stelliges Commit-SHA-Suffix, daher erhält die nächste Installation ein frisches Cache-Verzeichnis, anstatt veraltete Inhalte wiederzuverwenden, wenn ein Maintainer ein Tag zu einem anderen Commit verschiebt.

164 

165<Note>

166 Für Abhängigkeiten mit einer `npm`-, `archive`- oder `command`-[Plugin-Quelle](/docs/de/plugin-marketplaces#plugin-sources) steuert die Beschränkung nicht, welche Version abgerufen wird, da die Tag-basierte Auflösung nur auf Git-gestützten Quellen gilt. Die Beschränkung wird trotzdem zur Ladezeit geprüft, und das abhängige Plugin wird mit `dependency-version-unsatisfied` deaktiviert, wenn die installierte Version sie nicht erfüllt. Für eine `command`-Quelle prüft Claude Code die Version in der `plugin.json` der Abhängigkeit und ignoriert das Content-Hash-Suffix; eine Abhängigkeit, deren `plugin.json` keine Version setzt, erfüllt keine Beschränkung, daher setzen Sie eine, bevor Sie sie beschränken.

167 

168 Claude Code installiert selbst nie eine Abhängigkeit mit einer `command`-Quelle, daher [installieren Benutzer sie zuerst](/docs/de/plugin-marketplaces#how-users-accept-the-command). Claude Code führt auch nie den `headersHelper` auf einem Marketplace-Eintrag einer Abhängigkeit aus, daher [installieren Benutzer dieses Plugin zuerst](/docs/de/plugin-marketplaces#how-users-accept-a-headershelper-command).

169</Note>

170 

171<h2 id="how-constraints-interact">

172 Wie Beschränkungen interagieren

173</h2>

174 

175Wenn mehrere installierte Plugins dieselbe Abhängigkeit beschränken, schneidet Claude Code ihre Bereiche ab und löst die Abhängigkeit zur höchsten Version auf, die alle erfüllt. Die folgende Tabelle zeigt, wie häufige Kombinationen aufgelöst werden.

176 

177| Plugin A erfordert | Plugin B erfordert | Ergebnis |

178| :----------------- | :----------------- | :----------------------------------------------------------------------------------------------------------------------------------- |

179| `^2.0` | `>=2.1` | Eine Installation auf dem höchsten `2.x`-Tag bei oder über `2.1.0`. Beide Plugins werden geladen. |

180| `~2.1` | `~3.0` | Installation von Plugin B schlägt mit `range-conflict` fehl. Plugin A und die Abhängigkeit bleiben wie sie waren. |

181| `=2.1.0` | keine | Die Abhängigkeit bleibt bei `2.1.0`. Die automatische Aktualisierung überspringt neuere Versionen, während Plugin A installiert ist. |

182 

183Die automatische Aktualisierung ruft eine beschränkte Abhängigkeit auf dem höchsten Git-Tag ab, der jeden Bereich des installierten Plugins erfüllt, anstatt auf der neuesten Version des Marketplace, sodass die Abhängigkeit weiterhin Updates innerhalb ihres zulässigen Bereichs erhält. Wenn kein Tag alle Bereiche erfüllt, wird die Aktualisierung übersprungen und die Übersprungsmeldung erscheint in `/plugin` Fehler-Registerkarte und benennt das einschränkende Plugin.

184 

185Wenn Sie das letzte Plugin deinstallieren, das eine Abhängigkeit beschränkt, wird die Abhängigkeit nicht mehr gehalten und verfolgt bei der nächsten Aktualisierung wieder ihren Marketplace-Eintrag.

186 

187<h2 id="enable-or-disable-a-plugin-with-dependencies">

188 Plugin mit Abhängigkeiten aktivieren oder deaktivieren

189</h2>

190 

191Dieser Abschnitt behandelt Plugins, die von einem Marketplace installiert wurden. Für eine Kopie, die Sie mit `--plugin-dir` geladen haben, siehe [Plugin und seine Abhängigkeit lokal testen](#test-a-plugin-and-its-dependency-locally).

192 

193Das Aktivieren eines Plugins aktiviert auch die Plugins, von denen es abhängt, und das Deaktivieren eines Plugins wird blockiert, wenn ein anderes aktiviertes Plugin es immer noch benötigt.

194 

195Wenn Sie ein Plugin aktivieren, aktiviert Claude Code auch seine Abhängigkeiten im selben Bereich. Wenn eine Abhängigkeit ihre eigenen Abhängigkeiten hat, aktiviert Claude Code auch diese. Die Erfolgsmeldung listet auf, was sonst noch zusammen mit dem Plugin, das Sie benannt haben, aktiviert wurde. Wenn eine Abhängigkeit nicht aktiviert werden kann, weigert sich der Befehl und teilt Ihnen mit, was blockiert und wie Sie es beheben können:

196 

197| Bedingung | Ergebnis |

198| :--------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------- |

199| Eine Abhängigkeit ist nicht installiert | Die Aktivierung schlägt fehl und druckt den `claude plugin install`-Befehl für jede fehlende Abhängigkeit. |

200| Eine Abhängigkeit wird durch die Plugin-Richtlinie Ihrer Organisation blockiert | Die Aktivierung schlägt fehl und benennt die blockierte Abhängigkeit. |

201| Eine Abhängigkeit ist auf `false` in einem Bereich mit höherer Priorität als der Zielbereich gesetzt | Die Aktivierung schlägt fehl. Aktivieren Sie die Abhängigkeit in diesem Bereich, oder übergeben Sie `--scope`, um dort zu schreiben. |

202| Alle Abhängigkeiten sind installiert und zulässig | Die Aktivierung ist erfolgreich und schreibt `true` für das Plugin und jede Abhängigkeit, die im Zielbereich noch nicht aktiviert war. |

203 

204Dies gilt auch, wenn eine Abhängigkeit [`defaultEnabled: false`](/docs/de/plugins-reference#default-enablement) in ihrem Manifest setzt, da Claude Code ein explizites `true` dafür schreibt. Dasselbe gilt bei der Installation: Eine Abhängigkeit, die zur Erfüllung eines aktiven Plugins hinzugezogen wird, wird mit `true` installiert, unabhängig von ihrem eigenen Standard.

205 

206Wenn Sie ein Plugin deaktivieren, weigert sich Claude Code, wenn ein anderes aktiviertes Plugin immer noch davon abhängt. Der Fehler benennt die Plugins, die davon abhängen, und gibt Ihnen einen verketteten Befehl, der sie in der richtigen Reihenfolge deaktiviert, endend mit dem, das Sie angefordert haben.

207 

208Wenn beispielsweise `deploy-kit` von `secrets-vault` abhängt, schlägt das Deaktivieren von `secrets-vault` allein mit einer Ausgabe ähnlich der folgenden fehl:

209 

210```text theme={null}

211secrets-vault is still required by deploy-kit. Disable that plugin first, or

212disable everything together: claude plugin disable deploy-kit@acme-tools && claude plugin disable secrets-vault@acme-tools

213```

214 

215Kopieren Sie den verketteten Befehl aus dem Fehler, um den vollständigen Satz in einem Schritt zu deaktivieren.

216 

217<h2 id="remove-orphaned-auto-installed-dependencies">

218 Verwaiste automatisch installierte Abhängigkeiten entfernen

219</h2>

220 

221Automatisch installierte Abhängigkeiten bleiben auf der Festplatte, nachdem die Plugins, die sie installiert haben, deinstalliert werden, falls Sie ein abhängiges Plugin neu installieren oder die Abhängigkeit direkt weiterhin verwenden möchten. Um sie zu bereinigen, führen Sie `claude plugin prune` aus, um die automatisch installierten Abhängigkeiten aufzulisten, die kein installiertes Plugin mehr benötigt, und entfernen Sie sie nach einer Bestätigungsaufforderung.

222 

223```bash theme={null}

224claude plugin prune

225```

226 

227Wenn nichts zur Entfernung qualifiziert ist, gibt der Befehl `Nothing to prune` mit dem Grund aus und beendet sich. Dies ist die erwartete Ausgabe bei einer Neuinstallation, kein Fehler.

228 

229Standardmäßig arbeitet prune im Benutzerbereich und fragt vor dem Entfernen um Bestätigung:

230 

231* `--scope project` oder `--scope local` zielt auf einen anderen Bereich ab.

232* `--dry-run` listet auf, was entfernt würde, ohne etwas zu ändern.

233* `-y` überspringt die Bestätigungsaufforderung. Wenn stdin oder stdout kein Terminal ist, listet prune die verwaisten Abhängigkeiten auf und beendet sich, ohne sie zu entfernen, es sei denn, Sie übergeben `-y`.

234 

235Um als Teil einer Deinstallation zu bereinigen, übergeben Sie `--prune` an `claude plugin uninstall`. Nach dem Entfernen des benannten Plugins scannt Claude Code nach automatisch installierten Abhängigkeiten, die jetzt verwaist sind, und entfernt sie. Plugins, die Sie selbst installiert haben, werden niemals bereinigt, nur diejenigen, die automatisch durch das `dependencies`-Array eines anderen Plugins installiert wurden.

236 

237Das gleiche Bestätigungsverhalten gilt. Wenn stdin oder stdout kein Terminal ist, wird die Deinstallation trotzdem abgeschlossen, aber der Bereinigungsschritt listet die verwaisten Abhängigkeiten auf und entfernt nichts, es sei denn, Sie übergeben `-y`.

238 

239Um beispielsweise `deploy-kit` zu deinstallieren und die Abhängigkeiten zu bereinigen, die es hinterlässt:

240 

241```bash theme={null}

242claude plugin uninstall deploy-kit --prune

243```

244 

245<h2 id="resolve-dependency-errors">

246 Abhängigkeitsfehler beheben

247</h2>

248 

249Abhängigkeitsprobleme erscheinen in `claude plugin list` und in der `/plugin`-Schnittstelle als beschreibende Fehlermeldungen anstelle der wörtlichen Codes in dieser Tabelle. Claude Code deaktiviert das betroffene Plugin, bis Sie den Fehler beheben. Die Tabelle unten listet die häufigsten Fehler und deren Behebung auf.

250 

251| Fehler | Bedeutung | Wie zu beheben |

252| :------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

253| `dependency-unsatisfied` | Eine deklarierte Abhängigkeit ist nicht installiert, oder sie ist installiert, aber deaktiviert. | Führen Sie den `claude plugin install`-Befehl aus, der in der Fehlermeldung angezeigt wird. Wenn der Marketplace der Abhängigkeit noch nicht konfiguriert ist, fügen Sie ihn mit `claude plugin marketplace add` hinzu und Claude Code löst die Abhängigkeit automatisch auf. Wenn die Abhängigkeit deaktiviert ist, aktivieren Sie sie. |

254| `range-conflict` | Die Versionsanforderungen für eine Abhängigkeit können nicht kombiniert werden. Die Fehlermeldung benennt die Ursache: Keine Version erfüllt alle Bereiche, ein Bereich ist keine gültige Semver-Syntax, oder die kombinierten Bereiche sind zu komplex zum Schneiden. | Deinstallieren oder aktualisieren Sie eines der in Konflikt stehenden Plugins, beheben Sie alle ungültigen `version`-Strings, vereinfachen Sie lange `\|\|`-Ketten, oder bitten Sie den vorgelagerten Autor, seine Beschränkung zu erweitern. |

255| `dependency-version-unsatisfied` | Die Version der installierten Abhängigkeit liegt außerhalb des deklarierten Bereichs dieses Plugins. | Führen Sie `claude plugin install <dependency>@<marketplace>` aus, um die Abhängigkeit gegen alle aktuellen Beschränkungen neu aufzulösen. |

256| `no-matching-tag` | Das Repository der Abhängigkeit hat kein `{name}--v*`-Tag, das den Bereich erfüllt. | Überprüfen Sie, dass die vorgelagerte Stelle Versionen mit der obigen Konvention getaggt hat, oder lockern Sie Ihren Bereich. |

257 

258Um diese Fehler programmgesteuert zu überprüfen, führen Sie `claude plugin list --json` aus. Plugins mit Problemen enthalten ein `errors`-Feld, das diese auflistet. Plugins, die sauber geladen wurden, lassen das Feld weg.

259 

260<h2 id="see-also">

261 Siehe auch

262</h2>

263 

264* [Plugins erstellen](/docs/de/plugins): Erstellen Sie Plugins mit Skills, Agents und Hooks

265* [Plugin-Marketplace erstellen und verteilen](/docs/de/plugin-marketplaces): Hosten Sie Plugins für Ihr Team

266* [Plugins-Referenz](/docs/de/plugins-reference#plugin-manifest-schema): Das vollständige `plugin.json`-Schema

267* [Versionsverwaltung](/docs/de/plugins-reference#version-management): Wie die eigene Version eines Plugins aufgelöst wird und als Cache-Schlüssel verwendet wird

plugin-evals.md +86 −35

Details

6 6 

7> Schreiben Sie Eval-Fälle für Ihr Claude Code Plugin, führen Sie sie mit claude plugin eval aus, bewerten Sie die Ergebnisse, vergleichen Sie sie mit einer Baseline ohne Plugin und gaten Sie CI basierend auf dem Score.7> Schreiben Sie Eval-Fälle für Ihr Claude Code Plugin, führen Sie sie mit claude plugin eval aus, bewerten Sie die Ergebnisse, vergleichen Sie sie mit einer Baseline ohne Plugin und gaten Sie CI basierend auf dem Score.

8 8 

9`claude plugin eval` führt Ihr [Plugin](/docs/de/plugins) gegen eine Suite von Testfällen aus und bewertet die Ergebnisse. Jeder Fall ist eine realistische Eingabeaufforderung plus ein oder mehrere Grader. Ein Grader ist eine Bestanden/Nicht-Bestanden-Prüfung auf das, was Claude produziert hat, wie z. B. ein Regex über die Antwort, ob ein bestimmtes Tool aufgerufen wurde, oder eine Rubrik, die ein zweites Modell über die Antwort beurteilt.9Der Shell-Befehl `claude plugin eval` führt Ihr [Plugin](/docs/de/plugins/overview) gegen eine Suite von Testfällen aus und bewertet die Ergebnisse. Jeder Fall ist eine realistische Eingabeaufforderung plus ein oder mehrere Grader. Ein Grader ist eine Bestanden/Nicht-Bestanden-Prüfung auf das, was Claude produziert hat, wie z. B. ein Regex über die Antwort, ob ein bestimmtes Tool aufgerufen wurde, oder eine Rubrik, die ein zweites Modell über die Antwort beurteilt.

10 10 

11Sie müssen die Suite nicht von Hand schreiben; `claude plugin eval init` fragt Sie nach Ihrem Plugin, schlägt die Fälle und Grader vor, probiert sie aus und schreibt die Dateien, und Sie können Claude bitten, dasselbe aus einer bereits offenen Sitzung zu tun.11Sie müssen die Suite nicht von Hand schreiben; `claude plugin eval init` fragt Sie nach Ihrem Plugin, schlägt die Fälle und Grader vor, probiert sie aus und schreibt die Dateien, und Sie können Claude bitten, dasselbe aus einer bereits offenen Sitzung zu tun.

12 12 

13Verwenden Sie Evals, um zu messen, wie zuverlässig Ihr Plugin Claude zum richtigen Ergebnis lenkt, um Regressionen zu erkennen, wenn Sie das Plugin ändern oder ein neues Modell ausgeliefert wird, und um zu sehen, was das Plugin im Vergleich zu keinem Plugin beiträgt.13Verwenden Sie Evals, um zu:

14 14 

15Diese Seite ist für Plugin- und Skill-Autoren, die ein funktionierendes Plugin haben und sein Verhalten testen möchten, sowie für Teams, die Plugin-Änderungen in CI gaten. Das Fallformat unterscheidet sich von der Datei `evals/evals.json`, die das [skill-creator Plugin](/docs/de/skills#run-evals-with-skill-creator) verwendet. Um ein Plugin zu erstellen, siehe [Plugins erstellen](/docs/de/plugins); um die Dateien eines Plugins auf Syntax- und Schemafehler zu überprüfen, anstatt sein Verhalten zu überprüfen, verwenden Sie [`claude plugin validate`](/docs/de/plugins-reference#plugin-validate).15* Messen, wie zuverlässig Ihr Plugin Claude zum richtigen Ergebnis lenkt

16* Regressionen erkennen, wenn Sie das Plugin ändern oder ein neues Modell ausgeliefert wird

17* Sehen, was das Plugin im Vergleich zu keinem Plugin beiträgt

18 

19Diese Seite ist für Plugin- und Skill-Autoren, die ein funktionierendes Plugin haben und sein Verhalten testen möchten, sowie für Teams, die Plugin-Änderungen in CI gaten. Das Fallformat unterscheidet sich von der Datei `evals/evals.json`, die das [skill-creator Plugin](/docs/de/skills#run-evals-with-skill-creator) verwendet. Um ein Plugin zu erstellen, siehe [Plugin erstellen](/docs/de/plugins/create); um die Dateien eines Plugins auf Syntax- und Schemafehler zu überprüfen, anstatt sein Verhalten zu überprüfen, verwenden Sie [`claude plugin validate`](/docs/de/plugins/cli-reference#plugin-validate).

16 20 

17<Note>21<Note>

18 Jeder Eval-Durchlauf und jeder Judge-Grader ist ein echter Modellaufruf auf Ihrem Konto, der gegen die Nutzung Ihres Plans oder Ihre API-Rechnung angerechnet wird. Überprüfen Sie daher zunächst die [Anforderungen](#requirements). Erstellen Sie dann Ihre [erste Eval-Suite](#create-your-first-eval-suite), oder gehen Sie zu [Evals in CI ausführen](#run-evals-in-ci), wenn Sie bereits eine haben.22 Jeder Eval-Durchlauf und jeder Judge-Grader ist ein echter Modellaufruf auf Ihrem Konto, der gegen die Nutzung Ihres Plans oder Ihre API-Rechnung angerechnet wird. Überprüfen Sie daher zunächst die [Anforderungen](#requirements). Erstellen Sie dann Ihre [erste Eval-Suite](#create-your-first-eval-suite), oder gehen Sie zu [Evals in CI ausführen](#run-evals-in-ci), wenn Sie bereits eine haben.


25Um Plugin-Evals auszuführen, benötigen Sie:29Um Plugin-Evals auszuführen, benötigen Sie:

26 30 

27* Claude Code v2.1.269 oder später. Führen Sie `claude --version` aus, um zu überprüfen, und `claude update`, um zu aktualisieren.31* Claude Code v2.1.269 oder später. Führen Sie `claude --version` aus, um zu überprüfen, und `claude update`, um zu aktualisieren.

28* Ein Plugin-Verzeichnis mit einem `plugin.json` oder `.claude-plugin/plugin.json` Manifest, oder ein [Skills-Directory-Plugin](/docs/de/plugins-reference#skills-directory-plugins).32* Ein Plugin-Verzeichnis mit einem `plugin.json` oder `.claude-plugin/plugin.json` Manifest, oder ein [Skills-Directory-Plugin](/docs/de/plugins/loading#plugins-shared-through-a-repository).

29* Die gleiche Authentifizierung und den gleichen Modell-Provider, den Ihre normalen Claude Code Sitzungen verwenden. Eval-Durchläufe, Judge-bewertete Grader und `claude plugin eval init` rufen das Modell mit Ihren Anmeldedaten auf, daher werden sie gegen Ihre Plan-Nutzungslimits oder Ihre API-Rechnung angerechnet. Wenn der Befehl Kosten meldet, ist die Zahl eine [Listenpreis-Schätzung](/docs/de/costs) dieser Aufrufe.33* Die gleiche Authentifizierung und den gleichen Modell-Provider, den Ihre normalen Claude Code Sitzungen verwenden. Eval-Durchläufe, Judge-bewertete Grader und `claude plugin eval init` rufen das Modell mit Ihren Anmeldedaten auf, daher werden sie gegen Ihre Plan-Nutzungslimits oder Ihre API-Rechnung angerechnet. Wenn der Befehl Kosten meldet, ist die Zahl eine [Listenpreis-Schätzung](/docs/de/costs) dieser Aufrufe.

30 34 

31<h2 id="how-an-eval-run-works">35<h2 id="how-an-eval-run-works">


70 claude plugin eval init74 claude plugin eval init

71 ```75 ```

72 76 

73 Wenn Claude Code diesem Verzeichnis noch nicht vertraut, fragt es zunächst `Trust this plugin directory?`; antworten Sie mit `y`. Eine interaktive Claude Code Sitzung wird dann geöffnet. Claude liest Ihr Plugin und fragt Sie, wie ein gutes Ergebnis aussieht, schlägt Eingabeaufforderungen vor, die das Plugin auslösen sollten und nicht sollten, entwirft Grader für jeden, probiert sie einmal aus, um zu überprüfen, ob sie sich verhalten, und schreibt ein Fallverzeichnis pro Eingabeaufforderung unter `evals/`, jeweils nach seiner Eingabeaufforderung benannt. Wenn Claude Ihnen sagt, dass die Suite bereit ist, beenden Sie diese Sitzung mit `/exit` oder Ctrl+D, um zu Ihrer Shell zurückzukehren.77 Wenn Claude Code diesem Verzeichnis noch nicht vertraut, fragt es zunächst `Trust this plugin directory?`; antworten Sie mit `y`.

78 

79 Eine interaktive Claude Code Sitzung wird dann geöffnet. Claude liest Ihr Plugin und fragt Sie, wie ein gutes Ergebnis aussieht, schlägt Eingabeaufforderungen vor, die das Plugin auslösen sollten und nicht sollten, entwirft Grader für jeden, probiert sie einmal aus, um zu überprüfen, ob sie sich verhalten, und schreibt ein Fallverzeichnis pro Eingabeaufforderung unter `evals/`, jeweils nach seiner Eingabeaufforderung benannt.

80 

81 Wenn Claude Ihnen sagt, dass die Suite bereit ist, beenden Sie diese Sitzung mit `/exit` oder Ctrl+D, um zu Ihrer Shell zurückzukehren.

74 82 

75 Wenn Sie bereits eine Claude Code Sitzung am Plugin-Stammverzeichnis geöffnet haben, können Sie stattdessen Claude dort bitten, `claude plugin eval init` auszuführen. Claude führt den Befehl aus und stellt Ihnen dann die gleichen Fragen in dieser Konversation.83 Wenn Sie bereits eine Claude Code Sitzung am Plugin-Stammverzeichnis geöffnet haben, können Sie stattdessen Claude dort bitten, `claude plugin eval init` auszuführen. Claude führt den Befehl aus und stellt Ihnen dann die gleichen Fragen in dieser Konversation.

76 84 


184FAIL if <what a wrong or missing response looks like>.192FAIL if <what a wrong or missing response looks like>.

185```193```

186 194 

187Fügen Sie dann einen zweiten Grader hinzu, der überprüft, ob Ihr Skill das ist, was die Antwort produziert hat. Erstellen Sie `evals/first-case/graders/skill-fired.md`, ersetzen Sie `your-skill-name` durch den `name` aus Ihrem Skill's `SKILL.md`:195Fügen Sie dann einen zweiten Grader hinzu, der überprüft, ob Ihr Skill das ist, was die Antwort produziert hat. Erstellen Sie `evals/first-case/graders/skill-fired.md`, ersetzen Sie `your-skill-name` durch den Skill-Verzeichnisnamen unter `skills/`, das ist der Name, unter dem Claude ihn aufruft:

188 196 

189```markdown theme={null}197```markdown theme={null}

190---198---


194---202---

195```203```

196 204 

197Dies wird bestanden, wenn Claude diesen Skill mindestens einmal während des Durchlaufs aufgerufen hat, einschließlich seiner namensraum-qualifizierten Form `plugin-name:skill-name`. [Grader-Typen](#grader-types) listet die anderen verfügbaren Prüfungen auf, wie z. B. das Abgleichen eines Regex oder das Bestätigen, dass eine Datei erstellt wurde.205Dies wird bestanden, wenn Claude diesen Skill mindestens einmal während des Durchlaufs aufgerufen hat, einschließlich seiner namensraum-qualifizierten Form `plugin-name:skill-name`.

206 

207[Grader-Typen](#grader-types) listet die anderen verfügbaren Prüfungen auf, wie z. B. das Abgleichen eines Regex oder das Bestätigen, dass eine Datei erstellt wurde.

198 208 

199Wenn beide Dateien gespeichert sind, führen Sie den Fall wie die [Schnellstart](#create-your-first-eval-suite) mit `claude plugin eval .` vom Plugin-Stammverzeichnis aus.209Wenn beide Dateien gespeichert sind, führen Sie den Fall wie die [Schnellstart](#create-your-first-eval-suite) mit `claude plugin eval .` vom Plugin-Stammverzeichnis aus.

200 210 


202 Legen Sie Durchlauf-Limits und Tools in prompt.md fest212 Legen Sie Durchlauf-Limits und Tools in prompt.md fest

203</h3>213</h3>

204 214 

205Legen Sie `max_turns`, `timeout_seconds`, `model`, `tags` und die `allowed_tools` eines Falls in der Frontmatter von `prompt.md` fest; die [prompt.md Frontmatter](#prompt-md-fields) Referenz listet jedes Feld und seinen Standard auf. Claude erhält den Body genau wie Sie ihn geschrieben haben. `@path` Erwähnungen darin werden nicht in Datei-Anhänge erweitert, daher müssen Sie, wenn Claude eine Datei lesen muss, ein Tool dafür in `allowed_tools` gewähren.215Legen Sie `max_turns`, `timeout_seconds`, `model`, `tags` und die `allowed_tools` eines Falls in der Frontmatter von `prompt.md` fest; die [prompt.md Frontmatter](#prompt-md-fields) Referenz listet jedes Feld und seinen Standard auf.

216 

217Claude erhält den Body genau wie Sie ihn geschrieben haben. `@path` Erwähnungen darin werden nicht in Datei-Anhänge erweitert, daher müssen Sie, wenn Claude eine Datei lesen muss, ein Tool dafür in `allowed_tools` gewähren.

206 218 

207<h3 id="grade-the-result">219<h3 id="grade-the-result">

208 Wählen Sie Grader und gewichten Sie sie220 Wählen Sie Grader und gewichten Sie sie


210 222 

211Die Frontmatter eines Graders legt seinen `type` fest und optional ein `weight`, das ihn für mehr des Scores des Durchlaufs zählen lässt, und einen [`arm`](#compare-against-a-no-plugin-baseline), der steuert, wie er gegen die Baseline bewertet wird. Von den sechs Typen werden `regex`, `tool_used`, `tool_order` und `file_exists` aus dem Transkript und den Dateien berechnet und kosten nichts, während `llm` und `baseline` ein Judge-Modell aufrufen und zu den Kosten des Durchlaufs beitragen.223Die Frontmatter eines Graders legt seinen `type` fest und optional ein `weight`, das ihn für mehr des Scores des Durchlaufs zählen lässt, und einen [`arm`](#compare-against-a-no-plugin-baseline), der steuert, wie er gegen die Baseline bewertet wird. Von den sechs Typen werden `regex`, `tool_used`, `tool_order` und `file_exists` aus dem Transkript und den Dateien berechnet und kosten nichts, während `llm` und `baseline` ein Judge-Modell aufrufen und zu den Kosten des Durchlaufs beitragen.

212 224 

213Es gibt keine benutzerdefinierten Code-Grader. [Grader-Typen](#grader-types) listet die Optionen und Bestanden-Bedingungen jedes Typs auf, und [was ein Grader ansehen kann](#what-a-grader-can-look-at) listet die Werte auf, die `target` und `focus` akzeptieren.225Es gibt keine benutzerdefinierten Code-Grader.

226 

227[Grader-Typen](#grader-types) listet die Optionen und Bestanden-Bedingungen jedes Typs auf, und [was ein Grader ansehen kann](#what-a-grader-can-look-at) listet die Werte auf, die `target` und `focus` akzeptieren.

214 228 

215Der Judge für `llm` und `baseline` Grader ist standardmäßig ein kleines schnelles Modell. Übergeben Sie `--judge-model sonnet` oder eine vollständige Modell-ID, um ein stärkeres für nuancierte Rubriken zu verwenden.229Der Judge für `llm` und `baseline` Grader ist standardmäßig ein kleines schnelles Modell. Übergeben Sie `--judge-model sonnet` oder eine vollständige Modell-ID, um ein stärkeres für nuancierte Rubriken zu verwenden.

216 230 


229 Bewerten Sie gegen die Baseline ohne Plugin243 Bewerten Sie gegen die Baseline ohne Plugin

230</h3>244</h3>

231 245 

232Wenn ein Plugin unter Test steht, wird jeder Fall standardmäßig in zwei Arms ausgeführt. Der With-Arm ist seine Durchläufe mit dem Plugin geladen, und der Without-Arm ist die gleiche Anzahl von Durchläufen ohne Plugin. Die Zusammenfassung und der Bericht zeigen beide Scores und `Δ`, den With-Arm Score minus den Without-Arm Score. Übergeben Sie `--ablation none`, um nur den With-Arm auszuführen, was die Kosten halbiert, wenn Sie den Vergleich nicht benötigen, wie z. B. beim Iterieren über Grader.246Wenn ein Plugin unter Test steht, wird jeder Fall standardmäßig in zwei Arms ausgeführt. Der With-Arm ist seine Durchläufe mit dem Plugin geladen, und der Without-Arm ist die gleiche Anzahl von Durchläufen ohne Plugin. Die Zusammenfassung und der Bericht zeigen beide Scores und `Δ`, den With-Arm Score minus den Without-Arm Score.

247 

248Übergeben Sie `--ablation none`, um nur den With-Arm auszuführen, was die Kosten halbiert, wenn Sie den Vergleich nicht benötigen, wie z. B. beim Iterieren über Grader.

233 249 

234In einem Zwei-Arm-Durchlauf werden einige Grader mit `scored: false` gemeldet. Eine Prüfung wie „der Skill wurde aufgerufen" kann ohne das Plugin nie bestanden werden, daher würde das Zählen den Without-Arm gegen Null drücken und `Δ` aufblasen. Um die beiden Arms vergleichbar zu halten, schließt Claude Code solche Grader aus der Bewertung in beiden Arms aus und meldet sie im With-Arm nur als Bestanden/Nicht-Bestanden-Indikatoren. Das umfasst:250In einem Zwei-Arm-Durchlauf werden einige Grader mit `scored: false` gemeldet. Eine Prüfung wie „der Skill wurde aufgerufen" kann ohne das Plugin nie bestanden werden, daher würde das Zählen den Without-Arm gegen Null drücken und `Δ` aufblasen. Um die beiden Arms vergleichbar zu halten, schließt Claude Code solche Grader aus der Bewertung in beiden Arms aus und meldet sie im With-Arm nur als Bestanden/Nicht-Bestanden-Indikatoren. Das umfasst:

235 251 

236* Jeden `tool_used` Grader, dessen `tool` `Skill` ist252* Jeden `tool_used` Grader, dessen `tool` `Skill` ist

253* Jeden `regex` Grader mit `target: mock_calls` und jeden `llm` Grader mit `focus: mock_calls`, wenn jeder [gemockte Server](#mock-mcp-servers) im Fall einer ist, den Ihr Plugin deklariert

237* Jeden Grader, den Sie mit `arm: with-only` markieren254* Jeden Grader, den Sie mit `arm: with-only` markieren

238 255 

239Wenn jeder Grader in einem Fall einer dieser ist, werden sie stattdessen normal bewertet, da es nichts mehr zu bewerten gäbe. Setzen Sie `arm: both` auf einen Grader, um ihn in beiden Arms unabhängig zu bewerten, was Sie für eine „darf den Skill nicht aufrufen" Prüfung mit `min: 0` und `max: 0` wollen. Unter `--ablation none` wird nichts ausgeschlossen, daher kann die gleiche Suite in den beiden Modi einen anderen absoluten Score produzieren.256Drei Einstellungen ändern diese Ausschließung:

257 

258* **Jeder Grader ausgeschlossen**: Wenn jeder Grader in einem Fall in der ausgeschlossenen Menge ist, werden sie stattdessen normal bewertet, da es nichts mehr zu bewerten gäbe.

259* **`arm: both`**: Setzen Sie `arm: both` auf einen Grader, um ihn in beiden Arms unabhängig zu bewerten, was Sie für eine „darf den Skill nicht aufrufen" Prüfung mit `min: 0` und `max: 0` wollen.

260* **`--ablation none`**: Unter `--ablation none` wird nichts ausgeschlossen, daher kann die gleiche Suite in den beiden Modi einen anderen absoluten Score produzieren.

240 261 

241<h3 id="use-a-different-eval-directory">262<h3 id="use-a-different-eval-directory">

242 Verwenden Sie ein anderes Eval-Verzeichnis263 Verwenden Sie ein anderes Eval-Verzeichnis


253 Richten Sie Fixtures und Mocks ein274 Richten Sie Fixtures und Mocks ein

254</h2>275</h2>

255 276 

256Ein Fall kann mehr als eine Eingabeaufforderung benötigen: Dateien oder ein Git-Repository im Arbeitsbereich, eine frühere Konversation zum Fortsetzen oder Antworten von den MCP-Servern, mit denen Ihr Plugin spricht. Jede davon wird neben dem Fall eingerichtet, damit Durchläufe wiederholbar bleiben.277Ein Fall kann mehr als eine Eingabeaufforderung benötigen: Dateien oder ein Git-Repository im Arbeitsbereich, eine frühere Konversation zum Fortsetzen oder Antworten von den MCP-Servern, mit denen Ihr Plugin verbunden ist. Jede davon wird neben dem Fall eingerichtet, damit Durchläufe wiederholbar bleiben.

257 278 

258<h3 id="add-setup-or-history-with-case-yaml">279<h3 id="add-setup-or-history-with-case-yaml">

259 Säen Sie den Arbeitsbereich oder die Konversation280 Säen Sie den Arbeitsbereich oder die Konversation

260</h3>281</h3>

261 282 

262Jeder Durchlauf startet in einem leeren Arbeitsbereich. Wenn ein Fall mehr als die Eingabeaufforderung benötigt, fügen Sie neben `prompt.md` eine `case.yaml` mit einem `context` Block hinzu.283Jeder Durchlauf startet in einem leeren Arbeitsbereich. Wenn ein Fall mehr als die Eingabeaufforderung benötigt, fügen Sie neben `prompt.md` eine `case.yaml` mit einem `context` Block hinzu:

263 284 

264Um zuerst Fixture-Dateien oder ein Git-Repository zu erstellen, schreiben Sie ein Bash-Skript im Fallverzeichnis und benennen Sie es in `context.scaffold_script`. Das Skript wird als Sie ausgeführt, außerhalb der Sandbox des Agenten, und nur wenn Sie `--scaffold` übergeben, daher übergeben Sie dieses Flag nur für Suites, die Sie oder Ihre Organisation geschrieben haben. Um eine frühere Konversation fortzusetzen, speichern Sie das Transkript als `.jsonl` Datei und benennen Sie es in `context.history_file`, und die Eingabeaufforderung des Falls wird zum nächsten Benutzer-Turn. Um Claude Fixture-Verzeichnisse im Fall während des Durchlaufs lesen zu lassen, listen Sie sie in `context.add_dirs` auf.285* **Fixture-Dateien oder ein Git-Repository**: Schreiben Sie ein Bash-Skript im Fallverzeichnis und benennen Sie es in `context.scaffold_script`. Das Skript wird als Sie ausgeführt, außerhalb der Sandbox des Agenten, und nur wenn Sie `--scaffold` übergeben, daher übergeben Sie dieses Flag nur für Suites, die Sie oder Ihre Organisation geschrieben haben.

286* **Eine frühere Konversation zum Fortsetzen**: Speichern Sie das Transkript als `.jsonl` Datei und benennen Sie es in `context.history_file`, und die Eingabeaufforderung des Falls wird zum nächsten Benutzer-Turn.

287* **Fixture-Verzeichnisse, die Claude während des Durchlaufs lesen kann**: Listen Sie sie in `context.add_dirs` auf.

265 288 

266Eine `case.yaml` benötigt auch `schema_version: "1.1"` und `name`; die [case.yaml Felder](#case-yaml-fields) Referenz hat die vollständige Liste.289Eine `case.yaml` benötigt auch `schema_version: "1.1"` und `name`; die [case.yaml Felder](#case-yaml-fields) Referenz hat die vollständige Liste.

267 290 


280 Mock MCP Server303 Mock MCP Server

281</h3>304</h3>

282 305 

283Sie können ein Plugin evaluieren, dessen Skills MCP-Tools aufrufen, ohne den echten Service dahinter. Legen Sie eine Markdown-Datei pro Tool unter `evals/mocks/<server>/<tool>.md` für die ganze Suite oder unter einem eigenen `mocks/` Verzeichnis eines Falls für einen Fall, wobei `<server>` der Name des Servers in der [MCP-Konfiguration](/docs/de/plugins-reference#mcp-servers) Ihres Plugins ist.306Sie können ein Plugin evaluieren, dessen Skills MCP-Tools aufrufen, ohne den echten Service dahinter. Legen Sie eine Markdown-Datei pro Tool unter `evals/mocks/<server>/<tool>.md` für die ganze Suite oder unter einem eigenen `mocks/` Verzeichnis eines Falls für einen Fall, wobei `<server>` der Name des Servers in der [MCP-Konfiguration](/docs/de/plugins/components#mcp-servers) Ihres Plugins ist.

284 307 

285Ein Durchlauf startet niemals die echten MCP-Server Ihres Plugins, es sei denn, Sie fragen danach. Claude Code registriert einen Stand-In unter jedem Server-Namen. Tools mit einer Mock-Datei antworten daraus und sind ohne einen `--allow-tools` Grant erlaubt, und ein Tool ohne Mock-Datei ist für Claude nicht verfügbar. Ein Server ohne Mocks überhaupt erscheint in der `mocked:` Fortschrittszeile des Falls als `plugin_<plugin>_<server>[not started: no mock]`.308Ein Durchlauf startet niemals die echten MCP-Server Ihres Plugins, es sei denn, Sie fragen danach. Claude Code registriert einen Ersatz-Server unter jedem Server-Namen. Tools mit einer Mock-Datei antworten daraus und sind ohne einen `--allow-tools` Grant erlaubt, und ein Tool ohne Mock-Datei ist für Claude nicht verfügbar. Ein Server ohne Mocks überhaupt erscheint in der `mocked:` Fortschrittszeile des Falls als `plugin_<plugin>_<server>[not started: no mock]`.

286 309 

287Der Body der Datei ist das, was das Tool an Claude zurückgibt. Dieser Mock steht für ein `create_issue` Tool auf einem Server namens `tracker` ein, überprüft die Eingabe, die Claude sendet, und gibt den Titel zurück. Speichern Sie es als `evals/mocks/tracker/create_issue.md`:310Der Body der Datei ist das, was das Tool an Claude zurückgibt. Dieser Mock steht für ein `create_issue` Tool auf einem Server namens `tracker` ein, überprüft die Eingabe, die Claude sendet, und gibt den Titel zurück. Speichern Sie es als `evals/mocks/tracker/create_issue.md`:

288 311 


296Created issue #4821: {{input.title}}319Created issue #4821: {{input.title}}

297```320```

298 321 

299Fügen Sie Felder aus der Eingabe des Aufrufs mit `{{input.<field>}}` ein, und den Inhalt einer Fixture-Datei neben dem Mock mit `{{file:fixtures/{input.<field>}.json}}`. Der `expect:` Block schützt die Eingabe. Wenn ein Aufruf ihn verletzt, bricht der Durchlauf mit Score 0 ab und zeichnet auf, warum, daher kann ein Fall bestätigen, was Ihr Plugin den Server zu tun bat. Setzen Sie `error: true`, um den Body stattdessen als Tool-Fehler zurückzugeben, oder `type: agent`, um ein kleines Modell als Server aus Anweisungen im Body antworten zu lassen. Die [Mock-Datei-Referenz](#mock-files) listet jeden Schlüssel und die `_server.md` und `_tools.json` Dateien auf.322Eine Mock-Datei Body und Frontmatter akzeptieren diese Optionen:

323 

324* **Substitutionen**: Fügen Sie Felder aus der Eingabe des Aufrufs mit `{{input.<field>}}` ein, und den Inhalt einer Fixture-Datei neben dem Mock mit `{{file:fixtures/{input.<field>}.json}}`.

325* **`expect:`**: Der `expect:` Block schützt die Eingabe. Wenn ein Aufruf ihn verletzt, bricht der Durchlauf mit Score 0 ab und zeichnet auf, warum, daher kann ein Fall bestätigen, was Ihr Plugin den Server zu tun bat.

326* **`error: true`**: Setzen Sie `error: true`, um den Body stattdessen als Tool-Fehler zurückzugeben.

327* **`type: agent`**: Setzen Sie `type: agent`, um ein kleines Modell als Server aus Anweisungen im Body antworten zu lassen.

328 

329Die [Mock-Datei-Referenz](#mock-files) listet jeden Schlüssel und die `_server.md` und `_tools.json` Dateien auf.

300 330 

301Um die Aufrufe selbst zu bewerten, zeigen Sie einen Grader auf `target: mock_calls`.331Um die Aufrufe selbst zu bewerten, zeigen Sie einen Grader auf `target: mock_calls`.

302 332 


330| Ein Plugin-Stammverzeichnis, wie `.` | Jeder Fall unter seinem Eval-Verzeichnis, mit diesem Plugin geladen |360| Ein Plugin-Stammverzeichnis, wie `.` | Jeder Fall unter seinem Eval-Verzeichnis, mit diesem Plugin geladen |

331| Eine einzelne `prompt.md` oder `case.yaml` Datei | Dieser Fall, mit seinem einschließenden Plugin geladen |361| Eine einzelne `prompt.md` oder `case.yaml` Datei | Dieser Fall, mit seinem einschließenden Plugin geladen |

332| Ein installiertes Plugin nach Name, `name` oder `name@marketplace` | Die Fälle im Eval-Verzeichnis der installierten Kopie, mit der installierten Kopie geladen. Ergebnisse werden unter `./evals/results/` in Ihrem aktuellen Verzeichnis geschrieben, oder `./<dir>/results/` mit `--eval-dir` |362| Ein installiertes Plugin nach Name, `name` oder `name@marketplace` | Die Fälle im Eval-Verzeichnis der installierten Kopie, mit der installierten Kopie geladen. Ergebnisse werden unter `./evals/results/` in Ihrem aktuellen Verzeichnis geschrieben, oder `./<dir>/results/` mit `--eval-dir` |

333| `name@skills-dir` | Das gleiche, für ein [Skills-Directory-Plugin](/docs/de/plugins-reference#skills-directory-plugins) |363| `name@skills-dir` | Das gleiche, für ein [Skills-Directory-Plugin](/docs/de/plugins/loading#plugins-shared-through-a-repository) |

334| Weggelassen | Das aktuelle Verzeichnis als Pfad |364| Weggelassen | Das aktuelle Verzeichnis als Pfad |

335 365 

336Fügen Sie `--case <glob>` hinzu, um nach Fallname zu filtern, und `--tag <tag>`, um Fälle mit beliebigen der angegebenen Tags zu behalten. Legen Sie das Ziel vor `--tag`, `--allow-tools` und `--json`. Die ersten beiden nehmen eine Liste und `--json` nimmt einen optionalen Pfad, daher liest jede von ihnen ein Ziel, das folgt, als ihren eigenen Wert.366Fügen Sie `--case <glob>` hinzu, um nach Fallname zu filtern, und `--tag <tag>`, um Fälle mit beliebigen der angegebenen Tags zu behalten.

367 

368Legen Sie das Ziel vor `--tag`, `--allow-tools` und `--json`. Die ersten beiden nehmen eine Liste und `--json` nimmt einen optionalen Pfad, daher liest jede von ihnen ein Ziel, das folgt, als ihren eigenen Wert.

337 369 

338<h3 id="grant-tools">370<h3 id="grant-tools">

339 Gewähren Sie Tools371 Gewähren Sie Tools


341 373 

342Durchläufe halten niemals an, um um Erlaubnis zu fragen. Eingebaute Tools, die einen Grant benötigen, den Sie nicht gegeben haben, wie `Bash`, `Write`, `Edit`, `WebFetch` und `WebSearch`, werden aus der Sitzung entfernt, daher kann Claude sie überhaupt nicht aufrufen.374Durchläufe halten niemals an, um um Erlaubnis zu fragen. Eingebaute Tools, die einen Grant benötigen, den Sie nicht gegeben haben, wie `Bash`, `Write`, `Edit`, `WebFetch` und `WebSearch`, werden aus der Sitzung entfernt, daher kann Claude sie überhaupt nicht aufrufen.

343 375 

344Die Allowlist ist die schreibgeschützten Tools, die der Fall in `allowed_tools` auflistet, aus `Read`, `Glob`, `Grep`, `NotebookRead`, `Skill`, `Agent`, `TodoWrite` und die Task-Tools `TaskCreate`, `TaskGet`, `TaskList`, `TaskUpdate` und `TaskStop`, plus alles, was Sie mit `--allow-tools` gewähren. Dieser Grant gilt für jeden Fall in dem Durchlauf. Um Fällen die Verwendung von `Bash`, `Write`, `Edit`, `WebFetch` oder `WebSearch` zu ermöglichen, gewähren Sie sie selbst:376Ein Durchlauf erlaubt nur die schreibgeschützten Tools, die der Fall in `allowed_tools` auflistet, aus `Read`, `Glob`, `Grep`, `NotebookRead`, `Skill`, `AskUserQuestion`, `Agent`, `TodoWrite` und die Task-Tools `TaskCreate`, `TaskGet`, `TaskList`, `TaskUpdate` und `TaskStop`, plus alles, was Sie mit `--allow-tools` gewähren. Dieser Grant gilt für jeden Fall in dem Durchlauf. Um Fällen die Verwendung von `Bash`, `Write`, `Edit`, `WebFetch` oder `WebSearch` zu ermöglichen, gewähren Sie sie selbst:

345 377 

346```bash theme={null}378```bash theme={null}

347claude plugin eval . --allow-tools Write Edit "Bash(npm test *)"379claude plugin eval . --allow-tools Write Edit "Bash(npm test *)"

348```380```

349 381 

350Wenn ein Fall ein Tool fragte, das Sie nicht gewährt haben, listet der Durchlauf es auf stderr als `not granted` auf. Tools auf einem [gemockten](#mock-mcp-servers) MCP-Server benötigen keinen Grant. Tools auf einem echten Plugin-MCP-Server benötigen sowohl den Server gestartet, mit `--allow-real-servers` oder `--mocks off`, als auch einen Grant nach Name, wie `--allow-tools "mcp__plugin_my-plugin_github__*"`; Plugin-MCP-Tools werden `mcp__plugin_<plugin>_<server>__<tool>` benannt.382Wenn ein Fall ein Tool fragte, das Sie nicht gewährt haben, listet die Fortschrittsausgabe es als `not granted` auf. Tools auf einem [gemockten](#mock-mcp-servers) MCP-Server benötigen keinen Grant. Tools auf einem echten Plugin-MCP-Server benötigen sowohl den Server gestartet, mit `--allow-real-servers` oder `--mocks off`, als auch einen Grant nach Name, wie `--allow-tools "mcp__plugin_my-plugin_github__*"`; Plugin-MCP-Tools werden `mcp__plugin_<plugin>_<server>__<tool>` benannt.

351 383 

352Wenn Sie `Bash` in irgendeiner Form gewähren, wird jeder Befehl unter Claude Code's [OS-Level Sandbox](/docs/de/sandboxing) ausgeführt. Schreibvorgänge sind auf den Arbeitsbereich des Durchlaufs beschränkt, Ihr Home-Verzeichnis und die Claude Code Konfiguration sind nicht lesbar, und der Netzwerkzugriff ist auf Domains beschränkt, die Sie mit `--allow-tools "WebFetch(domain:example.com)"` gewähren. Wenn Sie Bash oder PowerShell auf einer Maschine ohne Sandbox-Backend gewähren, weigert sich Claude Code jeden Durchlauf, anstatt ihn uneingeschränkt auszuführen, und der Fall zeigt einen Durchlauf-Fehler und normalerweise Score 0. Natives Windows hat kein Backend, daher führen Sie Shell-gewährende Suites unter WSL2 aus; unter Linux installieren Sie zuerst `bubblewrap` und `socat`. Siehe die [Sandboxing-Voraussetzungen](/docs/de/sandboxing).384Wenn Sie `Bash` in irgendeiner Form gewähren, wird jeder Befehl unter Claude Code's [OS-Level Sandbox](/docs/de/sandboxing) ausgeführt. Schreibvorgänge sind auf den Arbeitsbereich des Durchlaufs beschränkt, Ihr Home-Verzeichnis und die Claude Code Konfiguration sind nicht lesbar, und der Netzwerkzugriff ist auf Domains beschränkt, die Sie mit `--allow-tools "WebFetch(domain:example.com)"` gewähren. Wenn Sie Bash oder PowerShell auf einer Maschine ohne Sandbox-Backend gewähren, weigert sich Claude Code jeden Durchlauf, anstatt ihn uneingeschränkt auszuführen, und der Fall zeigt einen Durchlauf-Fehler und normalerweise Score 0. Natives Windows hat kein Backend, daher führen Sie Shell-gewährende Suites unter WSL2 aus; unter Linux installieren Sie zuerst `bubblewrap` und `socat`. Siehe die [Sandboxing-Voraussetzungen](/docs/de/sandboxing).

353 385 


404| 130 | Unterbrochen. Teilergebnisse werden geschrieben |436| 130 | Unterbrochen. Teilergebnisse werden geschrieben |

405| 143 | Beendet, wie durch ein CI-Timeout |437| 143 | Beendet, wie durch ein CI-Timeout |

406 438 

407Probleme beim Schreiben oder Veröffentlichen des HTML-Berichts ändern niemals den Exit-Code. Um zu sehen, warum ein Fall niedrig bewertet wurde, führen Sie ihn lokal ohne `--json` aus, damit die Pro-Durchlauf-Fortschritts- und Grader-Zeilen drucken.439Probleme beim Schreiben oder Veröffentlichen des HTML-Berichts ändern niemals den Exit-Code.

440 

441Um zu sehen, warum ein Fall niedrig bewertet wurde, führen Sie ihn lokal ohne `--json` aus, damit die Pro-Durchlauf-Fortschritts- und Grader-Zeilen drucken.

442 

443Ein CI-Runner benötigt auch diese:

408 444 

409Ein CI-Runner benötigt eine Claude Code Installation und [Anmeldedaten in der Umgebung](/docs/de/authentication) wie `ANTHROPIC_API_KEY`. Ohne `--trust-plugin` wird ein Job, dessen Checkout-Verzeichnis Claude Code noch nicht vertraut, mit Exit 1 verweigert, wenn es kein Terminal hat, oder wartet bei der Eingabeaufforderung, wenn der Runner eines zuweist. `claude plugin eval init` benötigt ein Terminal, um Ihnen seine Fragen zu stellen; führen Sie in CI `claude plugin eval init --bare <name>` aus, um die leere Vorlage zu erhalten.445* **Installation und Anmeldedaten**: Ein CI-Runner benötigt eine Claude Code Installation und [Anmeldedaten in der Umgebung](/docs/de/authentication) wie `ANTHROPIC_API_KEY`.

446* **Vertrauen**: Ohne `--trust-plugin` wird ein Job, dessen Checkout-Verzeichnis Claude Code noch nicht vertraut, die [erste Vertrauens-Eingabeaufforderung](#security) benötigen, und ein Durchlauf, der nicht fragen kann, wird mit Exit 1 verweigert.

447* **`init` in CI**: `claude plugin eval init` benötigt ein Terminal, um Ihnen seine Fragen zu stellen; führen Sie in CI `claude plugin eval init --bare <name>` aus, um die leere Vorlage zu erhalten.

410 448 

411Um Kosten vorhersehbar zu halten, geben Sie schnelle Every-Change-Suites nur Grader, die keinen Judge aufrufen, verwenden Sie `--ablation none`, wo Sie `Δ` nicht benötigen, und lassen Sie `partial: true` Dokumente und Durchläufe mit `skippedPaidGraders` aus jedem Trend, den Sie kartieren.449Um Kosten vorhersehbar zu halten, geben Sie schnelle Every-Change-Suites nur Grader, die keinen Judge aufrufen, verwenden Sie `--ablation none`, wo Sie `Δ` nicht benötigen, und lassen Sie `partial: true` Dokumente und Durchläufe mit `skippedPaidGraders` aus jedem Trend, den Sie kartieren.

412 450 


461 Was ein Durchlauf zugreifen kann499 Was ein Durchlauf zugreifen kann

462</h2>500</h2>

463 501 

464`claude plugin eval` lädt die Skills, Hooks und Agents des Ziel-Plugins und führt seine Eval-Suite auf Ihrem Computer als Sie aus. Es auf ein Plugin zu zeigen ist die gleiche Vertrauensentscheidung wie `claude --plugin-dir`, daher evaluieren Sie nur Plugins, denen Sie vertrauen. Die in diesem Abschnitt beschriebene Isolation begrenzt, was der Agent unter Test erreichen kann; es ist keine Grenze gegen den Code des Plugins selbst, und eine Suite, die bestanden wird, sagt nichts darüber aus, ob das Plugin sicher ist.502`claude plugin eval` lädt die Skills, Hooks und Agents des Ziel-Plugins und führt seine Eval-Suite auf Ihrem Computer als Sie aus. Es auf ein Plugin zu zeigen ist die gleiche Vertrauensentscheidung wie `claude --plugin-dir`, daher evaluieren Sie nur Plugins, denen Sie vertrauen.

503 

504Die in diesem Abschnitt beschriebene Isolation begrenzt, was der Agent unter Test erreichen kann; es ist keine Grenze gegen den Code des Plugins selbst, und eine Suite, die bestanden wird, sagt nichts darüber aus, ob das Plugin sicher ist.

465 505 

466<h3 id="trust-the-plugin-directory">506<h3 id="trust-the-plugin-directory">

467 Vertrauen Sie dem Plugin-Verzeichnis507 Vertrauen Sie dem Plugin-Verzeichnis

468</h3>508</h3>

469 509 

470Das erste Mal, wenn Sie `claude plugin eval` gegen ein Verzeichnis ausführen, fragt Claude Code `Trust this plugin directory?`, bevor es etwas daraus lädt, es sei denn, Sie haben die Vertrauens-Eingabeaufforderung dort bereits in einer interaktiven `claude` Sitzung akzeptiert. Innerhalb eines Git-Repositorys vertraut das Beantworten mit Ja dem ganzen Repository, auch für interaktive Sitzungen. Wenn stdin oder stdout kein Terminal ist, oder unter `--json`, kann der Durchlauf nicht fragen und wird mit Exit 1 verweigert; übergeben Sie `--trust-plugin`, um das Vertrauen selbst zu bestätigen, nur für ein Plugin, das Sie auf Ihrem eigenen Computer ausführen würden. Ein Ziel, das Sie benennen, anstatt als Pfad zu geben, bedeutet ein installiertes Plugin oder ein Skills-Directory-Plugin, überspringt die Eingabeaufforderung.510Das erste Mal, wenn Sie `claude plugin eval` gegen ein Verzeichnis ausführen, fragt Claude Code `Trust this plugin directory?`, bevor es etwas daraus lädt, es sei denn, Sie haben die Vertrauens-Eingabeaufforderung dort bereits in einer interaktiven `claude` Sitzung akzeptiert. Innerhalb eines Git-Repositorys vertraut das Beantworten mit Ja dem ganzen Repository, auch für interaktive Sitzungen. Wenn stdin oder stdout kein Terminal ist, unter `--json`, oder wenn die `CI` Umgebungsvariable auf einen wahren Wert wie `true` gesetzt ist, kann der Durchlauf nicht fragen und wird mit Exit 1 verweigert; übergeben Sie `--trust-plugin`, um das Vertrauen selbst zu bestätigen, nur für ein Plugin, das Sie auf Ihrem eigenen Computer ausführen würden. Ein Ziel, das Sie benennen, anstatt als Pfad zu geben, bedeutet ein installiertes Plugin oder ein Skills-Directory-Plugin, überspringt die Eingabeaufforderung.

511 

512Einige Teile des Plugins und der Suite werden nur ausgeführt, wenn Sie ihr Flag für diesen Durchlauf übergeben:

513 

514* Ein Falls [`scaffold_script`](#add-setup-or-history-with-case-yaml) mit `--scaffold`

515* [Tools über die schreibgeschützte Menge](#grant-tools) mit `--allow-tools`

516* Die [echten MCP-Server](#mock-mcp-servers) des Plugins mit `--allow-real-servers` oder `--mocks off`

517 

518Ein Falls `allowed_tools` und ein Skill's eigenes `allowed-tools` Frontmatter können keines von ihnen erweitern.

471 519 

472Einige Teile des Plugins und der Suite werden nur ausgeführt, wenn Sie ihr Flag für diesen Durchlauf übergeben: ein Falls [`scaffold_script`](#add-setup-or-history-with-case-yaml) mit `--scaffold`, [Tools über die schreibgeschützte Menge](#grant-tools) mit `--allow-tools` und die [echten MCP-Server](#mock-mcp-servers) des Plugins mit `--allow-real-servers` oder `--mocks off`. Ein Falls `allowed_tools` und ein Skill's eigenes `allowed-tools` Frontmatter können keines von ihnen erweitern. Wenn das Plugin Hooks ausliefert, die Sie nicht geschrieben haben, oder Sie seine echten MCP-Server starten, behandeln Sie seine Scores als beratend, es sei denn, Sie führen es in einer isolierten Umgebung wie einem Container oder CI-Runner aus, da Hooks und Server außerhalb der Sandbox des Agenten laufen und die Dateien berühren könnten, die die Grader lesen.520Wenn das Plugin Hooks ausliefert, die Sie nicht geschrieben haben, oder Sie seine echten MCP-Server starten, behandeln Sie seine Scores als beratend, es sei denn, Sie führen es in einer isolierten Umgebung wie einem Container oder CI-Runner aus, da Hooks und Server außerhalb der Sandbox des Agenten laufen und die Dateien berühren könnten, die die Grader lesen.

473 521 

474<h3 id="how-runs-are-isolated">522<h3 id="how-runs-are-isolated">

475 Wie Durchläufe isoliert sind523 Wie Durchläufe isoliert sind


537 case.yaml Felder585 case.yaml Felder

538</h3>586</h3>

539 587 

540`case.yaml` beschreibt den gleichen Fall in YAML und fügt die Felder hinzu, die auf andere Dateien zeigen. Es benötigt `schema_version: "1.1"` und `name`. Die `prompt.md` Felder `description`, `tags`, `plugins`, `runs` und `expected_outcome` gehen auf die oberste Ebene; `model`, `max_turns`, `timeout_seconds`, `allowed_tools`, `append_system_prompt` und `env` gehen unter `execution:`. Wenn beide Dateien existieren, überschreibt `prompt.md` Frontmatter die passenden `case.yaml` Felder, der `prompt.md` Body ist die Eingabeaufforderung und `graders/*.md` werden nach allen in `case.yaml` aufgelisteten Gradern hinzugefügt.588`case.yaml` ist eine Alternative oder Ergänzung zu `prompt.md`: Sie beschreibt einen Fall in YAML und fügt die Felder hinzu, die auf andere Dateien zeigen. Es benötigt `schema_version: "1.1"` und `name`. Die `prompt.md` Felder `description`, `tags`, `plugins`, `runs` und `expected_outcome` gehen auf die oberste Ebene; `model`, `max_turns`, `timeout_seconds`, `allowed_tools`, `append_system_prompt` und `env` gehen unter `execution:`. Wenn beide Dateien existieren, überschreibt `prompt.md` Frontmatter die passenden `case.yaml` Felder, der `prompt.md` Body ist die Eingabeaufforderung und `graders/*.md` werden nach allen in `case.yaml` aufgelisteten Gradern hinzugefügt.

541 589 

542Diese Felder existieren nur in `case.yaml`:590Diese Felder existieren nur in `case.yaml`:

543 591 


556Jede Grader-Datei unter `graders/` nimmt diese Schlüssel in Frontmatter, plus die Optionen für seinen Typ. Der Name des Graders ist der Dateiname ohne `.md`:604Jede Grader-Datei unter `graders/` nimmt diese Schlüssel in Frontmatter, plus die Optionen für seinen Typ. Der Name des Graders ist der Dateiname ohne `.md`:

557 605 

558| Schlüssel | Standard | Zweck |606| Schlüssel | Standard | Zweck |

559| :-------- | :------------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |607| :-------- | :------------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

560| `type` | erforderlich | Einer der [Grader-Typen](#grader-types) |608| `type` | erforderlich | Einer der [Grader-Typen](#grader-types) |

561| `weight` | `1` | Relatives Gewicht im Score des Durchlaufs. Jede positive Zahl |609| `weight` | `1` | Relatives Gewicht im Score des Durchlaufs. Jede positive Zahl |

562| `arm` | nicht gesetzt | `with-only` schließt den Grader aus der Bewertung in einem [Zwei-Arm-Durchlauf](#compare-against-a-no-plugin-baseline) aus; `both` erzwingt, dass ein `tool_used: Skill` Grader in beiden Arms bewertet wird |610| `arm` | nicht gesetzt | `with-only` schließt den Grader aus der Bewertung in einem [Zwei-Arm-Durchlauf](#compare-against-a-no-plugin-baseline) aus; `both` erzwingt, dass ein Grader, den Claude Code sonst ausschließen würde, in beiden Arms bewertet wird |

563 611 

564<h4 id="what-a-grader-can-look-at">612<h4 id="what-a-grader-can-look-at">

565 Was ein Grader ansehen kann613 Was ein Grader ansehen kann


632 „is not a trusted plugin directory, and this run cannot stop to ask you about it"680 „is not a trusted plugin directory, and this run cannot stop to ask you about it"

633</h3>681</h3>

634 682 

635Dies ist der erste Durchlauf gegen ein Verzeichnis, dem Claude Code noch nicht vertraut, und es kann Sie nicht fragen, da stdin oder stdout kein Terminal ist oder Sie `--json` übergeben haben. Führen Sie `claude plugin eval <dir>` einmal in einem Terminal aus und beantworten Sie die Eingabeaufforderung, oder übergeben Sie `--trust-plugin`, wenn Sie dem Code und der Suite des Plugins vertrauen. Siehe [What a run can access](#security).683Dies ist der erste Durchlauf gegen ein Verzeichnis, dem Claude Code noch nicht vertraut, und es kann Sie nicht fragen, da stdin oder stdout kein Terminal ist, Sie `--json` übergeben haben oder die Umgebungsvariable `CI` auf einen wahren Wert wie `true` gesetzt ist. Führen Sie `claude plugin eval <dir>` einmal in einem Terminal aus und beantworten Sie die Eingabeaufforderung, oder übergeben Sie `--trust-plugin`, wenn Sie dem Code und der Suite des Plugins vertrauen. Siehe [What a run can access](#security).

636 684 

637<h3 id="no-eval-cases-found">685<h3 id="no-eval-cases-found">

638 „No eval cases found"686 „No eval cases found"


668 Ein Regex über die Trace stimmt nicht mit Text überein, den ich sehen kann716 Ein Regex über die Trace stimmt nicht mit Text überein, den ich sehen kann

669</h3>717</h3>

670 718 

671Das Standard-`target` ist `last_message`, nicht die Trace. Wenn Sie `trace` als Ziel verwenden, ist es JSON pro Zeile, daher erscheinen Anführungszeichen als `\"`. Regexes verwenden JavaScript-Syntax, daher setzen Sie `i` in `flags`, anstatt `(?i)` zu schreiben.719* **Falsches Ziel**: Das Standard-`target` ist `last_message`, nicht die Trace.

720* **JSON-Escaping**: Wenn Sie `trace` als Ziel verwenden, ist es JSON pro Zeile, daher erscheinen Anführungszeichen als `\"`.

721* **Regex-Syntax**: Regexes verwenden JavaScript-Syntax, daher setzen Sie `i` in `flags`, anstatt `(?i)` zu schreiben.

672 722 

673<h3 id="tools-are-denied-mcp-tools-are-missing-or-bash-won’t-run">723<h3 id="tools-are-denied-mcp-tools-are-missing-or-bash-won’t-run">

674 Tools werden verweigert, MCP-Tools fehlen, oder Bash wird nicht ausgeführt724 Tools werden verweigert, MCP-Tools fehlen, oder Bash wird nicht ausgeführt


692 Ein Grader zeigt passed: false unter einem Durchlauf, der 1,0 bewertet742 Ein Grader zeigt passed: false unter einem Durchlauf, der 1,0 bewertet

693</h3>743</h3>

694 744 

695Dieser Grader ist absichtlich von der Bewertung in einem Zwei-Arm-Durchlauf ausgeschlossen, und sein `scored`-Feld ist `false`. Siehe [Compare against a no-plugin baseline](#compare-against-a-no-plugin-baseline).745Dieser Grader ist absichtlich von der Bewertung in einem Zwei-Arm-Durchlauf ausgeschlossen, und sein `scored`-Feld ist `false`. Siehe [Score against the no-plugin baseline](#compare-against-a-no-plugin-baseline).

696 746 

697<h3 id="runs-fail-with-a-usage-limit-or-rate-limit-error-partway-through">747<h3 id="runs-fail-with-a-usage-limit-or-rate-limit-error-partway-through">

698 Durchläufe schlagen mit einem Nutzungslimit- oder Rate-Limit-Fehler in der Mitte fehl748 Durchläufe schlagen mit einem Nutzungslimit- oder Rate-Limit-Fehler in der Mitte fehl


710 Siehe auch760 Siehe auch

711</h2>761</h2>

712 762 

713* [Plugins erstellen](/docs/de/plugins): bauen Sie das Plugin, das Sie testen, und laden Sie es mit `--plugin-dir` während der Entwicklung763* [Plugin erstellen](/docs/de/plugins/create): bauen Sie das Plugin, das Sie testen, und laden Sie es mit `--plugin-dir` während der Entwicklung

714* [Plugins-Referenz](/docs/de/plugins-reference#plugin-eval): die `plugin eval` und `plugin eval init` Befehlseinträge und der Manifest's `experimental.evals` Schlüssel764* [Plugin-Befehle Referenz](/docs/de/plugins/cli-reference#plugin-eval): die `plugin eval` und `plugin eval init` Befehlseinträge. Der Manifest's [`experimental.evals`](/docs/de/plugins/manifest-reference#fields) Schlüssel befindet sich in der Manifest-Referenz

715* [Skills](/docs/de/skills): wie die `description` eines Skills entscheidet, wann Claude ihn aufruft, was das ist, was ein Fall, der überprüft, ob der Skill auslöst, misst765* [Skills](/docs/de/skills): wie die `description` eines Skills entscheidet, wann Claude ihn aufruft, was das ist, was ein Fall, der überprüft, ob der Skill auslöst, misst

716* [Sandboxing](/docs/de/sandboxing): die OS-Level Sandbox, die angewendet wird, wenn Sie Bash einem Durchlauf gewähren766* [Sandboxing](/docs/de/sandboxing): die OS-Level Sandbox, die angewendet wird, wenn Sie Bash einem Durchlauf gewähren

717* [Erstellen und verteilen Sie einen Plugin-Marketplace](/docs/de/plugin-marketplaces): veröffentlichen Sie das Plugin, sobald seine Suite bestanden wird767* [Plugin veröffentlichen](/docs/de/plugins/publish): veröffentlichen Sie das Plugin, sobald seine Suite bestanden wird

768* [Plugin-Kosten und -Nutzung messen](/docs/de/plugins/measure): was das Plugin zu jedem Sitzungskontext hinzufügt und ob Personen es noch verwenden

plugin-hints.md +0 −172 deleted

File Deleted View Diff

1> ## Documentation Index

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

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

4 

5# Empfehlen Sie Ihr Plugin von Ihrer CLI aus

6 

7> Geben Sie einen einzeiligen Marker von Ihrer CLI aus, damit Claude Code Benutzer auffordert, Ihr offizielles Plugin zu installieren.

8 

9Wenn Sie eine CLI oder ein SDK verwalten und ein Plugin im offiziellen Anthropic-Marketplace haben, kann Ihr Tool Claude Code-Benutzer auffordern, dieses Plugin zu installieren. Ihre CLI schreibt einen einzeiligen Marker auf stderr, wenn sie erkennt, dass sie in Claude Code ausgeführt wird. Claude Code liest den Marker, entfernt ihn aus der Ausgabe und zeigt dem Benutzer eine einmalige Installationsaufforderung an.

10 

11Das Protokoll erfordert keine zusätzlichen Befehle und ändert nicht, was Ihre CLI für Benutzer außerhalb von Claude Code ausgibt.

12 

13Diese Seite ist für CLI- und SDK-Verwalter. Wenn Sie nach der Installation von Plugins suchen, siehe [Plugins entdecken und installieren](/docs/de/discover-plugins).

14 

15<h2 id="how-it-works">

16 Funktionsweise

17</h2>

18 

19Claude Code setzt die [`CLAUDECODE`](/docs/de/env-vars) Umgebungsvariable auf `1` für jeden Befehl, den es über die Bash- und PowerShell-Tools ausführt, und für [hook](/docs/de/hooks)-Befehle. Ab v2.1.172 setzt es auch [`CLAUDE_CODE_CHILD_SESSION`](/docs/de/env-vars) auf `1` in denselben Subprozessen. Wenn Ihre CLI eine dieser Variablen sieht, schreibt sie ein selbstschließendes `<claude-code-hint />`-Tag auf stderr. Bei hook-Befehlen wird das Hinweis-Tag entfernt und ignoriert. Nur die Ausgabe von Bash- und PowerShell-Tools löst die Installationsaufforderung aus.

20 

21Wenn Claude Code die Befehlsausgabe empfängt, führt es folgende Schritte aus:

22 

231. Scannt nach Hinweiszeilen und entfernt sie, bevor die Ausgabe das Modell erreicht

242. Überprüft, dass der Hinweis auf ein Plugin in einem offiziellen Anthropic-Marketplace abzielt

253. Überprüft, dass das Plugin nicht bereits installiert ist und nicht zuvor aufgefordert wurde

264. Zeigt dem Benutzer eine Installationsaufforderung an, die den Befehl benennt, der den Hinweis ausgegeben hat

27 

28Claude Code installiert ein Plugin nie automatisch. Der Benutzer bestätigt immer.

29 

30<h2 id="emit-the-hint">

31 Hint ausgeben

32</h2>

33 

34Hint-Prompts werden nur für Plugins ausgelöst, die im offiziellen Anthropic-Marketplace aufgelistet sind. Siehe [Bringen Sie Ihr Plugin in den offiziellen Marketplace](#get-your-plugin-into-the-official-marketplace), bevor Sie die Integration bereitstellen.

35 

36Geben Sie die Ausgabe basierend auf einer Umgebungsvariablen frei, damit die Markierung wahrscheinlich nicht angezeigt wird, wenn ein Mensch Ihre CLI direkt ausführt. Schreiben Sie dann das Tag auf stderr auf einer eigenen Zeile. Wählen Sie, welche Variable überprüft werden soll:

37 

38* `CLAUDECODE`: wird auf jeder Claude Code-Version gesetzt, daher erreicht es die meisten Sitzungen. Es wird auch in tmux-Sitzungen und stdio-MCP-Server-Subprozessen gesetzt, die Claude Code startet. IDE-Erweiterungen setzen es auch in ihren integrierten Terminals, wo ein Mensch Ihre CLI direkt ausführen kann.

39* `CLAUDE_CODE_CHILD_SESSION`: wird nur in Subprozessen gesetzt, die Claude Code selbst startet, wie z. B. Tool-Aufrufe, Hook-Befehle und [Statuszeilen](/docs/de/statusline)-Befehle, daher erreicht das Tag normalerweise kein menschliches Terminal. Ein langlebiger Prozess, der innerhalb einer Sitzung gestartet wurde, wie z. B. ein tmux-Server, erfasst die Variable, daher zeigen Shells, die später von diesem Prozess aus gestartet werden, immer noch das rohe Tag.

40 

41Die folgenden Beispiele geben `CLAUDECODE` für maximale Reichweite frei und geben einen Hint für ein Plugin namens `example-cli` im offiziellen Marketplace aus:

42 

43<CodeGroup>

44 ```javascript Node.js theme={null}

45 if (process.env.CLAUDECODE) {

46 process.stderr.write(

47 '<claude-code-hint v="1" type="plugin" value="example-cli@claude-plugins-official" />\n',

48 )

49 }

50 ```

51 

52 ```python Python theme={null}

53 import os, sys

54 

55 if os.environ.get("CLAUDECODE"):

56 print(

57 '<claude-code-hint v="1" type="plugin" value="example-cli@claude-plugins-official" />',

58 file=sys.stderr,

59 )

60 ```

61 

62 ```go Go theme={null}

63 if os.Getenv("CLAUDECODE") != "" {

64 fmt.Fprintln(os.Stderr,

65 `<claude-code-hint v="1" type="plugin" value="example-cli@claude-plugins-official" />`)

66 }

67 ```

68 

69 ```shell Shell theme={null}

70 if [ -n "$CLAUDECODE" ]; then

71 printf '%s\n' '<claude-code-hint v="1" type="plugin" value="example-cli@claude-plugins-official" />' >&2

72 fi

73 ```

74</CodeGroup>

75 

76Ersetzen Sie `example-cli` durch den Namen Ihres Plugins im offiziellen Marketplace.

77 

78<h2 id="choose-where-to-emit">

79 Wählen Sie, wo Sie ausgeben

80</h2>

81 

82Sie kontrollieren, welche Code-Pfade den Hinweis ausgeben. Claude Code dedupliziert nach Plugin, daher hat die Ausgabe bei jeder Aufrufen keinen Nachteil. Berührungspunkte, die gut funktionieren, sind:

83 

84| Platzierung | Warum es funktioniert |

85| :----------------------------------------- | :---------------------------------------------------------------------- |

86| `--help` Ausgabe | Claude führt häufig Hilfe aus, wenn eine unbekannte CLI erkundet wird |

87| Fehler bei unbekanntem Unterbefehl | Erreicht den Moment, in dem Claude über Ihre Schnittstelle verwirrt ist |

88| Anmeldungs- oder Authentifizierungserfolg | Der Benutzer ist bereits in einer Einrichtungsmentalität |

89| Willkommensnachricht beim ersten Ausführen | Ein natürlicher Onboarding-Moment |

90 

91<h2 id="what-the-user-sees">

92 Was der Benutzer sieht

93</h2>

94 

95Wenn der Hinweis alle Überprüfungen besteht, zeigt Claude Code eine Aufforderung wie die folgende an:

96 

97```text theme={null}

98─────────────────────────────────────────────────────────────

99 Plugin-Empfehlung

100 

101 Der Befehl example-cli schlägt vor, ein Plugin zu installieren.

102 

103 Plugin: example-cli

104 Marketplace: claude-plugins-official

105 Offizielle Integration für example-cli-Bereitstellungen

106 

107 Möchten Sie es installieren?

108 ❯ 1. Ja, example-cli installieren

109 2. Nein

110 3. Nein, und zeige mir keine Plugin-Installationshinweise mehr

111 

112─────────────────────────────────────────────────────────────

113```

114 

115Die Aufforderung benennt den Befehl, der den Hinweis erzeugt hat, damit Benutzer einen Mismatch zwischen dem Tool und dem Plugin, das es empfiehlt, erkennen können. Wenn der Benutzer nicht innerhalb von 30 Sekunden antwortet, wird die Aufforderung als **Nein** verworfen.

116 

117Die Häufigkeit der Aufforderung ist begrenzt, und einige Sitzungen zeigen nie eine Aufforderung:

118 

119* **Einmal pro Plugin**: Nachdem die Aufforderung angezeigt wurde, zeichnet Claude Code das Plugin auf und fordert es nie wieder auf, unabhängig von der Antwort des Benutzers.

120* **Einmal pro Sitzung**: Auf allen CLIs auf dem Computer erscheint höchstens eine Hinweisaufforderung pro Claude Code-Sitzung.

121* **Nur in der Hauptinteraktiven Sitzung**: Claude Code zeigt die Aufforderung nur in der Terminalsitzung an, in die der Benutzer tippt. Claude Code fordert nie für einen Befehl auf, den ein [Subagent](/docs/de/sub-agents) ausführt, und fordert nie auf, wenn der Benutzer Claude Code im [nicht-interaktiven Modus](/docs/de/headless) mit dem Flag `-p` oder über das [Agent SDK](/docs/de/agent-sdk/overview) ausführt. Claude Code entfernt die Hinweiszeile trotzdem aus der Befehlsausgabe in allen diesen Fällen.

122* **Telemetrie-Opt-outs**: Sitzungen, in denen Analysen deaktiviert sind, zeigen nie Hinweisaufforderungen. Dies umfasst Sitzungen mit `DISABLE_TELEMETRY` oder `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` gesetzt, und Sitzungen bei Drittanbietern wie Amazon Bedrock oder Google Cloud's Agent Platform, wo das [automatische Telemetrie-Opt-out](/docs/de/data-usage#default-behaviors-by-api-provider) gilt.

123 

124Wenn Sie **Ja** auswählen, wird das Plugin im Benutzerbereich installiert. Wenn Sie **Nein, und zeige mir keine Plugin-Installationshinweise mehr** auswählen, werden alle zukünftigen Hinweisaufforderungen für den Benutzer deaktiviert.

125 

126<h2 id="hint-format">

127 Hinweisformat

128</h2>

129 

130Der Hinweis ist ein selbstschließendes Tag mit drei erforderlichen Attributen.

131 

132```text theme={null}

133<claude-code-hint v="1" type="plugin" value="example-cli@claude-plugins-official" />

134```

135 

136| Attribut | Erforderlich | Beschreibung |

137| :------- | :----------- | :------------------------------------------------------ |

138| `v` | Ja | Protokollversion. `1` ist der einzige unterstützte Wert |

139| `type` | Ja | Hinweistyp. `plugin` ist der einzige unterstützte Wert |

140| `value` | Ja | Plugin-Identifier in der Form `name@marketplace` |

141 

142Attributwerte können mit doppelten Anführungszeichen zitiert oder unzitiert gelassen werden. Unzitierte Werte können keine Leerzeichen enthalten. Escape-Sequenzen werden nicht unterstützt.

143 

144<h2 id="requirements">

145 Anforderungen

146</h2>

147 

148Claude Code erzwingt zwei Bedingungen, bevor es auf einen Hinweis reagiert. Hinweise, die eine der beiden Überprüfungen nicht bestehen, werden verworfen:

149 

150* **Eigene Zeile**: Das Tag muss auf seiner eigenen Zeile stehen. Ein Tag, das in der Mitte einer Zeile eingebettet ist, z. B. in einer Log-Anweisung, wird ignoriert. Führende und nachfolgende Leerzeichen auf der Zeile sind zulässig.

151* **Offizieller Marketplace**: Der `value` muss auf ein Plugin in einem von Anthropic kontrollierten Marketplace wie `claude-plugins-official` verweisen. Hinweise, die auf andere Marketplaces verweisen, werden stillschweigend verworfen.

152 

153Die Hinweiszeile wird immer aus der Ausgabe entfernt, bevor sie das Modell erreicht, auch wenn die Version oder der Typ nicht erkannt wird, sodass der Marker nie zur Token-Nutzung zählt.

154 

155Die verbleibende Anleitung wird empfohlen, aber nicht erzwungen. Claude Code kann nicht beobachten, ob Ihre CLI sie befolgt:

156 

157* **Schreiben Sie auf stderr**: stderr hält das Tag aus Shell-Pipelines wie `example-cli deploy | jq` heraus. Claude Code scannt beide Streams, daher funktioniert auch stdout.

158* **Gate on an environment variable**: Geben Sie nur aus, wenn `CLAUDECODE` oder `CLAUDE_CODE_CHILD_SESSION` gesetzt ist. Siehe [Emit the hint](#emit-the-hint), um zu erfahren, wie sich die beiden Variablen unterscheiden.

159 

160<h2 id="get-your-plugin-into-the-official-marketplace">

161 Bringen Sie Ihr Plugin in den offiziellen Marketplace

162</h2>

163 

164Das Hinweisprotokoll wird nur für Plugins wirksam, die im offiziellen Anthropic-Marketplace aufgelistet sind, `claude-plugins-official`. Anthropic kuratiert diesen Marketplace nach eigenem Ermessen, und die In-App-Einreichungsformulare fügen Plugins stattdessen zum [Community-Marketplace](/docs/de/plugins#submit-your-plugin-to-the-community-marketplace) hinzu, den das Hinweisprotokoll nicht überprüft. Wenn Sie mit einem Anthropic-Partner-Kontakt zusammenarbeiten, wenden Sie sich an ihn, um die Auflistung im offiziellen Marketplace zu koordinieren.

165 

166<h2 id="see-also">

167 Siehe auch

168</h2>

169 

170* [Erstellen Sie Plugins](/docs/de/plugins): Erstellen Sie das Plugin, das Ihre CLI empfiehlt

171* [Erstellen und verteilen Sie einen Plugin-Marketplace](/docs/de/plugin-marketplaces): Hosten Sie Plugins außerhalb des offiziellen Marketplace

172* [Umgebungsvariablen](/docs/de/env-vars): Vollständige Referenz für `CLAUDECODE` und verwandte Variablen

plugin-marketplaces.md +0 −1688 deleted

File Deleted View Diff

1> ## Documentation Index

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

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

4 

5# Erstellen und Verteilen eines Plugin-Marktplatzes

6 

7> Erstellen und hosten Sie Plugin-Marktplätze, um Claude Code-Erweiterungen in Teams und Communities zu verteilen.

8 

9Ein **Plugin-Marktplatz** ist ein Katalog, mit dem Sie Plugins an andere verteilen können. Marktplätze bieten zentrale Entdeckung, Versionsverfolgung, automatische Updates und Unterstützung für mehrere Quellentypen, einschließlich Git-Repositories und lokaler Pfade. Diese Anleitung zeigt Ihnen, wie Sie Ihren eigenen Marktplatz erstellen, um Plugins mit Ihrem Team oder Ihrer Community zu teilen.

10 

11Möchten Sie Plugins aus einem vorhandenen Marktplatz installieren? Siehe [Entdecken und Installieren vorgefertigter Plugins](/docs/de/discover-plugins).

12 

13<h2 id="overview">

14 Übersicht

15</h2>

16 

17Das Erstellen und Verteilen eines Marktplatzes umfasst:

18 

191. **Plugins erstellen**: Erstellen Sie ein oder mehrere Plugins mit skills, Agents, hooks, MCP servers oder LSP servers. Diese Anleitung setzt voraus, dass Sie bereits Plugins zum Verteilen haben; siehe [Plugins erstellen](/docs/de/plugins) für Details zum Erstellen von Plugins.

202. **Marktplatzdatei erstellen**: Definieren Sie eine `marketplace.json`, die Ihre Plugins und deren Speicherorte auflistet. Siehe [Marktplatzdatei erstellen](#create-the-marketplace-file).

213. **Marktplatz hosten**: Pushen Sie zu GitHub, GitLab oder einem anderen Git-Host. Siehe [Marktplätze hosten und verteilen](#host-and-distribute-marketplaces).

224. **Mit Benutzern teilen**: Benutzer fügen Ihren Marktplatz mit `/plugin marketplace add` hinzu und installieren einzelne Plugins. Siehe [Plugins entdecken und installieren](/docs/de/discover-plugins).

23 

24Sobald Ihr Marktplatz live ist, können Sie ihn aktualisieren, indem Sie Änderungen in Ihr Repository pushen. Benutzer aktualisieren ihre lokale Kopie mit `/plugin marketplace update`.

25 

26<h2 id="walkthrough-create-a-local-marketplace">

27 Anleitung: Erstellen Sie einen lokalen Marktplatz

28</h2>

29 

30Dieses Beispiel erstellt einen Marktplatz mit einem Plugin: ein `quality-review` skill für Code-Reviews. Sie erstellen die Verzeichnisstruktur, fügen ein skill hinzu, erstellen das Plugin-Manifest und den Marktplatzkatalog und installieren und testen ihn dann.

31 

32<Steps>

33 <Step title="Erstellen Sie die Verzeichnisstruktur">

34 ```bash theme={null}

35 mkdir -p my-marketplace/.claude-plugin

36 mkdir -p my-marketplace/plugins/quality-review-plugin/.claude-plugin

37 mkdir -p my-marketplace/plugins/quality-review-plugin/skills/quality-review

38 ```

39 </Step>

40 

41 <Step title="Erstellen Sie das skill">

42 Erstellen Sie eine `SKILL.md`-Datei, die definiert, was das `quality-review` skill tut.

43 

44 ```markdown my-marketplace/plugins/quality-review-plugin/skills/quality-review/SKILL.md theme={null}

45 ---

46 description: Review code for bugs, security, and performance

47 ---

48 

49 Review the code I've selected or the recent changes for:

50 - Potential bugs or edge cases

51 - Security concerns

52 - Performance issues

53 - Readability improvements

54 

55 Be concise and actionable.

56 ```

57 </Step>

58 

59 <Step title="Erstellen Sie das Plugin-Manifest">

60 Erstellen Sie eine `plugin.json`-Datei, die das Plugin beschreibt. Das Manifest befindet sich im `.claude-plugin/`-Verzeichnis.

61 

62 ```json my-marketplace/plugins/quality-review-plugin/.claude-plugin/plugin.json theme={null}

63 {

64 "name": "quality-review-plugin",

65 "description": "Adds a quality-review skill for quick code reviews",

66 "version": "1.0.0",

67 "author": {

68 "name": "Your Name"

69 }

70 }

71 ```

72 

73 <Note>

74 Das Festlegen von `version` bedeutet, dass Benutzer nur Updates erhalten, wenn Sie dieses Feld ändern. Erhöhen Sie es daher bei jeder Veröffentlichung. Ein Plugin mit einer [`command` Quelle](#command-sources) wird nicht durch dieses Feld fixiert. Weder ist ein Plugin [in Ort geladen](/docs/de/plugins-reference#plugin-caching-and-file-resolution) aus einem Marktplatz, der als lokales Verzeichnis hinzugefügt wurde. Wenn Sie `version` weglassen, kommt die Version aus der nächsten Quelle in der [Versionsverwaltung](/docs/de/plugins-reference#version-management).

75 </Note>

76 </Step>

77 

78 <Step title="Erstellen Sie die Marktplatzdatei">

79 Erstellen Sie den Marktplatzkatalog, der Ihr Plugin auflistet.

80 

81 ```json my-marketplace/.claude-plugin/marketplace.json theme={null}

82 {

83 "name": "my-plugins",

84 "owner": {

85 "name": "Your Name"

86 },

87 "plugins": [

88 {

89 "name": "quality-review-plugin",

90 "source": "./plugins/quality-review-plugin",

91 "description": "Adds a quality-review skill for quick code reviews"

92 }

93 ]

94 }

95 ```

96 </Step>

97 

98 <Step title="Hinzufügen und Installieren">

99 Starten Sie Claude Code aus dem Verzeichnis, das `my-marketplace` enthält, und führen Sie die folgenden Befehle aus. Der Installationsbefehl öffnet eine Plugin-Detailansicht, in der Sie einen Installationsbereich auswählen, um die Installation zu bestätigen. Überprüfen Sie die Installationszusammenfassung: Wenn sie `Run /reload-plugins to activate.` meldet, siehe [Plugin-Änderungen ohne Neustart anwenden](/docs/de/discover-plugins#apply-plugin-changes-without-restarting).

100 

101 ```shell theme={null}

102 /plugin marketplace add ./my-marketplace

103 /plugin install quality-review-plugin@my-plugins

104 ```

105 </Step>

106 

107 <Step title="Probieren Sie es aus">

108 Wählen Sie etwas Code in Ihrem Editor aus und führen Sie Ihr neues skill aus. Plugin-skills sind mit dem Plugin-Namen namespaced.

109 

110 ```shell theme={null}

111 /quality-review-plugin:quality-review

112 ```

113 </Step>

114</Steps>

115 

116Um mehr über die Möglichkeiten von Plugins zu erfahren, einschließlich hooks, Agents, MCP servers und LSP servers, siehe [Plugins](/docs/de/plugins).

117 

118<Note>

119 **Wie Plugins installiert werden**: Wenn Benutzer ein Plugin installieren, kopiert Claude Code das Plugin-Verzeichnis an einen Cache-Speicherort, es sei denn, das Plugin wird in Ort geladen. Eine [`command` Quelle im Link-Modus](#copy-mode-and-link-mode) wird in Ort geladen, und ebenso eine [relative Pfad-Quelle](#relative-paths) in einem Marktplatz, der aus einem lokalen Verzeichnis hinzugefügt wurde. Kopierte Plugins können keine Dateien außerhalb ihres Verzeichnisses mit Pfaden wie `../shared-utils` referenzieren, da diese Dateien nicht kopiert werden.

120 

121 Wenn Sie Dateien über Plugins hinweg teilen müssen, verwenden Sie Symlinks. Siehe [Plugin-Caching und Dateiauflösung](/docs/de/plugins-reference#plugin-caching-and-file-resolution) für Details.

122</Note>

123 

124<h2 id="create-the-marketplace-file">

125 Marktplatzdatei erstellen

126</h2>

127 

128Erstellen Sie `.claude-plugin/marketplace.json` im Stammverzeichnis Ihres Repositories. Diese Datei definiert den Namen Ihres Marktplatzes, Eigentümerinformationen und eine Liste von Plugins mit ihren Quellen.

129 

130Jeder Plugin-Eintrag benötigt mindestens einen `name` und eine `source`, die Claude Code mitteilt, woher es abgerufen werden soll. Siehe das [vollständige Schema](#marketplace-schema) unten für alle verfügbaren Felder.

131 

132```json theme={null}

133{

134 "name": "company-tools",

135 "owner": {

136 "name": "DevTools Team",

137 "email": "devtools@example.com"

138 },

139 "plugins": [

140 {

141 "name": "code-formatter",

142 "source": "./plugins/formatter",

143 "description": "Automatic code formatting on save",

144 "version": "2.1.0",

145 "author": {

146 "name": "DevTools Team"

147 }

148 },

149 {

150 "name": "deployment-tools",

151 "source": {

152 "source": "github",

153 "repo": "company/deploy-plugin"

154 },

155 "description": "Deployment automation tools"

156 }

157 ]

158}

159```

160 

161<h2 id="marketplace-schema">

162 Marktplatz-Schema

163</h2>

164 

165<h3 id="required-fields">

166 Erforderliche Felder

167</h3>

168 

169| Feld | Typ | Beschreibung | Beispiel |

170| :-------- | :----- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------- |

171| `name` | string | Marktplatz-Identifier in Kebab-Case, ohne Leerzeichen, Steuerzeichen oder bidirektionale Formatierungszeichen. Dies ist öffentlich sichtbar: Benutzer sehen es beim Installieren von Plugins (z. B. `/plugin install my-tool@your-marketplace`). Jeder Benutzer kann nur einen Marktplatz pro Name registrieren: Wenn er einen zweiten Marktplatz mit demselben Namen hinzufügt, ersetzt Claude Code den ersten. Um mehrere Plugins unter einem Marktplatznamen zu veröffentlichen, listen Sie diese alle in einer [einzelnen `marketplace.json`](#create-the-marketplace-file) auf. | `"acme-tools"` |

172| `owner` | object | Informationen zum Marktplatz-Betreuer. Siehe [Eigentümer-Felder](#owner-fields) | |

173| `plugins` | array | Liste der verfügbaren Plugins | Siehe [Plugin-Einträge](#plugin-entries) |

174 

175<Note>

176 **Reservierte Namen**: Die folgenden Marktplatznamen sind für die offizielle Nutzung durch Anthropic reserviert und können nicht von Drittanbieter-Marktplätzen verwendet werden: `claude-code-marketplace`, `claude-code-plugins`, `claude-plugins-official`, `claude-plugins-community`, `claude-community`, `anthropic-marketplace`, `anthropic-plugins`, `agent-skills`, `anthropic-agent-skills`, `knowledge-work-plugins`, `life-sciences`, `claude-for-legal`, `claude-for-financial-services`, `financial-services-plugins`, `first-party-plugins`, `claude-tag-plugins`, `healthcare`. Namen, die offizielle Marktplätze imitieren, wie `official-claude-plugins` oder `anthropic-plugins-v2`, sind ebenfalls blockiert. Das Reservieren dieser Namen verhindert, dass sich ein Drittanbieter-Marktplatz als von Anthropic veröffentlichte Quelle darstellt.

177 

178 Claude Code überprüft reservierte Namen jedes Mal, wenn es einen Marktplatz lädt, nicht nur wenn Sie einen hinzufügen. Ein Marktplatz, der unter einem dieser Namen registriert wurde, bevor der Name reserviert wurde, wird nicht mehr geladen und meldet, dass er [von einer nicht vertrauenswürdigen Quelle registriert ist](/docs/de/errors#marketplace-is-registered-from-an-untrusted-source). Entfernen Sie diesen Marktplatz und fügen Sie ihn erneut aus der offiziellen Anthropic-Quelle hinzu. Ein Drittanbieter-Marktplatz, der von einem neu reservierten Namen betroffen ist, wird erneut geladen, sobald Sie ihn unter einem anderen Namen erneut hinzufügen. Vor v2.1.205 waren `first-party-plugins` und `healthcare` nicht reserviert, und ein Marktplatz, der bereits unter einem reservierten Namen registriert war, wurde weiterhin geladen. Vor v2.1.265 war `claude-tag-plugins` nicht reserviert.

179 

180 Sie können einen Marktplatz auch nicht `npm`, `pip`, `uv`, `cargo`, `github` oder `gh` nennen, in beliebiger Schreibweise. Diese Überprüfung erfordert Claude Code v2.1.275 oder später.

181</Note>

182 

183<h3 id="owner-fields">

184 Eigentümer-Felder

185</h3>

186 

187| Feld | Typ | Erforderlich | Beschreibung |

188| :------ | :----- | :----------- | :-------------------------------------------- |

189| `name` | string | Ja | Name des Betreuers oder Teams |

190| `email` | string | Nein | Kontakt-E-Mail für den Betreuer |

191| `url` | string | Nein | Website, GitHub-Profil oder Organisations-URL |

192 

193<h3 id="optional-fields">

194 Optionale Felder

195</h3>

196 

197| Feld | Typ | Beschreibung |

198| :------------------------------------ | :----- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

199| `$schema` | string | JSON-Schema-URL für Editor-Autovervollständigung und Validierung. Claude Code ignoriert dieses Feld beim Laden. |

200| `description` | string | Kurze Marktplatzbeschreibung |

201| `version` | string | Marktplatz-Manifest-Version |

202| `metadata.pluginRoot` | string | Verzeichnis, das Claude Code für bare Plugin-Quellnamen auflöst. Siehe [Relative Pfade](#relative-paths). Erfordert Claude Code v2.1.239 oder später. |

203| `allowCrossMarketplaceDependenciesOn` | array | Andere Marktplätze, von denen Plugins in diesem Marktplatz abhängen können. Abhängigkeiten von einem Marktplatz, der hier nicht aufgelistet ist, werden bei der Installation blockiert. Siehe [Von einem Plugin aus einem anderen Marktplatz abhängen](/docs/de/plugin-dependencies#depend-on-a-plugin-from-another-marketplace). |

204| `renames` | object | Zuordnung von einem früheren Plugin-`name` zu seinem aktuellen Namen oder zu `null`, wenn das Plugin entfernt wurde. Ermöglicht es bestehenden Benutzern, automatisch zu migrieren, wenn Sie einen Eintrag in `plugins` umbenennen oder entfernen. Siehe [Plugin umbenennen oder entfernen](#rename-or-remove-a-plugin). Erfordert Claude Code v2.1.193 oder später. |

205 

206`description` und `version` werden auch unter `metadata` für Rückwärtskompatibilität akzeptiert.

207 

208<h2 id="plugin-entries">

209 Plugin-Einträge

210</h2>

211 

212Jeder Plugin-Eintrag im `plugins`-Array beschreibt ein Plugin und wo man es findet. Sie können jedes Feld aus dem [Plugin-Manifest-Schema](/docs/de/plugins-reference#plugin-manifest-schema) einbeziehen, wie `description`, `version`, `author`, `commands` und `hooks`, plus diese Marktplatz-spezifischen Felder: `source`, `category`, `tags`, `strict`, `relevance`, `headers` und `headersHelper`.

213 

214<h3 id="required-fields-2">

215 Erforderliche Felder

216</h3>

217 

218| Feld | Typ | Beschreibung |

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

220| `name` | string | Plugin-Identifier in Kebab-Case, ohne Leerzeichen, Steuerzeichen oder bidirektionale Formatierungszeichen. Dies ist öffentlich sichtbar: Benutzer sehen es beim Installieren (z. B. `/plugin install my-plugin@marketplace`). |

221| `source` | string\|object | Wo das Plugin abgerufen werden soll (siehe [Plugin-Quellen](#plugin-sources) unten) |

222 

223<h3 id="optional-plugin-fields">

224 Optionale Plugin-Felder

225</h3>

226 

227**Standard-Metadatenfelder:**

228 

229| Feld | Typ | Beschreibung |

230| :--------------- | :------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

231| `displayName` | string | Benutzerfreundlicher Name, der in UI-Oberflächen angezeigt wird. Wenn weder der Eintrag noch die `plugin.json` des Plugins einen festlegen, sehen Benutzer den `name` des Plugins. Kann Leerzeichen und beliebige Groß-/Kleinschreibung enthalten. Wird nicht für Namensräume oder Suche verwendet. |

232| `description` | string | Kurze Plugin-Beschreibung |

233| `version` | string | Plugin-Version. Falls gesetzt (hier oder in `plugin.json`), wird das Plugin auf diese Zeichenkette festgelegt und Benutzer erhalten Updates nur, wenn sie sich ändert. Ein Plugin mit einer [`command`-Quelle](#command-sources) wird durch keines der beiden Felder festgelegt. Auch nicht ein Plugin, das [an Ort und Stelle geladen](/docs/de/plugins-reference#plugin-caching-and-file-resolution) wird von einem Marktplatz, der als lokales Verzeichnis hinzugefügt wurde. Falls an keiner Stelle gesetzt, kommt die Version aus der nächsten Quelle in [Versionsverwaltung](/docs/de/plugins-reference#version-management). |

234| `author` | object | Plugin-Autoreninformationen (`name` erforderlich; `email` und `url` optional) |

235| `homepage` | string | Plugin-Homepage oder Dokumentations-URL |

236| `repository` | string | Quellcode-Repository-URL |

237| `license` | string | SPDX-Lizenz-Identifier (z. B. MIT, Apache-2.0) |

238| `keywords` | array | Tags für Plugin-Entdeckung und Kategorisierung |

239| `metadata` | object | Freies Objekt für Ihre eigenen Felder, wie Berechtigung oder Katalogdaten. Claude Code liest es nicht. Vor v2.1.222 meldete `claude plugin validate` den Schlüssel als unbekanntes Feld. |

240| `category` | string | Plugin-Kategorie zur Organisation |

241| `tags` | array | Tags für Suchbarkeit |

242| `strict` | boolean | Steuert, ob `plugin.json` die Autorität für Komponentendefinitionen ist (Standard: true). Siehe [Strict Mode](#strict-mode) unten. |

243| `relevance` | object | Signale, die Claude Code mitteilen, wann dieses Plugin Benutzern empfohlen werden soll. Wirkt sich nur auf Marktplätze aus, die ein Administrator in verwalteten Einstellungen auf die Whitelist setzt. Siehe [Plugins für Ihre Organisation empfehlen](/docs/de/plugin-relevance). |

244| `defaultEnabled` | boolean | Ob das Plugin nach der Installation aktiviert ist (Standard: true). Setzen Sie auf `false`, um das Plugin deaktiviert zu installieren, bis sich der Benutzer anmeldet. Hat Vorrang vor dem gleichen Feld in der `plugin.json` des Plugins. Siehe [Standardaktivierung](/docs/de/plugins-reference#default-enablement). |

245 

246Sowohl der Eintrag als auch die `plugin.json` des Plugins können die Anzeigefelder `displayName`, `description`, `author`, `homepage`, `repository`, `license` und `keywords` festlegen. In Plugin-Auflistungen und Details vor und nach der Installation:

247 

248* Für ein Feld, das Sie im Eintrag festlegen, sehen Benutzer den Wert des Eintrags, auch wenn `plugin.json` einen anderen festlegt.

249* Für ein Feld, das der Eintrag nicht festlegt, sehen Benutzer den `plugin.json`-Wert.

250 

251Vor der Installation kann Claude Code `plugin.json` nur für Einträge mit einer [Relative-Pfad-Quelle](#relative-paths) lesen, deren Plugin-Dateien sich im Marktplatz selbst befinden. Für einen Eintrag mit einem anderen Quellentyp sehen Benutzer nur die eigenen Felder des Eintrags, bis sie das Plugin installieren.

252 

253**Komponenten-Konfigurationsfelder:**

254 

255| Feld | Typ | Beschreibung |

256| :----------- | :------------- | :-------------------------------------------------------------------------------- |

257| `skills` | string\|array | Benutzerdefinierte Pfade zu Skill-Verzeichnissen, die `<name>/SKILL.md` enthalten |

258| `commands` | string\|array | Benutzerdefinierte Pfade zu flachen `.md` Skill-Dateien oder Verzeichnissen |

259| `agents` | string\|array | Benutzerdefinierte Pfade zu Agent-Dateien |

260| `hooks` | string\|object | Benutzerdefinierte hooks-Konfiguration oder Pfad zu hooks-Datei |

261| `mcpServers` | string\|object | MCP server-Konfigurationen oder Pfad zu MCP-Konfiguration |

262| `lspServers` | string\|object | LSP server-Konfigurationen oder Pfad zu LSP-Konfiguration |

263 

264**Archive-Authentifizierungsfelder:**

265 

266Setzen Sie diese, wenn der Eintrag eine [`archive`-Quelle](#zip-archives) auf einem Server hat, der Anmeldedaten erfordert.

267 

268| Feld | Typ | Beschreibung |

269| :-------------- | :----- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

270| `headers` | object | HTTP-Header, die Claude Code beim Download des Archivs dieses Eintrags sendet. Überschreibt die Header des Marktplatzes mit demselben Namen. Erfordert Claude Code v2.1.238 oder später. |

271| `headersHelper` | string | Befehl, der die HTTP-Header für den Archiv-Download dieses Eintrags als ein JSON-Objekt ausgibt, für eine Berechtigung, die abläuft. Siehe [Archive-Downloads authentifizieren](#authenticate-archive-downloads). Der Eintrag muss auch [`"strict": false`](#strict-mode) setzen. Erfordert Claude Code v2.1.238 oder später. |

272 

273<h2 id="plugin-sources">

274 Plugin-Quellen

275</h2>

276 

277Plugin-Quellen teilen Claude Code mit, wo jedes einzelne Plugin in Ihrem Marktplatz abgerufen werden soll. Diese werden im `source`-Feld jedes Plugin-Eintrags in `marketplace.json` festgelegt.

278 

279Claude Code kopiert jedes installierte Plugin in den lokalen versionierten Plugin-Cache unter `~/.claude/plugins/cache`, außer das Plugin wird an Ort und Stelle geladen. Eine [`command`-Quelle im Link-Modus](#copy-mode-and-link-mode) wird an Ort und Stelle geladen, und ebenso eine [relative Pfad-Quelle](#relative-paths) in einem Marktplatz, der aus einem lokalen Verzeichnis hinzugefügt wurde. Claude Code [installiert auch die berechtigten Node.js-Paketabhängigkeiten des Plugins](/docs/de/plugins-reference#node-js-package-dependencies) in die zwischengespeicherte Kopie. Siehe [Plugin-Caching und Dateiauflösung](/docs/de/plugins-reference#plugin-caching-and-file-resolution), um zu erfahren, wie ein Plugin, das an Ort und Stelle aus einem Marktplatz mit lokalem Verzeichnis geladen wird, Ihre Änderungen übernimmt.

280 

281| Quelle | Typ | Felder | Notizen |

282| -------------- | -------------------------------- | ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

283| Relativer Pfad | `string` (z. B. `"./my-plugin"`) | keine | Lokales Verzeichnis im Marktplatz-Repo. Muss mit `./` beginnen, es sei denn, Sie schreiben einen [bloßen Namen unter `metadata.pluginRoot`](#relative-paths). Claude Code löst den Pfad relativ zum Marktplatz-Root auf, nicht zum `.claude-plugin/`-Verzeichnis |

284| `github` | object | `repo`, `ref?`, `sha?` | |

285| `url` | object | `url`, `ref?`, `sha?` | Git-URL-Quelle |

286| `git-subdir` | object | `url`, `path`, `ref?`, `sha?` | Unterverzeichnis in einem Git-Repo. Klont sparsam, um die Bandbreite für Monorepos zu minimieren |

287| `npm` | object | `package`, `version?`, `registry?` | npm-Paket, abgerufen mit Ihrem npm-Client und entpackt, ohne Installationsskripte auszuführen |

288| `archive` | object | `url`, `sha256?` | Zip-Archiv, das über HTTPS heruntergeladen wird. Funktioniert ohne Git oder npm auf dem Computer des Benutzers. Erfordert Claude Code v2.1.224 oder später |

289| `command` | object | `command`, `timeout?`, `mode?` | Plugin-Verzeichnis, das durch Ausführung eines lokalen Befehls erzeugt wird, wird einmal pro Sitzung erneut ausgeführt, um Änderungen zu übernehmen. Erfordert Claude Code v2.1.229 oder später |

290 

291<Note>

292 **Marktplatz-Quellen vs. Plugin-Quellen**: Dies sind unterschiedliche Konzepte, die unterschiedliche Dinge steuern.

293 

294 * **Marktplatz-Quelle**: wo der `marketplace.json`-Katalog selbst abgerufen werden soll. Wird festgelegt, wenn Benutzer `/plugin marketplace add` ausführen oder in `extraKnownMarketplaces`-Einstellungen. Git-basierte Marktplatz-Quellen unterstützen `ref` (Branch/Tag), aber nicht `sha`.

295 * **Plugin-Quelle**: wo ein einzelnes Plugin in der Marktplatz-Liste abgerufen werden soll. Wird im `source`-Feld jedes Plugin-Eintrags in `marketplace.json` festgelegt. Git-basierte Plugin-Quellen unterstützen sowohl `ref` (Branch/Tag) als auch `sha` (exakter Commit).

296 

297 Beispielsweise kann ein Marktplatz, der unter `acme-corp/plugin-catalog` gehostet wird (Marktplatz-Quelle), ein Plugin auflisten, das von `acme-corp/code-formatter` abgerufen wird (Plugin-Quelle). Die Marktplatz-Quelle und die Plugin-Quelle verweisen auf unterschiedliche Repositories und werden unabhängig voneinander angeheftet.

298</Note>

299 

300Die Git-basierten Quellentypen unten sind `github`, `url` und `git-subdir`. Wenn sowohl `ref` als auch `sha` auf einem von ihnen gesetzt sind, ist `sha` die effektive Anheftung. Claude Code ruft den angehefteten Commit direkt ab und checkt ihn aus.

301 

302Auf den meisten Git-Hosts, einschließlich GitHub, GitLab und Bitbucket, bedeutet dies, dass die Installation erfolgreich ist, auch wenn der Branch oder Tag, der durch `ref` benannt wird, inzwischen upstream gelöscht wurde, solange der Commit noch vom Repository aus erreichbar ist. Einige Server, wie AWS CodeCommit, unterstützen das Abrufen von Commits nach SHA nicht. Auf diesen Servern muss `ref` noch vorhanden sein und der angeheftete Commit muss von ihm aus erreichbar sein.

303 

304Wenn Sie Plugins über **Organisationseinstellungen > Plugins** verteilen, sind nur einige Quellentypen zulässig. Siehe [Verteilung über Organisationseinstellungen](#distribute-through-organization-settings).

305 

306<h3 id="relative-paths">

307 Relative Pfade

308</h3>

309 

310Für Plugins im selben Repository verwenden Sie einen Pfad, der mit `./` beginnt:

311 

312```json theme={null}

313{

314 "name": "my-plugin",

315 "source": "./plugins/my-plugin"

316}

317```

318 

319Pfade werden relativ zum Marktplatz-Root aufgelöst, das ist das Verzeichnis, das `.claude-plugin/` enthält. Im obigen Beispiel verweist `./plugins/my-plugin` auf `<repo>/plugins/my-plugin`, obwohl `marketplace.json` unter `<repo>/.claude-plugin/marketplace.json` lebt. Verwenden Sie nicht `../`, um Pfade außerhalb des Marktplatz-Root zu referenzieren. Auf macOS und Linux lehnt Claude Code einen Eintragspfad mit einem Backslash irgendwo nach dem führenden `./` ab, daher schreiben Sie die Trennzeichen auf jeder Plattform als `/`.

320 

321Ein bloßer Name ist ein einzelner Verzeichnisname ohne `/`, wie z. B. `"formatter"`. Um bloße Namen statt `./`-Pfade zu schreiben, setzen Sie [`metadata.pluginRoot`](#optional-fields) auf das Verzeichnis, unter dem sie aufgelöst werden. Mit `"pluginRoot": "./plugins"` löst Claude Code `"source": "formatter"` zu `./plugins/formatter` auf. Erfordert Claude Code v2.1.239 oder später.

322 

323`metadata.pluginRoot` muss selbst ein relativer Pfad im Marktplatz sein. Claude Code ignoriert ihn für eine Quelle, die bereits mit `./` beginnt. Eine Quelle, die ein `/` enthält, wie z. B. `team-a/formatter`, ist kein bloßer Name und benötigt immer noch das `./`-Präfix, auch wenn `metadata.pluginRoot` gesetzt ist.

324 

325<Note>

326 Claude Code löst relative Pfade gegen eine lokale Kopie des Marktplatzes auf, daher funktionieren sie, wenn Benutzer Ihren Marktplatz aus einer Git-Quelle oder einem lokalen Verzeichnis hinzufügen. Wenn Benutzer Ihren Marktplatz über eine direkte URL zur `marketplace.json`-Datei hinzufügen, werden relative Pfade nicht aufgelöst, da nur diese Datei heruntergeladen wird. Verwenden Sie für URL-basierte Verteilung stattdessen eine andere [Plugin-Quelle](#plugin-sources). Siehe [Fehlerbehebung](#plugins-with-relative-paths-fail-in-url-based-marketplaces) für Details.

327</Note>

328 

329<h3 id="github-repositories">

330 GitHub-Repositories

331</h3>

332 

333```json theme={null}

334{

335 "name": "github-plugin",

336 "source": {

337 "source": "github",

338 "repo": "owner/plugin-repo"

339 }

340}

341```

342 

343Sie können an einen bestimmten Branch, Tag oder Commit anheften:

344 

345```json theme={null}

346{

347 "name": "github-plugin",

348 "source": {

349 "source": "github",

350 "repo": "owner/plugin-repo",

351 "ref": "v2.0.0",

352 "sha": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0"

353 }

354}

355```

356 

357| Feld | Typ | Beschreibung |

358| :----- | :----- | :-------------------------------------------------------------------------------------- |

359| `repo` | string | Erforderlich. GitHub-Repository im Format `owner/repo` |

360| `ref` | string | Optional. Git-Branch oder Tag (Standard: Standard-Branch des Repositories) |

361| `sha` | string | Optional. Vollständiger 40-stelliger Git-Commit-SHA zum Anheften an eine exakte Version |

362 

363<h3 id="git-repositories">

364 Git-Repositories

365</h3>

366 

367```json theme={null}

368{

369 "name": "git-plugin",

370 "source": {

371 "source": "url",

372 "url": "https://gitlab.com/team/plugin.git"

373 }

374}

375```

376 

377Sie können an einen bestimmten Branch, Tag oder Commit anheften:

378 

379```json theme={null}

380{

381 "name": "git-plugin",

382 "source": {

383 "source": "url",

384 "url": "https://gitlab.com/team/plugin.git",

385 "ref": "main",

386 "sha": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0"

387 }

388}

389```

390 

391| Feld | Typ | Beschreibung |

392| :---- | :----- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

393| `url` | string | Erforderlich. Vollständige Git-Repository-URL (`https://` oder `git@`). Das `.git`-Suffix ist optional, daher funktionieren Azure DevOps- und AWS CodeCommit-URLs ohne das Suffix |

394| `ref` | string | Optional. Git-Branch oder Tag (Standard: Standard-Branch des Repositories) |

395| `sha` | string | Optional. Vollständiger 40-stelliger Git-Commit-SHA zum Anheften an eine exakte Version |

396 

397<h3 id="git-subdirectories">

398 Git-Unterverzeichnisse

399</h3>

400 

401Verwenden Sie `git-subdir`, um auf ein Plugin zu verweisen, das sich in einem Unterverzeichnis eines Git-Repositories befindet. Claude Code verwendet einen sparsamen, teilweisen Klon, um nur das Unterverzeichnis abzurufen und die Bandbreite für große Monorepos zu minimieren.

402 

403```json theme={null}

404{

405 "name": "my-plugin",

406 "source": {

407 "source": "git-subdir",

408 "url": "https://github.com/acme-corp/monorepo.git",

409 "path": "tools/claude-plugin"

410 }

411}

412```

413 

414Sie können an einen bestimmten Branch, Tag oder Commit anheften:

415 

416```json theme={null}

417{

418 "name": "my-plugin",

419 "source": {

420 "source": "git-subdir",

421 "url": "https://github.com/acme-corp/monorepo.git",

422 "path": "tools/claude-plugin",

423 "ref": "v2.0.0",

424 "sha": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0"

425 }

426}

427```

428 

429Das `url`-Feld akzeptiert auch eine GitHub-Kurzform (`owner/repo`) oder SSH-URLs (`git@github.com:owner/repo.git`).

430 

431| Feld | Typ | Beschreibung |

432| :----- | :----- | :------------------------------------------------------------------------------------------------- |

433| `url` | string | Erforderlich. Git-Repository-URL, GitHub `owner/repo`-Kurzform oder SSH-URL |

434| `path` | string | Erforderlich. Unterverzeichnispfad im Repo, das das Plugin enthält (z. B. `"tools/claude-plugin"`) |

435| `ref` | string | Optional. Git-Branch oder Tag (Standard: Standard-Branch des Repositories) |

436| `sha` | string | Optional. Vollständiger 40-stelliger Git-Commit-SHA zum Anheften an eine exakte Version |

437 

438<h3 id="npm-packages">

439 npm-Pakete

440</h3>

441 

442Eine npm-Quelle kann jedes Paket in der öffentlichen npm-Registry oder in einer privaten Registry, die Ihr Team hostet, benennen. Claude Code löst das Paket mit Ihrem npm-Client auf, lädt das Tarball herunter und entpackt es in den Plugin-Cache.

443 

444Die Installationsskripte des Pakets, wie z. B. `preinstall` oder `postinstall`, werden niemals ausgeführt, und seine Abhängigkeiten werden während des Abrufs nicht installiert.

445 

446Wenn das Paket eine unterstützte Sperrdatei neben seiner `package.json` enthält, installiert Claude Code diese [Node.js-Paketabhängigkeiten](/docs/de/plugins-reference#node-js-package-dependencies) in einem separaten Schritt, auch mit deaktivierten Skripten. Andernfalls veröffentlichen Sie das Plugin mit allem, was es bereits erstellt benötigt. Ein MCP-Server, der andere Pakete benötigt, kann über `npx` gestartet werden, das sie beim ersten Lauf installiert.

447 

448```json theme={null}

449{

450 "name": "my-npm-plugin",

451 "source": {

452 "source": "npm",

453 "package": "@acme/claude-plugin"

454 }

455}

456```

457 

458Um an eine bestimmte Version anzuheften, fügen Sie das `version`-Feld hinzu:

459 

460```json theme={null}

461{

462 "name": "my-npm-plugin",

463 "source": {

464 "source": "npm",

465 "package": "@acme/claude-plugin",

466 "version": "2.1.0"

467 }

468}

469```

470 

471Um von einer privaten oder internen Registry zu installieren, fügen Sie das `registry`-Feld hinzu:

472 

473```json theme={null}

474{

475 "name": "my-npm-plugin",

476 "source": {

477 "source": "npm",

478 "package": "@acme/claude-plugin",

479 "version": "^2.0.0",

480 "registry": "https://npm.example.com"

481 }

482}

483```

484 

485| Feld | Typ | Beschreibung |

486| :--------- | :----- | :------------------------------------------------------------------------------------------------------------ |

487| `package` | string | Erforderlich. Paketname oder Scoped-Paket (z. B. `@org/plugin`) |

488| `version` | string | Optional. Version oder Versionsspanne (z. B. `2.1.0`, `^2.0.0`, `~1.5.0`) |

489| `registry` | string | Optional. Benutzerdefinierte npm-Registry-URL. Standard ist die System-npm-Registry (normalerweise npmjs.org) |

490 

491<h3 id="zip-archives">

492 Zip-Archive

493</h3>

494 

495Verwenden Sie `archive`, um ein Plugin als Zip-Datei zu verteilen, die Claude Code über HTTPS herunterlädt, damit Installationen ohne Git oder npm auf dem Computer des Benutzers funktionieren. Hosten Sie die Datei auf einem beliebigen statischen Dateiserver oder Artefakt-Repository, wie z. B. einem S3-Bucket, einem Artifactory-Repository für generische Artefakte oder nginx. Erfordert Claude Code v2.1.224 oder später. In den Versionen v2.1.120 bis v2.1.223 schlägt die Installation des Plugins mit `This plugin uses a source type your Claude Code version does not support. Update Claude Code and try again.` fehl; in älteren Versionen kann ein Marktplatz mit einem `archive`-Eintrag überhaupt nicht geladen werden.

496 

497Dieser Eintrag installiert das Plugin aus einer Zip-Datei auf einem Artefakt-Server:

498 

499```json theme={null}

500{

501 "name": "my-plugin",

502 "source": {

503 "source": "archive",

504 "url": "https://artifacts.example.com/claude-plugins/my-plugin-2.1.0.zip"

505 }

506}

507```

508 

509Wenn Sie die Zip-Datei erstellen, können Sie den Inhalt des Plugins direkt zippen oder den Plugin-Ordner selbst zippen. Claude Code sucht nach `.claude-plugin/` oben im Archiv und dann in einem einzelnen Top-Level-Ordner, daher funktionieren beide Layouts:

510 

511```text theme={null}

512my-plugin.zip my-plugin.zip

513├── .claude-plugin/ └── my-plugin/

514│ └── plugin.json ├── .claude-plugin/

515└── commands/ │ └── plugin.json

516 └── commands/

517```

518 

519Claude Code sucht nicht tiefer als einen Ordner, daher schlägt ein Plugin, das tiefer verschachtelt ist, bei der Installation fehl. Claude Code lehnt Archive ab, die größer als 256 MiB sind.

520 

521Um die genaue Datei anzuheften, fügen Sie ein `sha256`-Feld mit dem Digest des Archivs hinzu:

522 

523```json theme={null}

524{

525 "name": "my-plugin",

526 "source": {

527 "source": "archive",

528 "url": "https://artifacts.example.com/claude-plugins/my-plugin-2.1.0.zip",

529 "sha256": "6bfa50e3d2e00c052b46abe51fff89346ac803e45771f76dcf6df1ab74cca5e1"

530 }

531}

532```

533 

534Wenn die heruntergeladene Datei nicht mit der Anheftung übereinstimmt, lehnt Claude Code die Installation ab und meldet [`Plugin archive integrity check failed`](/docs/de/errors#plugin-archive-integrity-check-failed).

535 

536Archive-Quellen akzeptieren diese Felder:

537 

538| Feld | Typ | Beschreibung |

539| :------- | :----- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

540| `url` | string | Erforderlich. HTTPS-URL des Zip-Archivs. Claude Code lehnt `http://`-URLs sowie Loopback-, Link-Local- und Cloud-Metadaten-Hosts ab. Jeder Umleitungs-Hop muss die gleichen Regeln erfüllen, oder Claude Code lehnt den Download ab |

541| `sha256` | string | Optional. SHA-256-Digest des Archivs als 64 Hex-Zeichen, Groß- oder Kleinbuchstaben. Claude Code überprüft jeden Download dagegen und lehnt die Installation bei einer Nichtübereinstimmung ab |

542 

543Das `sha256`-Digest dient auch als Version des Plugins, wenn weder `plugin.json` noch der Marktplatz-Eintrag eine deklariert. Siehe [Versionsverwaltung](/docs/de/plugins-reference#version-management). Wenn Sie eine `version` deklarieren, ist diese Versionsnummer das Update-Signal, daher müssen Sie nach dem Ändern der Zip-Datei und ihres Digests auch die Version erhöhen, oder Benutzer behalten die zwischengespeicherte Kopie.

544 

545<h4 id="authenticate-archive-downloads">

546 Archive-Downloads authentifizieren

547</h4>

548 

549Um einen Archive-Download zu authentifizieren, wie z. B. einen Download aus einer privaten Registry, setzen Sie die HTTP-Header, die Claude Code damit sendet. Setzen Sie `headers` auf der `url`-Quelle, von der Sie den Marktplatz registriert haben, wie z. B. einem [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces)-Eintrag. In Claude Code v2.1.238 oder später können Sie ihn stattdessen auf dem Eintrag des Plugins setzen, neben `source`.

550 

551Wenn der Wert, den Sie in `headers` einfügen würden, kurzlebig ist, wie z. B. ein Token, den Ihre Registry auf Anfrage ausstellt, setzen Sie stattdessen einen `headersHelper`-Befehl an derselben Stelle. Claude Code führt den Befehl aus und sendet das JSON-Objekt, das er ausgibt, als Header dieses Ortes. Erfordert Claude Code v2.1.238 oder später.

552 

553Der Ort, den Sie wählen, entscheidet, welche Downloads die Header erhalten und wann Claude Code einen `headersHelper`-Befehl ausführt:

554 

555| Ort | Downloads, die die Header erhalten | Wann Claude Code einen `headersHelper` an diesem Ort ausführt |

556| :---------------------- | :--------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

557| Marktplatz-`url`-Quelle | Archive-Downloads auf dem Ursprung der Marktplatz-URL, d. h. das gleiche Schema, Host und Port | Vor jedem Abrufen der `marketplace.json` des Marktplatzes und vor jedem Archive-Download auf diesem Ursprung. Claude Code verwendet die Ausgabe eines Laufs bis zu 60 Sekunden lang erneut |

558| Plugin-Eintrag | Nur der Download dieses Eintrags | Nur wenn ein Benutzer dieses eine Plugin selbst installiert oder aktualisiert und [den Befehl akzeptiert](#how-users-accept-a-headershelper-command) |

559 

560Wenn beide Orte einen Header mit dem gleichen Namen setzen, sendet Claude Code den Wert des Eintrags. Innerhalb eines Ortes überschreibt ein Header, den der Befehl ausgibt, einen Header mit dem gleichen Namen in der `headers`-Liste.

561 

562<h5 id="add-a-headershelper-to-a-plugin-entry">

563 Fügen Sie einen headersHelper zu einem Plugin-Eintrag hinzu

564</h5>

565 

566Dieser Eintrag setzt `headersHelper` neben `source`. Er setzt auch `"strict": false`, was Claude Code von einem `marketplace.json`-Eintrag verlangt, der `headersHelper` setzt. Mit [`"strict": false`](#strict-mode) ist der Marktplatz-Eintrag die gesamte Definition des Plugins, daher kann ein Benutzer überprüfen, was das Plugin enthält, bevor er den Befehl akzeptiert:

567 

568```json theme={null}

569{

570 "name": "my-plugin",

571 "description": "Formatting commands for internal services",

572 "strict": false,

573 "commands": "./commands",

574 "source": {

575 "source": "archive",

576 "url": "https://registry.example.com/plugins/my-plugin-2.1.0.zip"

577 },

578 "headersHelper": "/opt/bin/mint-registry-token.sh"

579}

580```

581 

582Um den Eintrag zu überprüfen, führen Sie `claude plugin install my-plugin@your-marketplace` aus. Claude Code zeigt Ihnen den Befehl und die Archive-URL und lädt die Zip-Datei herunter, nachdem Sie akzeptieren.

583 

584Vor v2.1.238 hat Claude Code das Archive eines Eintrags ohne seine `headers` oder `headersHelper` heruntergeladen, daher schlugen Installationen, die sich darauf verließen, mit `HTTP 401 while downloading plugin archive from` fehl, gefolgt von der URL, mit dem Status-Code der Registry anstelle von 401.

585 

586<h4 id="write-the-headershelper-command">

587 Schreiben Sie den headersHelper-Befehl

588</h4>

589 

590Ob Sie `headersHelper` auf einer Marktplatz-`url`-Quelle oder auf einem Plugin-Eintrag setzen, schreiben Sie den Befehl, um diese Anforderungen zu erfüllen:

591 

592* **Befehlstext**: höchstens 500 Zeichen druckbares ASCII, ohne Lauf von vier oder mehr Leerzeichen.

593* **Ausgabe**: geben Sie ein JSON-Objekt von Header-Namen und Zeichenkettenwerten auf stdout aus, dann beenden Sie mit 0 innerhalb von 10 Sekunden.

594* **Shell und Arbeitsverzeichnis**: Claude Code führt den Befehl durch `sh` oder `cmd.exe` unter Windows aus, vom Konfigurationsverzeichnis, `~/.claude` oder [`CLAUDE_CONFIG_DIR`](/docs/de/env-vars#variables). Geben Sie einen absoluten Pfad oder einen Befehl auf `PATH` an, da ein relativer Pfad gegen dieses Verzeichnis aufgelöst wird, nicht gegen das Projekt des Benutzers.

595* **Variablen, die Claude Code entfernt**: aus der Umgebung eines Befehls, der in einem `marketplace.json`-Eintrag oder in einer Projekt-`.claude/settings.json` oder `.claude/settings.local.json` gesetzt ist, entfernt Claude Code jede Variable, deren Name ein Wort wie `TOKEN`, `SECRET`, `KEY` oder `AUTH` enthält, einschließlich `ANTHROPIC_API_KEY`. Claude Code wendet diese Entfernung nicht auf einen Befehl an, der in Benutzereinstellungen, einer `--settings`-Datei oder verwalteten Einstellungen gesetzt ist.

596* **Variablen, die Claude Code setzt**: `CLAUDE_CODE_MARKETPLACE_URL` und `CLAUDE_CODE_MARKETPLACE_NAME` für den Befehl einer `url`-Quelle, und `CLAUDE_CODE_PLUGIN_NAME` und `CLAUDE_CODE_PLUGIN_ARCHIVE_URL` für den Befehl eines Eintrags. `CLAUDE_CODE_MARKETPLACE_NAME` ist beim ersten Abrufen nach dem Hinzufügen eines Marktplatzes durch URL nicht gesetzt, da dieses Abrufen der Name liefert.

597 

598Ein Befehl, der ein Bearer-Token ausstellt, gibt ein Objekt wie dieses aus:

599 

600```json theme={null}

601{"Authorization": "Bearer eyJhbGciOiJSUzI1NiJ9"}

602```

603 

604<h4 id="when-claude-code-skips-a-headershelper-command-or-drops-its-output">

605 Wenn Claude Code einen headersHelper-Befehl überspringt oder seine Ausgabe verwirft

606</h4>

607 

608Claude Code führt einen `headersHelper`-Befehl nicht aus oder verwirft Header, die von `headers` oder vom Befehl's Ausgabe kamen, in diesen Situationen:

609 

610* **Befehl schlägt fehl**: Wenn der Befehl mit Nicht-Null beendet wird, länger als 10 Sekunden läuft oder etwas anderes als ein JSON-Objekt von Zeichenkettenwerten ausgibt, macht Claude Code den Abruf oder Download nicht, für den er den Befehl ausgeführt hat.

611* **Marktplatz-URL beginnt nicht mit `https://`**: Claude Code führt den Befehl dieser `url`-Quelle nicht aus und sendet nur die in ihrem `headers`-Feld aufgelisteten Header.

612* **Umleitung verlässt den Ursprung**: Wenn ein Download von der Archive-URL's Ursprung umgeleitet wird, verwirft Claude Code die `headers`-Werte und die Befehlsausgabe sowohl der Marktplatz-`url`-Quelle als auch des Plugin-Eintrags.

613* **Eintrag setzt einen Routing- oder Identity-Header**: Claude Code verwirft Request-Routing- und Client-Identity-Namen wie `Host`, `Cookie` und `X-Forwarded-*` aus einem Eintrag's `headers` und Befehlsausgabe und behält Authentifizierungsnamen wie `Authorization`. Claude Code filtert jeden `marketplace.json`-Eintrag auf diese Weise und einen [Inline-Einstellungseintrag](/docs/de/settings-reference#extraknownmarketplaces) je nachdem, welche Datei ihn deklariert.

614* **Befehl in den Einstellungen eines `--add-dir`-Verzeichnisses gesetzt**: Claude Code ignoriert ihn, auf einer `url`-Quelle und auf einem [Inline-Plugin-Eintrag](/docs/de/settings-reference#extraknownmarketplaces) gleichermaßen, und sendet nur die `headers` dieser Datei.

615* **Verwaltete Einstellungen blockieren den Befehl**: Das Setzen von [`disableCommandPluginSources`](/docs/de/settings-reference#disablecommandpluginsources) auf `true` blockiert `headersHelper`-Befehle, und [`allowManagedHooksOnly`](/docs/de/settings-reference#allowmanagedhooksonly) blockiert sie auch, es sei denn, `disableCommandPluginSources` ist explizit `false`. Unter einer dieser Blockierungen führt Claude Code den Befehl immer noch für einen Marktplatz aus, den verwaltete Einstellungen selbst deklarieren.

616 

617<h4 id="how-users-accept-a-headershelper-command">

618 Wie Benutzer einen headersHelper-Befehl akzeptieren

619</h4>

620 

621Ein Benutzer akzeptiert den Befehl eines Plugin-Eintrags jedes Mal, wenn er dieses eine Plugin selbst installiert oder aktualisiert, aus der eigenen Ansicht des Plugins in `/plugin` oder mit `claude plugin install` oder `claude plugin update`. Claude Code zeigt den Befehl und die Archive-URL und führt den Befehl nur aus, nachdem der Benutzer akzeptiert.

622 

623In einer nicht-interaktiven Shell übergeben Sie [`--yes`](/docs/de/plugins-reference#plugin-install), um den Befehl zu akzeptieren. Um nur den Befehl zu akzeptieren, den ein vorheriger `--json`-Lauf angezeigt hat, übergeben Sie [`--accept-command`](/docs/de/plugins-reference#plugin-install) mit dem `sha256`, den der Lauf gemeldet hat.

624 

625Claude Code führt nur den Befehl aus, den er angezeigt hat, für die Archive-URL, die er angezeigt hat. Wenn sich der Befehl oder die Archive-URL des Eintrags dazwischen geändert haben, lehnt Claude Code die Installation oder Aktualisierung ab. Eine Änderung nur in der Abfragezeichenkette zählt nicht.

626 

627<h5 id="installs-and-updates-that-refuse-the-command-instead-of-asking">

628 Installationen und Aktualisierungen, die den Befehl ablehnen, statt zu fragen

629</h5>

630 

631Bei jeder Operation außer einer einzelnen Plugin-Installation oder Aktualisierung führt Claude Code den Befehl eines Eintrags nicht aus und lädt sein Archive nicht herunter, daher bleibt das Plugin bei seiner installierten Version oder bleibt deinstalliert. Was der Benutzer sieht, hängt von der Operation ab:

632 

633* **Installation mehrerer Plugins gleichzeitig, aus einem Plugin-Vorschlag oder als Abhängigkeit eines anderen Plugins**: Claude Code lehnt das Plugin mit dem Befehl ab und verweist den Benutzer auf die eigene Ansicht dieses Plugins in `/plugin`. Die anderen Plugins in einer Masseninstallation werden immer noch installiert. Ein Plugin, das vom abgelehnten Plugin abhängt, schlägt bei der Installation fehl, bis der Benutzer das abgelehnte Plugin selbst installiert.

634* **Hintergrund-Auto-Update oder Sitzungsstart für ein Plugin, dessen Archive nie heruntergeladen wurde**: Claude Code listet das Plugin auf der Registerkarte `/plugin` Fehler auf, damit der Benutzer weiß, dass er es manuell installieren oder aktualisieren muss. Ein Auto-Update, das die Ankündigung der installierten Version findet, listet nichts auf.

635 

636<h5 id="when-a-marketplace-url-source’s-command-runs">

637 Wenn der headersHelper-Befehl einer Marktplatz-`url`-Quelle ausgeführt wird

638</h5>

639 

640Ein `headersHelper` einer Marktplatz-`url`-Quelle wird in einer Einstellungsdatei deklariert, wie z. B. einem [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces)-Eintrag, statt im Katalog, den der Marktplatz veröffentlicht, daher fragt Claude Code den Benutzer nicht, ihn bei jeder Installation oder Aktualisierung zu akzeptieren. Die Einstellungsdatei, die ihn deklariert, entscheidet, wann Claude Code ihn ausführt:

641 

642| Einstellungsdatei | Wann Claude Code den Befehl ausführt |

643| :----------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

644| Benutzereinstellungen, eine `--settings`-Datei oder eine verwaltete Einstellungsdatei auf dem Computer | Ohne zu fragen, einschließlich während einer Hintergrund-Marktplatz-Aktualisierung |

645| Eine Projekt-`.claude/settings.json` oder `.claude/settings.local.json` | Nur nachdem der Benutzer den [Workspace-Trust-Dialog](/docs/de/permissions#what-runs-before-you-trust-a-folder) für diesen Ordner selbst akzeptiert. Eine `-p`- oder SDK-Sitzung zählt nicht als Akzeptanz, und auch nicht das Vertrauen, das einem übergeordneten Ordner gewährt wird |

646| Server-verwaltete Einstellungen | Nur nachdem der Benutzer die bereitgestellten Einstellungen im [Sicherheitsgenehmigungsdialog](/docs/de/server-managed-settings#security-approval-dialogs) genehmigt |

647 

648In einer `-p`- oder SDK-Sitzung kann Claude Code den Sicherheitsgenehmigungsdialog nicht anzeigen. Es wendet die anderen bereitgestellten Einstellungen an, aber der Marktplatz-Abruf und jeder Archive-Download, der den Befehl benötigt, schlägt fehl, bis ein Benutzer in einer interaktiven Sitzung genehmigt hat.

649 

650Für einen [Inline-Plugin-Eintrag](/docs/de/settings-reference#extraknownmarketplaces) in einer dieser Dateien verlangt Claude Code das gleiche Ordner-Vertrauen oder die gleiche Einstellungsgenehmigung wie für einen Marktplatz-Befehl in dieser Datei, und der Benutzer akzeptiert auch den Befehl des Eintrags bei jeder Installation oder Aktualisierung.

651 

652<h3 id="command-sources">

653 Command-Quellen

654</h3>

655 

656Verwenden Sie `command`, wenn ein lokal installiertes Tool das Plugin-Verzeichnis erzeugt, wie z. B. eine IDE, die ihr Plugin für die aktuell ausgewählte Toolchain rendert. Claude Code führt den Befehl aus, wenn der Benutzer das Plugin installiert, und führt ihn im Hintergrund einmal pro Sitzung erneut aus, damit Ihre Benutzer die geänderte Ausgabe des Tools ohne Neuinstallation übernehmen. Erfordert Claude Code v2.1.229 oder später. In v2.1.120 bis v2.1.228 schlägt die Installation des Plugins mit `This plugin uses a source type your Claude Code version does not support. Update Claude Code and try again.` fehl, und in älteren Versionen kann der ganze Marktplatz nicht geladen werden.

657 

658Dieser Eintrag installiert das Plugin aus dem Verzeichnis, das das Tool ausgibt:

659 

660```json theme={null}

661{

662 "name": "my-plugin",

663 "source": {

664 "source": "command",

665 "command": "my-tool claude-plugin-path"

666 }

667}

668```

669 

670Claude Code führt den Befehl durch die Plattform-Shell aus, `sh` unter macOS und Linux oder `cmd.exe` unter Windows, vom Home-Verzeichnis des Benutzers. Der Befehl muss genau eine Zeile auf stdout ausgeben und mit Code 0 beenden. Diese Zeile ist der absolute Pfad eines Verzeichnisses, das das komplette Plugin enthält, wenn der Befehl beendet wird, und der Pfad kann sich zwischen Läufen ändern.

671 

672Claude Code stoppt einen Befehl, der länger als `timeout` Sekunden läuft, und die Installation oder Aktualisierung schlägt fehl. Claude Code lehnt auch den ausgegebenen Pfad in diesen Fällen ab, und die Installation oder Aktualisierung schlägt auf die gleiche Weise fehl:

673 

674* Das Verzeichnis hat keinen Plugin-Inhalt auf seiner obersten Ebene, wie z. B. ein `.claude-plugin/`-Verzeichnis oder ein `skills/`-, `commands/`-, `agents/`- oder `hooks/`-Verzeichnis

675* Das Verzeichnis ist das, in dem Claude Code gestartet wurde, oder eines seiner übergeordneten Verzeichnisse

676* Unter Windows ist der Pfad ein UNC-Pfad

677 

678Command-Quellen akzeptieren diese Felder:

679 

680| Feld | Typ | Beschreibung |

681| :-------- | :----- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

682| `command` | string | Erforderlich. Shell-Befehl, der den absoluten Pfad des Plugin-Verzeichnisses als einzelne Zeile auf stdout ausgibt und 0 beendet. Muss druckbares ASCII sein, höchstens 500 Zeichen, ohne Läufe von vier oder mehr Leerzeichen, damit Benutzer den ganzen Befehl überprüfen können, den sie akzeptieren sollen |

683| `timeout` | number | Optional. Ganze Anzahl von Sekunden, die auf den Befehl gewartet werden soll, bevor aufgegeben wird (Standard: 60, Maximum: 600) |

684| `mode` | string | Optional. `"copy"` (Standard) kopiert das ausgegebene Verzeichnis in den Plugin-Cache. `"link"` verwendet das ausgegebene Verzeichnis an Ort und Stelle. Siehe [Copy-Modus und Link-Modus](#copy-mode-and-link-mode) |

685 

686<h4 id="copy-mode-and-link-mode">

687 Copy-Modus und Link-Modus

688</h4>

689 

690Mit dem Standard `"mode": "copy"` kopiert Claude Code das ausgegebene Verzeichnis in den versionierten Plugin-Cache und leitet die [Plugin-Version](/docs/de/plugins-reference#version-management) von einem Hash des Verzeichnisinhalts ab. Ihr Tool kann das Verzeichnis nach dem Befehlsende löschen oder umschreiben, und ein erneuter Lauf, der identischen Inhalt erzeugt, zählt als aktuell. Claude Code lehnt die Installation eines Verzeichnisses ab, das größer als 256 MiB ist oder mehr als 20.000 Einträge enthält.

691 

692Setzen Sie `"mode": "link"` für große Plugin-Verzeichnisse, die nicht kopiert werden sollten, wie z. B. ein gerenderter SDK-Export. Claude Code füllt den Plugin-Cache-Eintrag mit einem Link zu jedem Top-Level-Eintrag des ausgegebenen Verzeichnisses und verwendet die Dateien an Ort und Stelle, daher wird nichts kopiert, Dateiinhalte werden nicht gehasht, und die Größenlimits gelten nicht. Die Installation schlägt fehl, wenn ein Top-Level-Eintrag ein Symlink ist, der außerhalb des ausgegebenen Verzeichnisses verweist. Claude Code überspringt auch die [Node.js-Paketabhängigkeitsinstallation](/docs/de/plugins-reference#node-js-package-dependencies) für ein Link-Modus-Plugin, daher geben Sie ein Verzeichnis aus, das bereits alle `node_modules` enthält, die das Plugin benötigt.

693 

694Halten Sie das ausgegebene Verzeichnis an Ort und Stelle, solange das Plugin installiert bleibt, da Claude Code das Plugin bei jedem Start durch diese Links lädt. Claude Code leitet die [Plugin-Version](/docs/de/plugins-reference#version-management) vom echten Pfad des ausgegebenen Verzeichnisses und seinen Top-Level-Einträgen ab, nicht von den Dateien darin, daher geben Sie einen anderen Pfad aus, um neuen Inhalt zu signalisieren. In einer Sitzung, die im ausgegebenen Verzeichnis oder irgendwo darunter gestartet wird, lädt Claude Code das Plugin überhaupt nicht.

695 

696Claude Code unterstützt Link-Modus nicht unter Windows und lehnt die Installation eines Link-Modus-Plugins dort ab. Deklarieren Sie stattdessen `"mode": "copy"`.

697 

698<h4 id="how-users-accept-the-command">

699 Wie Benutzer den Befehl akzeptieren

700</h4>

701 

702Claude Code führt Ihren Befehl auf dem Computer des Benutzers aus, daher bindet jeder Lauf an die explizite Akzeptanz des Benutzers:

703 

704* Wenn Benutzer das Plugin aus seinem Detailbildschirm in `/plugin` installieren oder es mit `claude plugin install` oder `claude plugin update` in einem interaktiven Terminal installieren oder aktualisieren, zeigt Claude Code ihnen zuerst die genaue Befehlszeichenkette und zeichnet den akzeptierten Befehl für diese Installation auf. Ein `claude plugin update`, das auf der aufgezeichneten Akzeptanz des gleichen Befehls fortfahren kann, zeigt nichts.

705* In einer nicht-interaktiven Shell, wie z. B. einem Bereitstellungsskript, übergeben Sie `--yes` an `claude plugin install` oder `claude plugin update`, um den Befehl zu akzeptieren, den es ausgibt. Um nur den Befehl zu akzeptieren, den ein vorheriger `--json`-Lauf angezeigt hat, übergeben Sie [`--accept-command`](/docs/de/plugins-reference#plugin-install) mit dem `sha256`, den der Lauf gemeldet hat.

706* Jeder andere Pfad führt nur den Befehl aus, den der Benutzer bereits akzeptiert hat. Dies umfasst Updates, die von `/plugin` gestartet werden, und die Hintergrund-Läufe, die in [Wenn Claude Code den Befehl erneut ausführt](#when-claude-code-re-runs-the-command) beschrieben sind. Wenn keiner akzeptiert wurde, lehnt Claude Code die Ausführung des Befehls ab und teilt dem Benutzer mit, wie er ihn überprüfen kann. Claude Code installiert niemals ein Command-Quellen-Plugin als Abhängigkeit eines anderen Plugins, daher installieren Benutzer es selbst zuerst.

707* Wenn Sie den Eintrag's `command` ändern oder seinen `mode` wechseln, behalten Benutzer die Version, die sie bereits haben, und Claude Code stoppt die erneute Ausführung des Befehls. In interaktiven Sitzungen zeigt die Registerkarte `/plugin` Fehler den neuen Befehl, bis der Benutzer ihn überprüft und akzeptiert, indem er `claude plugin update <plugin>@<marketplace>` ausführt.

708 

709Administratoren können Command-Quellen in einer Organisation mit der verwalteten Einstellung [`disableCommandPluginSources`](/docs/de/settings-reference#disablecommandpluginsources) blockieren. Wenn eine Organisation [`allowManagedHooksOnly`](/docs/de/settings-reference#allowmanagedhooksonly) setzt, blockiert Claude Code Command-Quellen standardmäßig.

710 

711<h4 id="when-claude-code-re-runs-the-command">

712 Wenn Claude Code den Befehl erneut ausführt

713</h4>

714 

715Das ausgegebene Verzeichnis spiegelt den Zustand des Tools zum Zeitpunkt der Befehlsausführung wider, daher führt Claude Code den Befehl zu diesen Zeiten erneut aus:

716 

717* Jedes Mal, wenn der Benutzer das Plugin installiert oder aktualisiert

718* Einmal pro Sitzung für jedes aktivierte Command-Quellen-Plugin, im Hintergrund, kurz nach dem Sitzungsstart. Dieser Lauf geht nicht durch die Marktplatz-Auto-Update, daher hängt er nicht von der [Auto-Update-Einstellung](/docs/de/discover-plugins#configure-auto-updates) des Marktplatzes ab

719* Beim Start oder auf `/reload-plugins`, wenn die installierte Version eines aktivierten Plugins im Plugin-Cache fehlt

720 

721Claude Code überspringt die zwei Hintergrund-Läufe, wenn der Benutzer [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/de/env-vars) setzt. Explizite Installationen und Aktualisierungen führen den Befehl immer noch mit dieser Variable gesetzt aus.

722 

723Wenn sich die gehashte Ausgabe des Befehls geändert hat, installiert Claude Code das Ergebnis als neue Version und lädt es in der laufenden interaktiven Sitzung erneut, wobei [die gleichen Komponenten gewechselt werden, die `/reload-plugins` wechselt](/docs/de/plugins-reference#environment-variables). Der Benutzer sieht eine Benachrichtigung, dass das Plugin erneut geladen wurde. Wenn das Neuladen an Ort und Stelle den Prompt-Cache der Sitzung ungültig machen würde, fordert Claude Code den Benutzer stattdessen auf, `/reload-plugins` auszuführen, was [vor den Cache-Kosten warnt und angewendet wird, wenn es mit `--force` erneut ausgeführt wird](/docs/de/prompt-caching#enabling-or-disabling-a-plugin).

724 

725<h3 id="advanced-plugin-entries">

726 Erweiterte Plugin-Einträge

727</h3>

728 

729Dieses Beispiel zeigt einen Plugin-Eintrag mit vielen optionalen Feldern, einschließlich benutzerdefinierter Pfade für Befehle, Agents, hooks und MCP-Server:

730 

731```json theme={null}

732{

733 "name": "enterprise-tools",

734 "source": {

735 "source": "github",

736 "repo": "company/enterprise-plugin"

737 },

738 "description": "Enterprise workflow automation tools",

739 "version": "2.1.0",

740 "author": {

741 "name": "Enterprise Team",

742 "email": "enterprise@example.com"

743 },

744 "homepage": "https://docs.example.com/plugins/enterprise-tools",

745 "repository": "https://github.com/company/enterprise-plugin",

746 "license": "MIT",

747 "keywords": ["enterprise", "workflow", "automation"],

748 "category": "productivity",

749 "commands": [

750 "./commands/core/",

751 "./commands/enterprise/",

752 "./commands/experimental/preview.md"

753 ],

754 "agents": ["./agents/security-reviewer.md", "./agents/compliance-checker.md"],

755 "hooks": {

756 "PostToolUse": [

757 {

758 "matcher": "Write|Edit",

759 "hooks": [

760 {

761 "type": "command",

762 "command": "${CLAUDE_PLUGIN_ROOT}/scripts/validate.sh"

763 }

764 ]

765 }

766 ]

767 },

768 "mcpServers": {

769 "enterprise-db": {

770 "command": "${CLAUDE_PLUGIN_ROOT}/servers/db-server",

771 "args": ["--config", "${CLAUDE_PLUGIN_ROOT}/config.json"]

772 }

773 },

774 "strict": false

775}

776```

777 

778Wichtige Dinge zu beachten:

779 

780* **`commands` und `agents`**: Sie können mehrere Verzeichnisse oder einzelne Dateien angeben. Pfade sind relativ zum Plugin-Root und müssen darin bleiben.

781 * Claude Code lehnt einen Pfad ab, der außerhalb des Plugin-Verzeichnisses aufgelöst wird, wie z. B. `./../shared.md`, mit einem [`path escapes plugin directory`](/docs/de/errors#path-escapes-plugin-directory)-Fehler ab und lädt das Plugin immer noch ohne diese Komponente

782* **`${CLAUDE_PLUGIN_ROOT}`**: Verwenden Sie diese Variable in Hook-Befehlen und MCP-Server-Konfigurationen, um auf Dateien im Installationsverzeichnis des Plugins zu verweisen.

783 * Siehe die [Substitutionstabelle](/docs/de/plugins-reference#environment-variables) für welche Konfigurationsfelder sie pro Servertyp ersetzen

784 * Verwenden Sie für Abhängigkeiten oder Status, die Plugin-Updates überstehen sollten, stattdessen [`${CLAUDE_PLUGIN_DATA}`](/docs/de/plugins-reference#persistent-data-directory)

785* **`strict: false`**: Da dies auf false gesetzt ist, benötigt das Plugin keine eigene `plugin.json`. Der Marktplatz-Eintrag definiert alles. Siehe [Strict Mode](#strict-mode) unten.

786 

787Standardmäßig werden die Skills eines Plugins aus dem `skills/`-Verzeichnis unter seiner `source` geladen. Pfade, die im `skills`-Feld aufgelistet sind, werden zu diesem Scan hinzugefügt:

788 

789```json theme={null}

790"skills": ["./skills/", "./extra-skills/"]

791```

792 

793Wenn mehrere Plugin-Einträge einen `skills/`-Ordner im Marktplatz-Root gemeinsam nutzen (`source: "./"`), listen Sie stattdessen bestimmte Unterverzeichnisse auf, damit jeder Eintrag nur seine eigenen Skills lädt:

794 

795```json theme={null}

796"source": "./",

797"skills": ["./skills/code-review", "./skills/docs"]

798```

799 

800Mit einer Marktplatz-Root-Quelle ist die aufgelistete Pfadliste die vollständige Menge für diesen Eintrag, und andere Verzeichnisse im gemeinsamen `skills/`-Ordner werden nicht geladen. Das Auflisten des `skills/`-Verzeichnisses selbst oder des Plugin-Root behält den vollständigen Scan bei. Wenn keiner der aufgelisteten Pfade existiert, wird stattdessen der Standard-Scan ausgeführt.

801 

802<h3 id="strict-mode">

803 Strict Mode

804</h3>

805 

806Das `strict`-Feld steuert, ob `plugin.json` die Autorität für Komponentendefinitionen ist (skills, Agents, hooks, MCP-Server, Ausgabestile).

807 

808| Wert | Verhalten |

809| :---------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

810| `true` (Standard) | `plugin.json` ist die Autorität. Der Marktplatz-Eintrag kann es mit zusätzlichen Komponenten ergänzen, und beide Quellen werden zusammengeführt. |

811| `false` | Der Marktplatz-Eintrag ist die gesamte Definition. Wenn das Plugin auch eine `plugin.json` hat, die Komponenten deklariert, ist das ein Konflikt und das Plugin kann nicht geladen werden. |

812 

813**Wann jeder Modus verwendet werden sollte:**

814 

815* **`strict: true`**: Das Plugin hat seine eigene `plugin.json` und verwaltet seine eigenen Komponenten. Der Marktplatz-Eintrag kann zusätzliche Skills oder hooks hinzufügen. Dies ist der Standard und funktioniert für die meisten Plugins.

816* **`strict: false`**: Der Marktplatz-Betreiber möchte vollständige Kontrolle. Das Plugin-Repo stellt Rohdateien bereit, und der Marktplatz-Eintrag definiert, welche dieser Dateien als Skills, Agents, hooks usw. verfügbar gemacht werden. Nützlich, wenn der Marktplatz die Komponenten eines Plugins anders strukturiert oder kuratiert als vom Plugin-Autor beabsichtigt.

817 

818<h2 id="host-and-distribute-marketplaces">

819 Marktplätze hosten und verteilen

820</h2>

821 

822Wenn Benutzer einen in einem Git-Repository gehosteten Marktplatz hinzufügen oder ein Git-basiertes Plugin installieren, das dieser auflistet, klont Claude Code diesen Marktplatz oder das Plugin-Repository auf ihre Maschine. Der Klon lädt niemals [Git LFS](https://git-lfs.com)-Inhalte herunter, daher kommen LFS-verfolgte Dateien als Zeigerdateien an. Halten Sie die Dateien, die Ihre Plugins benötigen, aus LFS heraus.

823 

824<h3 id="host-on-github-recommended">

825 Auf GitHub hosten (empfohlen)

826</h3>

827 

828GitHub ist die empfohlene Methode zum Hosten und Verteilen eines Marktplatzes:

829 

8301. **Repository erstellen**: Richten Sie ein neues Repository für Ihren Marktplatz ein

8312. **Marktplatzdatei hinzufügen**: Erstellen Sie `.claude-plugin/marketplace.json` mit Ihren Plugin-Definitionen

8323. **Mit Teams teilen**: Benutzer fügen Ihren Marktplatz mit `/plugin marketplace add owner/repo` hinzu

833 

834**Vorteile**: Integrierte Versionskontrolle, Issue-Tracking und Team-Zusammenarbeitsfunktionen.

835 

836<h3 id="host-on-other-git-services">

837 Auf anderen Git-Services hosten

838</h3>

839 

840Jeder Git-Hosting-Service funktioniert, wie GitLab, Bitbucket und selbstgehostete Server. Benutzer fügen mit der vollständigen Repository-URL hinzu:

841 

842```shell theme={null}

843/plugin marketplace add https://gitlab.com/company/plugins.git

844```

845 

846<h3 id="private-repositories">

847 Private Repositories

848</h3>

849 

850Claude Code unterstützt die Installation von Plugins aus privaten Repositories. Wenn Sie Ihren Marktplatz stattdessen über [**Organisationseinstellungen > Plugins**](https://claude.ai/admin-settings/plugins) verteilen, sind Ihre Git-Anmeldedaten nicht beteiligt: Die Organisationssynchronisierung liest das Marktplatz-Repository über Ihre Organisation's GitHub- oder GitLab-Verbindung auf claude.ai. Siehe [Über Organisationseinstellungen verteilen](#distribute-through-organization-settings) für die Regeln, welche Plugin-Quellen privat sein können.

851 

852<h4 id="commands-you-run">

853 Befehle, die Sie ausführen

854</h4>

855 

856Wenn Sie `/plugin marketplace add`, `/plugin install`, `/plugin update` oder `/plugin marketplace update` ausführen, verwendet Claude Code Ihre vorhandenen Git-Credential-Helper, daher funktioniert HTTPS-Zugriff über `gh auth login`, macOS Keychain oder `git-credential-store` genauso wie in Ihrem Terminal. SSH-Zugriff funktioniert, solange der Host bereits in Ihrer `known_hosts`-Datei vorhanden ist und der Schlüssel in `ssh-agent` geladen ist, da Claude Code interaktive SSH-Eingabeaufforderungen für den Host-Fingerprint und die Schlüsselpassphrase unterdrückt. GitHub `owner/repo`-Kurzform-Quellen klonen standardmäßig über SSH; legen Sie [`CLAUDE_CODE_PLUGIN_PREFER_HTTPS=1`](/docs/de/env-vars#variables) fest, um sie stattdessen über HTTPS zu klonen.

857 

858<h4 id="background-auto-updates">

859 Hintergrund-Auto-Updates

860</h4>

861 

862Die Hintergrund-Aktualisierung überprüft das Remote-Repository des Marktplatzes auf neue Commits mit Ihren konfigurierten Git-Credential-Helpern, genauso wie die Befehle, die Sie ausführen. Für SSH-Remotes authentifiziert ein in `ssh-agent` geladener Schlüssel die Überprüfung. Claude Code führt die Überprüfung nicht-interaktiv aus: Es deaktiviert Git-Terminal-Eingabeaufforderungen und Askpass-Programme und teilt Credential-Helpern mit, nicht zu fragen. Ob die Überprüfung sich bei einem privaten Repository über HTTPS authentifizieren kann, hängt von Ihrem Helper ab:

863 

864* Ein Helper, der eine gespeicherte Anmeldedaten ohne Eingabeaufforderung bereitstellen kann, authentifiziert die Überprüfung. Git Credential Manager, der macOS Keychain-Helper und `git-credential-store` funktionieren auf diese Weise, sobald sie eine Anmeldedaten für den Host halten.

865* Ein Helper, der Sie auffordern muss, kann nicht im Hintergrund antworten. Das Update schlägt stillschweigend fehl und der vorhandene Checkout bleibt an Ort und Stelle, daher funktionieren Ihre Plugins aus dem letzten synchronisierten Zustand. Führen Sie `/plugin marketplace update <name>` aus, um den Marktplatz mit Ihren Anmeldedaten zu aktualisieren.

866 

867Wenn die Überprüfung den Checkout als aktuell feststellt, lässt Claude Code ihn unverändert. Wenn die Überprüfung neue Commits findet oder fehlschlägt, weil sie das Remote nicht erreichen oder sich nicht authentifizieren kann, klont Claude Code den Marktplatz erneut und tauscht den neuen Klon aus. Wenn dieser Klon fehlschlägt, bleibt der vorhandene Checkout an Ort und Stelle. Das erneute Klonen kann bei großen Repositories [zeitlich überschritten werden](#git-operations-time-out).

868 

869Zwei Einstellungen machen private Marktplätze vorhersehbar:

870 

871* Legen Sie `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE=1` fest, um den vorhandenen Checkout beizubehalten, ohne das erneute Klonen zu versuchen, wenn die Hintergrund-Überprüfung das Remote nicht erreichen oder sich nicht authentifizieren kann. Ihre Plugins funktionieren weiterhin aus dem letzten synchronisierten Zustand, und manuelle Updates mit `/plugin marketplace update` authentifizieren sich immer noch mit Ihren Anmeldedaten.

872* Konfigurieren Sie einen Git-Credential-Helper, beispielsweise mit `gh auth setup-git` für GitHub, damit die Hintergrund-Überprüfung und das erneute Klonen sich ohne Eingabeaufforderung authentifizieren können.

873 

874Das Festlegen eines Provider-Tokens wie `GITHUB_TOKEN` in Ihrer Umgebung ermöglicht nicht von selbst die Hintergrund-Authentifizierung. Tokens wirken sich nur durch einen konfigurierten Credential-Helper aus, beispielsweise den Helper der `gh` CLI, der `GH_TOKEN` und `GITHUB_TOKEN` liest.

875 

876<Note>

877 In CI/CD-Umgebungen konfigurieren Sie einen Git-Credential-Helper, bevor Sie Plugins aus privaten Repositories installieren. Auf GitHub Actions exportieren Sie ein Token mit Lesezugriff auf das Marktplatz-Repository als `GH_TOKEN`, führen Sie dann `gh auth setup-git` aus. Das Standard-Workflow-Token kann nur auf das eigene Repository des Workflows zugreifen, daher benötigt ein privater Marktplatz in einem anderen Repository ein persönliches Zugriffs-Token oder App-Token.

878</Note>

879 

880<h3 id="distribute-through-organization-settings">

881 Über Organisationseinstellungen verteilen

882</h3>

883 

884Wenn Sie Plugins über [**Organisationseinstellungen > Plugins**](https://claude.ai/admin-settings/plugins) in einem Team- oder Enterprise-Plan verteilen, gelten diese Quellregeln:

885 

886* Auf github.com und gitlab.com muss das Marktplatz-Repository privat oder intern sein. Die Organisationssynchronisierung liest das Repository über die Verbindung, die seinem Host entspricht:

887 * **github.com**: die Claude GitHub App

888 * **Ihr GitHub Enterprise Server-Host**: Ihre Organisation's [GitHub Enterprise App](/docs/de/github-enterprise-server#admin-setup)

889 * **gitlab.com oder Ihre selbstverwaltete GitLab-Instanz**: das Zugriffs-Token in Ihrer Organisation's [GitLab-Konfiguration](#sync-a-gitlab-hosted-marketplace) für diesen Host

890* Jede Plugin-Quelle muss vom Typ `github`, `url` oder `git-subdir` sein, oder ein [relativer Pfad](#relative-paths), der mit `./` beginnt. Wenn Sie ein Plugin unter `metadata.pluginRoot` nach bloßem Namen auflisten, lehnt die Organisationssynchronisierung es als nicht unterstützte Quelle ab, daher schreiben Sie den Pfad aus, wie `./plugins/deploy-tools`.

891* Eine Plugin-Quelle kann in drei Fällen privat sein:

892 * Eine github.com-Quelle, die den Besitzer des Marktplatz-Repositories teilt

893 * Eine Quelle auf Ihrem GitHub Enterprise-Host der Organisation mit der GHE App, die auf dem Repository installiert ist

894 * Eine `url`- oder `git-subdir`-Quelle auf dem gleichen GitLab-Host wie das Marktplatz-Repository. Auf gitlab.com muss die Quelle auch unter der gleichen Top-Level-Gruppe oder dem gleichen Benutzer-Namespace wie das Marktplatz-Repository sein

895* Jede andere Plugin-Quelle muss ein öffentliches Repository auf github.com, gitlab.com oder bitbucket.org sein, das die Organisationssynchronisierung ohne Anmeldedaten abruft. Die Organisationssynchronisierung lehnt Plugin-Quellen auf Hosts ab, die diese Regeln nicht abdecken.

896 

897Siehe [Plugins für Ihre Organisation verwalten](https://support.claude.com/en/articles/13837433) für den Admin-Workflow.

898 

899Um private Plugins einzuschließen, platzieren Sie die Plugin-Ordner im Marktplatz-Repository und verweisen Sie auf sie mit einem [relativen Pfad](#relative-paths). Die Organisationssynchronisierung verpackt jedes Plugin während der Verteilung, daher benötigen Benutzer niemals Zugriff auf ein separates Quell-Repository.

900 

901Beispielsweise verweist dieser `marketplace.json`-Plugin-Eintrag auf ein Plugin, das Sie unter `plugins/deploy-tools` im Marktplatz-Repository committed haben:

902 

903```json theme={null}

904{

905 "name": "deploy-tools",

906 "source": "./plugins/deploy-tools"

907}

908```

909 

910<h4 id="sync-a-gitlab-hosted-marketplace">

911 Synchronisieren Sie einen GitLab-gehosteten Marktplatz

912</h4>

913 

914Um einen Marktplatz von gitlab.com oder einer selbstverwalteten GitLab-Instanz zu synchronisieren, fügt ein [Besitzer](/docs/de/server-managed-settings#access-control) zunächst eine GitLab-Konfiguration für diesen Host unter [**Organisationseinstellungen > Claude Code**](https://claude.ai/admin-settings/claude-code) hinzu. GitLab-Konfigurationen befinden sich in öffentlicher Beta und gelten nur für die Plugin-Marktplatz-Synchronisierung. Das Hinzufügen einer Konfiguration macht GitLab-Repositories nicht in [Claude Code im Web](/docs/de/claude-code-on-the-web#limitations) verfügbar. Siehe [Plugins für Ihre Organisation verwalten](https://support.claude.com/en/articles/13837433) für die Einrichtungsschritte.

915 

916Wenn Sie den Marktplatz hinzufügen, geben Sie die HTTPS-URL des Projekts ein, wie `https://gitlab.example.com/platform/claude-plugins`. Projekte in verschachtelten Untergruppen funktionieren. Die Organisationssynchronisierung liest den Standard-Branch des Projekts. Wenn Sie **Automatisch synchronisieren** aktivieren, starten nur Pushes zum Standard-Branch eine Synchronisierung.

917 

918<h4 id="keep-executables-out-of-the-top-level-bin-directory">

919 Halten Sie ausführbare Dateien aus dem Top-Level-bin-Verzeichnis heraus

920</h4>

921 

922Schließen Sie kein Top-Level-`bin/`-Verzeichnis in Plugins ein, die Sie über Organisationseinstellungen verteilen. claude.ai lehnt ein Plugin ab, das eines hat, unabhängig davon, ob das Plugin durch Marktplatz-Synchronisierung oder direktes Hochladen ankommt:

923 

924* **Marktplatz-Synchronisierung**: Die Organisationssynchronisierung lehnt dieses Plugin ab und synchronisiert den Rest des Marktplatzes. Die Fehlermeldung beginnt mit `Plugin contains a top-level bin/ directory`.

925* **Direktes Hochladen**: Wenn Sie das Plugin stattdessen in [**Organisationseinstellungen > Plugins**](https://claude.ai/admin-settings/plugins) hochladen, lehnt claude.ai das Hochladen mit der gleichen Meldung ab.

926 

927Halten Sie ausführbare Dateien in einem anderen Verzeichnis, wie `scripts/`, und verweisen Sie auf sie als `${CLAUDE_PLUGIN_ROOT}/scripts/<name>` aus Ihren [Skills, Hooks oder MCP-Server-Konfigurationen](/docs/de/plugins-reference#environment-variables).

928 

929<h3 id="require-marketplaces-for-your-team">

930 Marktplätze für Ihr Team erforderlich machen

931</h3>

932 

933Sie können Ihr Repository so konfigurieren, dass Claude Code Ihren Marktplatz für Teammitglieder hinzufügt, sobald sie [dem Projektordner vertrauen](/docs/de/permissions#what-runs-before-you-trust-a-folder), ohne separate Eingabeaufforderung. Fügen Sie Ihren Marktplatz zu `.claude/settings.json` hinzu:

934 

935```json theme={null}

936{

937 "extraKnownMarketplaces": {

938 "company-tools": {

939 "source": {

940 "source": "github",

941 "repo": "your-org/claude-plugins"

942 }

943 }

944 }

945}

946```

947 

948Sie können auch angeben, welche Plugins standardmäßig aktiviert sein sollen:

949 

950```json theme={null}

951{

952 "enabledPlugins": {

953 "code-formatter@company-tools": true,

954 "deployment-tools@company-tools": true

955 }

956}

957```

958 

959Für vollständige Konfigurationsoptionen siehe [Plugin-Einstellungen](/docs/de/settings-reference#plugin-settings).

960 

961<Note>

962 Wenn Sie eine lokale `directory`- oder `file`-Quelle mit einem relativen Pfad verwenden, wird der Pfad gegen den Haupt-Checkout Ihres Repositories aufgelöst. Wenn Sie Claude Code aus einem Git Worktree ausführen, verweist der Pfad immer noch auf den Haupt-Checkout, sodass alle Worktrees denselben Marktplatz-Speicherort teilen. Der Marktplatz-Status wird einmal pro Benutzer in `~/.claude/plugins/known_marketplaces.json` gespeichert, nicht pro Projekt.

963</Note>

964 

965<h3 id="pre-populate-plugins-for-containers">

966 Plugins für Container vorab ausfüllen

967</h3>

968 

969Für Container-Images und CI-Umgebungen können Sie ein Plugins-Verzeichnis zur Build-Zeit vorab ausfüllen, damit Claude Code mit bereits verfügbaren Marktplätzen und Plugins startet, ohne zur Laufzeit etwas zu klonen. Legen Sie die Umgebungsvariable `CLAUDE_CODE_PLUGIN_SEED_DIR` fest, um auf dieses Verzeichnis zu verweisen.

970 

971Um mehrere Seed-Verzeichnisse zu schichten, trennen Sie Pfade mit `:` auf Unix oder `;` auf Windows. Claude Code durchsucht jedes Verzeichnis in der Reihenfolge und verwendet den ersten Seed, der einen bestimmten Marktplatz oder Plugin-Cache enthält.

972 

973Das Seed-Verzeichnis spiegelt die Struktur von `~/.claude/plugins`:

974 

975```

976$CLAUDE_CODE_PLUGIN_SEED_DIR/

977 known_marketplaces.json

978 marketplaces/<name>/...

979 cache/<marketplace>/<plugin>/<version>/...

980```

981 

982Um ein Seed-Verzeichnis zu erstellen, führen Sie Claude Code einmal während des Image-Builds aus, installieren Sie die benötigten Plugins, kopieren Sie dann das resultierende `~/.claude/plugins`-Verzeichnis in Ihr Image und verweisen Sie `CLAUDE_CODE_PLUGIN_SEED_DIR` darauf.

983 

984Um den Kopierungsschritt zu überspringen, legen Sie `CLAUDE_CODE_PLUGIN_CACHE_DIR` während des Builds auf Ihren Ziel-Seed-Pfad fest, damit Plugins direkt dort installiert werden:

985 

986```bash theme={null}

987CLAUDE_CODE_PLUGIN_CACHE_DIR=/opt/claude-seed claude plugin marketplace add your-org/plugins

988CLAUDE_CODE_PLUGIN_CACHE_DIR=/opt/claude-seed claude plugin install my-tool@your-plugins

989```

990 

991Legen Sie dann `CLAUDE_CODE_PLUGIN_SEED_DIR=/opt/claude-seed` in der Laufzeitumgebung Ihres Containers fest, damit Claude Code beim Start aus dem Seed liest.

992 

993Beim Start registriert Claude Code Marktplätze, die in der Seed-Datei `known_marketplaces.json` gefunden werden, in der primären Konfiguration und verwendet Plugin-Caches, die unter `cache/` gefunden werden, ohne erneut zu klonen. Dies funktioniert sowohl im interaktiven Modus als auch im nicht-interaktiven Modus mit dem `-p`-Flag.

994 

995Verhaltensdetails:

996 

997* **Schreibgeschützt**: Claude Code schreibt niemals in das Seed-Verzeichnis.

998* **Auto-Updates deaktiviert**: Seed-Marktplätze werden nicht automatisch aktualisiert.

999* **Seed-Einträge haben Vorrang**: Marktplätze, die in der Seed deklariert sind, überschreiben alle übereinstimmenden Einträge in der Benutzerkonfiguration bei jedem Start. Um sich von einem Seed-Plugin abzumelden, verwenden Sie `/plugin disable`, anstatt den Marktplatz zu entfernen.

1000* **Pfadauflösung**: Claude Code lokalisiert Marktplatz-Inhalte, indem es `$CLAUDE_CODE_PLUGIN_SEED_DIR/marketplaces/<name>/` zur Laufzeit durchsucht, nicht indem es Pfaden vertraut, die in der Seed-JSON gespeichert sind. Dies bedeutet, dass die Seed korrekt funktioniert, auch wenn sie an einem anderen Pfad als dort, wo sie erstellt wurde, bereitgestellt wird.

1001* **Mutation ist blockiert**: Das Ausführen von `/plugin marketplace remove` oder `/plugin marketplace update` gegen einen Seed-verwalteten Marktplatz schlägt mit Anleitung fehl, um Ihren Administrator zu bitten, das Seed-Image zu aktualisieren.

1002* **Komponiert mit Einstellungen**: Wenn `extraKnownMarketplaces` oder `enabledPlugins` einen Marktplatz deklarieren, der bereits in der Seed vorhanden ist, verwendet Claude Code die Seed-Kopie, anstatt zu klonen.

1003 

1004<h3 id="managed-marketplace-restrictions">

1005 Verwaltete Marktplatz-Einschränkungen

1006</h3>

1007 

1008Für Organisationen, die strikte Kontrolle über Plugin-Quellen benötigen, können Administratoren einschränken, welche Plugin-Marktplätze Benutzer hinzufügen dürfen, indem sie die Einstellung [`strictKnownMarketplaces`](/docs/de/settings-reference#strictknownmarketplaces) in verwalteten Einstellungen verwenden. Um auch die CLI-Flags abzulehnen, die Plugins, Agenten und MCP-Server für einen einzelnen Durchlauf seitenladen, kombinieren Sie es mit [`disableSideloadFlags`](/docs/de/settings-reference#disablesideloadflags). Um eine Zulassungsliste zu erstellen, welche Plugins von Marktplätzen als kontextuelle Installationsvorschläge angezeigt werden können, legen Sie [`pluginSuggestionMarketplaces`](/docs/de/settings-reference#pluginsuggestionmarketplaces) fest.

1009 

1010`strictKnownMarketplaces` stimmt mit dem Marktplatz überein, aus dem ein Plugin stammt, nicht mit den Einträgen darin, daher können Benutzer immer noch ein Plugin mit einer [`command`-Quelle](#command-sources) aus einem zulässigen Marktplatz installieren. Um Command-Quellen auch zu blockieren, legen Sie [`disableCommandPluginSources`](/docs/de/settings-reference#disablecommandpluginsources) fest.

1011 

1012Wenn `strictKnownMarketplaces` in verwalteten Einstellungen konfiguriert ist, hängt das Einschränkungsverhalten vom Wert ab:

1013 

1014| Wert | Verhalten |

1015| -------------------------- | ----------------------------------------------------------------------------------------------------------------- |

1016| Nicht definiert (Standard) | Keine Einschränkungen. Benutzer können jeden Marktplatz hinzufügen |

1017| Leeres Array `[]` | Vollständige Sperrung. Blockiert jeden Marktplatz-Quelltyp, einschließlich des offiziellen Anthropic-Marktplatzes |

1018| Liste von Quellen | Zulassungsliste erzwungen. Benutzer können nur Marktplätze hinzufügen, die einem Eintrag entsprechen |

1019 

1020<h4 id="common-configurations">

1021 Häufige Konfigurationen

1022</h4>

1023 

1024Deaktivieren Sie alle Marktplatz-Ergänzungen, einschließlich des offiziellen Anthropic-Marktplatzes:

1025 

1026```json theme={null}

1027{

1028 "strictKnownMarketplaces": []

1029}

1030```

1031 

1032Claude Code lädt die Plugins [von claude.ai synchronisiert](/docs/de/plugins-reference#synced-plugins) von Ihrem Konto statt von einem Marktplatz herunter, daher deckt diese Sperrung sie nicht ab. Um diese auch zu stoppen, legen Sie [`syncClaudeAiPlugins`](/docs/de/settings-reference#syncclaudeaiplugins) in verwalteten Einstellungen auf `false` fest, oder deaktivieren Sie Skills für Ihre Organisation auf claude.ai.

1033 

1034Nur den offiziellen Anthropic-Marktplatz zulassen. Der Abgleich für einen einzelnen Repository-Eintrag ist exakt, daher deckt dieser Eintrag keine `ref`- oder `path`-Varianten desselben Repositories ab:

1035 

1036```json theme={null}

1037{

1038 "strictKnownMarketplaces": [

1039 {

1040 "source": "github",

1041 "repo": "anthropics/claude-plugins-official"

1042 }

1043 ]

1044}

1045```

1046 

1047Mit diesem Eintrag behält Claude Code einen bereits registrierten offiziellen Marktplatz verfügbar und registriert den Marktplatz auf einer neuen Maschine automatisch beim ersten Mal, wenn Sie Claude Code interaktiv starten.

1048 

1049Die automatische Registrierung deckt nicht jede Maschine ab. Sie fehlt am häufigsten:

1050 

1051* Nicht-interaktive Umgebungen, die vor dem ersten interaktiven Start der Maschine ausgeführt werden.

1052* Maschinen, auf denen Claude Code bereits interaktiv unter einer Richtlinie ausgeführt wurde, die den Marktplatz blockierte, wie die Sperrung mit leerem Array. Claude Code zeichnet den blockierten Versuch auf und versucht nicht erneut, nachdem die Richtlinie geändert wird.

1053 

1054Auf diesen Maschinen fügen Sie den Marktplatz zu [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces) in derselben `managed-settings.json` hinzu, damit Claude Code ihn automatisch registriert, oder führen Sie `claude plugin marketplace add anthropics/claude-plugins-official` aus.

1055 

1056Nur bestimmte Marktplätze zulassen:

1057 

1058```json theme={null}

1059{

1060 "strictKnownMarketplaces": [

1061 {

1062 "source": "github",

1063 "repo": "acme-corp/approved-plugins"

1064 },

1065 {

1066 "source": "github",

1067 "repo": "acme-corp/security-tools",

1068 "ref": "v2.0"

1069 },

1070 {

1071 "source": "url",

1072 "url": "https://plugins.example.com/marketplace.json"

1073 }

1074 ]

1075}

1076```

1077 

1078Alle Marktplatz-Repositories unter einer GitHub-Organisation mit einem [Owner-Wildcard](/docs/de/settings-reference#owner-wildcards)-Eintrag zulassen. Owner-Wildcards erfordern Claude Code v2.1.223 oder später.

1079 

1080```json theme={null}

1081{

1082 "strictKnownMarketplaces": [

1083 {

1084 "source": "github",

1085 "repo": "acme-corp/*"

1086 }

1087 ]

1088}

1089```

1090 

1091Alle Marktplätze von einem internen Git-Server mit Regex-Musterabgleich auf dem Host zulassen. Dies ist der empfohlene Ansatz für [GitHub Enterprise Server](/docs/de/github-enterprise-server#plugin-marketplaces-on-ghes) oder selbstgehostete GitLab-Instanzen:

1092 

1093```json theme={null}

1094{

1095 "strictKnownMarketplaces": [

1096 {

1097 "source": "hostPattern",

1098 "hostPattern": "^github\\.example\\.com$"

1099 }

1100 ]

1101}

1102```

1103 

1104Dateisystem-basierte Marktplätze aus einem bestimmten Verzeichnis mit Regex-Musterabgleich auf dem Pfad zulassen:

1105 

1106```json theme={null}

1107{

1108 "strictKnownMarketplaces": [

1109 {

1110 "source": "pathPattern",

1111 "pathPattern": "^/opt/approved/"

1112 }

1113 ]

1114}

1115```

1116 

1117Verwenden Sie `".*"` als `pathPattern`, um jeden Dateisystempfad zuzulassen und gleichzeitig Netzwerkquellen mit `hostPattern` zu steuern.

1118 

1119<Note>

1120 `strictKnownMarketplaces` schränkt ein, was Benutzer hinzufügen können, registriert aber nicht selbst Marktplätze. Um zulässige Marktplätze für Benutzer automatisch zu registrieren, fügen Sie sie zu [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces) in derselben `managed-settings.json` hinzu.

1121 

1122 Der offizielle Anthropic-Marktplatz ist der einzige, den Claude Code von selbst registriert, und nur wenn die Zulassungsliste ihn zulässt. Die automatische Registrierung fehlt auch auf einigen Maschinen, wie nicht-interaktiven Umgebungen und Maschinen, auf denen eine frühere Richtlinie ihn blockierte. Um diese Maschinen abzudecken, fügen Sie den offiziellen Marktplatz auch zu `extraKnownMarketplaces` hinzu. Für die beiden Einstellungen nebeneinander siehe die [`strictKnownMarketplaces`-Referenz](/docs/de/settings-reference#strictknownmarketplaces).

1123</Note>

1124 

1125<h4 id="how-restrictions-work">

1126 Wie Einschränkungen funktionieren

1127</h4>

1128 

1129Einschränkungen werden überprüft, bevor Netzwerk- oder Dateisystemoperationen durchgeführt werden. Die Überprüfung wird beim Hinzufügen von Marktplätzen und beim Installieren, Aktualisieren, Aktualisieren und Auto-Update von Plugins durchgeführt. Wenn ein Marktplatz hinzugefügt wurde, bevor die Richtlinie konfiguriert wurde, und seine Quelle nicht mehr mit der Zulassungsliste übereinstimmt, weigert sich Claude Code, Plugins daraus zu installieren oder zu aktualisieren. Die gleiche Durchsetzung gilt für `blockedMarketplaces`.

1130 

1131Wo die beiden Listen durchgesetzt werden, hängt davon ab, wo Sie sie festlegen:

1132 

1133* **Die claude.ai Admin-Konsole**: Claude Code erzwingt beide Listen in den Sitzungen, die [Server-verwaltete Einstellungen lesen](/docs/de/managed-settings#where-and-when-a-policy-applies). claude.ai überprüft sie auch, wenn jemand in Ihrer Organisation einen neuen Marktplatz aus einem Git-Repository auf claude.ai hinzufügt, oder aus **Anpassen** in der Claude Desktop-App außerhalb ihrer Code-Registerkarte. Das deckt einen Marktplatz ab, den ein Mitglied für sein eigenes Konto hinzufügt, und einen, der für die ganze Organisation unter [**Organisationseinstellungen > Plugins**](https://claude.ai/admin-settings/plugins) hinzugefügt wird. claude.ai lehnt ein Repository ab, das die Zulassungsliste nicht zulässt oder das die Blockliste benennt. Es überprüft nicht erneut einen Marktplatz, der an beiden Orten hinzugefügt wurde, bevor Sie die Listen festlegten, und es überprüft nicht hochgeladene Plugins.

1134* **Eine verwaltete Einstellungsdatei, OS-Richtlinie oder andere verwaltete Quelle**: Claude Code erzwingt beide Listen, wo es diese Quelle liest. claude.ai liest sie nicht.

1135 

1136Um jeden Marktplatz-Repository unter einem GitHub-Besitzer zu blockieren, verwenden Sie die Owner-Wildcard-Form in einem `blockedMarketplaces`-Eintrag: `{ "source": "github", "repo": "untrusted-org/*" }`. Erfordert Claude Code v2.1.223 oder später. Für die Abgleichregeln, die zwischen der Blockliste und der Zulassungsliste unterscheiden, siehe [Owner-Wildcards](/docs/de/settings-reference#owner-wildcards).

1137 

1138Wenn ein Benutzer eine `https://`-Repository-URL hinzufügt, die Claude Code [klont statt abruft](/docs/de/discover-plugins#add-from-other-git-hosts), wie eine bloße `github.com`- oder `gitlab.com`-Repository-URL, überprüft Claude Code sie auch gegen die `url`-Einträge in `blockedMarketplaces`. Claude Code blockiert die Ergänzung, wenn ein Eintrag die gleiche URL benennt. Bei diesem Vergleich ignoriert Claude Code das `.git`-Suffix und jeden Ref, den der Benutzer nach `#` anhängt. Erfordert Claude Code v2.1.232 oder später. Vor v2.1.232 stimmte Claude Code einen `url`-Eintrag nur gegen eine URL ab, die es als gehostete `marketplace.json`-Datei abrief.

1139 

1140Die Zulassungsliste verwendet exakten Abgleich für die meisten Quellentypen, abgesehen von Owner-Wildcard-`github`-Einträgen. Damit ein Marktplatz zulässig ist, müssen alle angegebenen Felder übereinstimmen:

1141 

1142* Für GitHub-Quellen: `repo` ist erforderlich, entweder benannt ein Repository oder verwendet die Owner-Wildcard-Form `owner/*`, um jedes Repository unter diesem Besitzer abzudecken. Für die Abgleichregeln von Wildcard-Einträgen, einschließlich der Fallregeln, siehe [Owner-Wildcards](/docs/de/settings-reference#owner-wildcards). Für einzelne Repository-Einträge muss `ref` genau übereinstimmen oder in beiden dem Marktplatz-Quelltyp und dem Zulassungslisten-Eintrag fehlen, und die gleiche Regel gilt für `path`

1143* Für URL-Quellen: Die vollständige URL muss genau übereinstimmen

1144* Für `hostPattern`-Quellen: Der Marktplatz-Host wird gegen das Regex-Muster abgeglichen

1145* Für `pathPattern`-Quellen: Der Dateisystempfad des Marktplatzes wird gegen das Regex-Muster abgeglichen

1146 

1147Der exakte Abgleich der Zulassungsliste behandelt URLs, die sich nur durch einen nachgestellten Schrägstrich, ein `.git`-Suffix oder das `ssh://`- und `https://`-Schema unterscheiden, als unterschiedliche Werte. Wenn Ihr Organisations-Marktplatz durch mehr als eine URL-Form geklont werden kann, bevorzugen Sie einen `hostPattern`-Eintrag gegenüber einer literalen URL, damit die `https://`-, `ssh://`- und `user@host:path`-Formen alle übereinstimmen.

1148 

1149Ein [auf claude.ai gehosteter Marktplatz](/docs/de/discover-plugins#add-from-claude-ai) wird nach Host abgeglichen: Ein `hostPattern`-Eintrag, der `claude.ai` abgleicht, regelt ihn in `strictKnownMarketplaces` und in `blockedMarketplaces`. Auf der Zulassungsliste lässt ein solcher Eintrag nicht die persönlichen claude.ai-Uploads eines Mitglieds zu. Erfordert Claude Code v2.1.273 oder später.

1150 

1151Da `strictKnownMarketplaces` in [verwalteten Einstellungen](/docs/de/managed-settings) festgelegt ist, können einzelne Benutzer und Projektkonfigurationen diese Einschränkungen nicht überschreiben.

1152 

1153Für vollständige Konfigurationsdetails einschließlich aller unterstützten Quellentypen und Vergleich mit `extraKnownMarketplaces` siehe die [strictKnownMarketplaces-Referenz](/docs/de/settings-reference#strictknownmarketplaces).

1154 

1155<h3 id="version-resolution-and-release-channels">

1156 Versionsauflösung und Release-Kanäle

1157</h3>

1158 

1159Plugin-Versionen bestimmen Cache-Pfade und Update-Erkennung: Wenn die aufgelöste Version mit dem übereinstimmt, was ein Benutzer bereits hat, überspringen `/plugin update` und Auto-Update das Plugin. Für Git-basierte Quellen, wenn Sie `version` weglassen, verwendet Claude Code den aufgelösten Commit-SHA der Quelle, daher erhalten Benutzer ein Update, wenn sich dieser Commit ändert; dies ist die einfachste Einrichtung für interne oder aktiv entwickelte Plugins. Siehe [Versionsverwaltung](/docs/de/plugins-reference#version-management) für die vollständige Auflösungsreihenfolge, einschließlich `archive`-Quellen.

1160 

1161<Warning>

1162 Das Festlegen von `version` heftet das Plugin für jeden Quellentyp außer [`command`](#command-sources) an, dessen Version immer einen Hash dessen enthält, was der Befehl produziert hat. Ein Plugin [geladen an Ort und Stelle](/docs/de/plugins-reference#plugin-caching-and-file-resolution) aus einem Marktplatz, der als lokales Verzeichnis hinzugefügt wurde, ist auch nicht angeheftet. Wenn Sie `"version": "1.0.0"` in `plugin.json` deklarieren und neue Commits pushen, ohne diese Zeichenkette zu ändern, behalten bestehende Benutzer dieser Quellen die zwischengespeicherte Kopie, da Claude Code die gleiche Version sieht. Erhöhen Sie das Feld bei jeder Veröffentlichung, oder lassen Sie es weg, um auf die aufgelöste Version zurückzugreifen.

1163 

1164 Vermeiden Sie das Festlegen von `version` sowohl in `plugin.json` als auch im Marktplatz-Eintrag. Claude Code verwendet immer den `plugin.json`-Wert ohne Warnung, daher kann eine veraltete Manifest-Version eine Version maskieren, die Sie in `marketplace.json` festgelegt haben.

1165</Warning>

1166 

1167<h4 id="set-up-release-channels">

1168 Richten Sie Release-Kanäle ein

1169</h4>

1170 

1171Um "stabile" und "neueste" Release-Kanäle für Ihre Plugins zu unterstützen, können Sie zwei Marktplätze einrichten, die auf verschiedene Refs oder SHAs desselben Repos verweisen. Sie können dann jeder Benutzergruppe ihren eigenen Marktplatz durch verwaltete Einstellungen auf eine von zwei Arten geben:

1172 

1173* Stellen Sie separate [Endpoint-verwaltete Einstellungen](/docs/de/managed-settings#delivery-mechanisms), wie eine verwaltete Einstellungsdatei oder ein MDM-Profil, für die Geräte jeder Gruppe bereit. [Wie Claude Code verwaltete Quellen kombiniert](/docs/de/managed-settings#precedence-within-the-managed-tier) sagt, ob die Pro-Gruppe-Datei oder das Profil auf einem Gerät gilt, das auch eine organisationsweite Quelle hat.

1174* Definieren Sie eine [Claude Apps Gateway-Richtlinie](/docs/de/claude-apps-gateway-config#managed) pro Gruppe. Das Gateway wendet die erste Richtlinie an, deren Abgleichsregel zu einem Benutzer passt, daher ordnen Sie die Richtlinien so, dass jeder Benutzer die Richtlinie seiner Gruppe erreicht. Eine Gruppen-Richtlinie `extraKnownMarketplaces` ersetzt die Catch-All-Richtlinie-Zuordnung, anstatt sie zu zusammenzuführen, daher listen Sie jeden Marktplatz auf, den die Gruppe in der Gruppen-Richtlinie benötigt, nicht nur ihren Kanal-Marktplatz.

1175 

1176Server-verwaltete Einstellungen aus der Admin-Konsole [gelten für jeden Benutzer in Ihrer Organisation](/docs/de/server-managed-settings#current-limitations), daher können sie keine Pro-Gruppe-Zuweisung tragen.

1177 

1178<Warning>

1179 Jeder Kanal muss sich zu einer anderen Version auflösen. Wenn Sie explizite Versionen verwenden, muss `plugin.json` eine andere `version` bei jedem angehefteten Ref deklarieren. Wenn Sie `version` weglassen, unterscheiden die unterschiedlichen Commit-SHAs bereits die Kanäle. Wenn zwei Refs sich zu der gleichen Versionskette auflösen, behandelt Claude Code sie als identisch und überspringt das Update.

1180</Warning>

1181 

1182<h5 id="example">

1183 Beispiel

1184</h5>

1185 

1186```json theme={null}

1187{

1188 "name": "stable-tools",

1189 "plugins": [

1190 {

1191 "name": "code-formatter",

1192 "source": {

1193 "source": "github",

1194 "repo": "acme-corp/code-formatter",

1195 "ref": "stable"

1196 }

1197 }

1198 ]

1199}

1200```

1201 

1202```json theme={null}

1203{

1204 "name": "latest-tools",

1205 "plugins": [

1206 {

1207 "name": "code-formatter",

1208 "source": {

1209 "source": "github",

1210 "repo": "acme-corp/code-formatter",

1211 "ref": "latest"

1212 }

1213 }

1214 ]

1215}

1216```

1217 

1218<h5 id="assign-channels-to-user-groups">

1219 Kanäle Benutzergruppen zuweisen

1220</h5>

1221 

1222Weisen Sie jeden Marktplatz seiner Benutzergruppe durch die unter [Release-Kanäle einrichten](#set-up-release-channels) beschriebenen Pro-Gruppe-Endpoint-verwalteten Einstellungen oder Gateway-Richtlinie zu. Beispielsweise erhält die stabile Gruppe:

1223 

1224```json theme={null}

1225{

1226 "extraKnownMarketplaces": {

1227 "stable-tools": {

1228 "source": {

1229 "source": "github",

1230 "repo": "acme-corp/stable-tools"

1231 }

1232 }

1233 }

1234}

1235```

1236 

1237Die Early-Access-Gruppe erhält stattdessen `latest-tools`:

1238 

1239```json theme={null}

1240{

1241 "extraKnownMarketplaces": {

1242 "latest-tools": {

1243 "source": {

1244 "source": "github",

1245 "repo": "acme-corp/latest-tools"

1246 }

1247 }

1248 }

1249}

1250```

1251 

1252<h4 id="pin-dependency-versions">

1253 Abhängigkeitsversionen anheften

1254</h4>

1255 

1256Ein Plugin kann seine Abhängigkeiten auf einen Semver-Bereich beschränken, damit Updates einer Abhängigkeit das abhängige Plugin nicht unterbrechen. Siehe [Plugin-Abhängigkeitsversionen einschränken](/docs/de/plugin-dependencies) für die `{plugin-name}--v{version}` Git-Tag-Konvention, Bereichssyntax und wie mehrere Einschränkungen auf die gleiche Abhängigkeit kombiniert werden.

1257 

1258<h3 id="rename-or-remove-a-plugin">

1259 Ein Plugin umbenennen oder entfernen

1260</h3>

1261 

1262Der `name` eines Plugins ist sein stabiler Bezeichner. Benutzer verweisen darauf in `enabledPlugins`, `pluginConfigs` und `/plugin install`-Befehlen, daher bricht das Ändern davon jede vorhandene Installation. Um das in der Benutzeroberfläche angezeigte Label zu ändern, ohne Installationen zu unterbrechen, legen Sie [`displayName`](#optional-plugin-fields) fest und behalten Sie `name` unverändert.

1263 

1264Wenn Sie den `name` eines Plugins ändern müssen oder ein Plugin aus dem `plugins`-Array entfernen, fügen Sie einen Top-Level-`renames`-Eintrag hinzu, damit bestehende Benutzer migrieren, anstatt einen `plugin-not-found`-Fehler zu sehen. Die automatische Migration erfordert Claude Code v2.1.193 oder später. Ordnen Sie jeden früheren Namen seinem aktuellen Namen zu, oder zu `null`, wenn das Plugin nicht mehr existiert. Das folgende Beispiel benennt `formatter` in `code-formatter` um und verzeichnet, dass `legacy-linter` entfernt wurde:

1265 

1266```json theme={null}

1267{

1268 "name": "acme-tools",

1269 "owner": { "name": "Acme" },

1270 "plugins": [

1271 { "name": "code-formatter", "source": "./plugins/code-formatter" }

1272 ],

1273 "renames": {

1274 "formatter": "code-formatter",

1275 "legacy-linter": null

1276 }

1277}

1278```

1279 

1280Wenn ein Benutzer Claude Code mit dem alten Namen noch in seinen Einstellungen startet, folgt Claude Code der `renames`-Zuordnung:

1281 

1282* Wenn der Eintrag auf einen neuen Namen verweist, lädt Claude Code das Plugin unter seinem neuen Namen und zeigt eine einzeilige Mitteilung wie `Renamed to "code-formatter" in the "acme-tools" marketplace` an. Es schreibt dann den alten Schlüssel in den neuen Schlüssel in den Benutzer-, Projekt- und lokalen Einstellungsbereichen für sowohl `enabledPlugins` als auch `pluginConfigs` um, sodass die Mitteilung einmal angezeigt wird.

1283* Für einen `null`-Eintrag löscht Claude Code den alten Schlüssel und die Mitteilung meldet, dass das Plugin aus dem Marktplatz entfernt wurde.

1284* Wenn das umbenannte Plugin eine Remote-Quelle wie `github` oder `npm` verwendet, meldet Claude Code `plugin-cache-miss` nach der Umbenennung und der Benutzer muss `/plugin install` einmal ausführen, um es unter dem neuen Namen zu holen.

1285 

1286Behandeln Sie `renames` als Nur-Anhängen-Verlauf: Behalten Sie alte Einträge an Ort und Stelle, auch nachdem Sie erwarten, dass jeder Benutzer migriert hat. Claude Code folgt Ketten, daher wenn Sie später `code-formatter` in `formatter-pro` umbenennen, fügen Sie einen zweiten Eintrag hinzu, anstatt den ersten zu bearbeiten. Ein Benutzer, der immer noch das Original `formatter` aktiviert hat, löst sich dann durch beide Einträge zu `formatter-pro` auf.

1287 

1288Führen Sie `claude plugin validate .` nach dem Bearbeiten der Zuordnung aus; es lehnt jeden Eintrag ab, dessen Kette einen Zyklus bildet oder nicht bei `null` oder einem Namen in `plugins` endet.

1289 

1290<Note>

1291 Verwaltete und Richtlinieneinstellungen sind schreibgeschützt für Claude Code, daher können dort aktivierte Plugins nicht automatisch umgeschrieben werden. Das umbenannte Plugin wird weiterhin jede Sitzung geladen, aber die Umbenennungsmitteilung wiederholt sich, bis ein Administrator `enabledPlugins` in der verwalteten Einstellungsdatei aktualisiert, um den neuen Namen zu verwenden. Das gleiche gilt für Plugins, die über andere schreibgeschützte Quellen wie `--add-dir` aktiviert werden.

1292</Note>

1293 

1294Frühere Versionen von Claude Code ignorieren das `renames`-Feld und melden `plugin-not-found` für den alten Namen.

1295 

1296<h2 id="validation-and-testing">

1297 Validierung und Tests

1298</h2>

1299 

1300Testen Sie Ihren Marktplatz vor dem Teilen. Die Validierung überprüft die Dateistruktur; um zu testen, ob ein Plugin ändert, was Claude bei realistischen Eingabeaufforderungen tut, führen Sie seine Eval-Suite mit [`claude plugin eval`](/docs/de/plugin-evals) aus, bevor Sie eine neue Version veröffentlichen.

1301 

1302Validieren Sie die JSON-Syntax aus Ihrem Marktplatz-Verzeichnis:

1303 

1304```bash theme={null}

1305claude plugin validate .

1306```

1307 

1308Oder von innerhalb von Claude Code:

1309 

1310```shell theme={null}

1311/plugin validate .

1312```

1313 

1314Fügen Sie den Marktplatz zum Testen hinzu:

1315 

1316```shell theme={null}

1317/plugin marketplace add ./path/to/marketplace

1318```

1319 

1320Installieren Sie ein Test-Plugin, um zu überprüfen, ob alles funktioniert:

1321 

1322```shell theme={null}

1323/plugin install test-plugin@marketplace-name

1324```

1325 

1326Für vollständige Plugin-Test-Workflows siehe [Testen Sie Ihre Plugins lokal](/docs/de/plugins#test-your-plugins-locally). Für technische Fehlerbehebung siehe [Plugins-Referenz](/docs/de/plugins-reference).

1327 

1328<h2 id="manage-marketplaces-from-the-cli">

1329 Verwalten Sie Marktplätze über die CLI

1330</h2>

1331 

1332Claude Code bietet nicht-interaktive `claude plugin marketplace` Unterbefehle zum Scripting und zur Automatisierung. Diese entsprechen den `/plugin marketplace` Befehlen, die in einer interaktiven Sitzung verfügbar sind.

1333 

1334<h3 id="plugin-marketplace-add">

1335 Plugin marketplace add

1336</h3>

1337 

1338Fügen Sie einen Marktplatz aus einem GitHub-Repository, einer Git-URL, einer Remote-URL oder einem lokalen Pfad hinzu.

1339 

1340```bash theme={null}

1341claude plugin marketplace add <source> [options]

1342```

1343 

1344**Argumente:**

1345 

1346* `<source>`: GitHub `owner/repo` Kurzform, Git-URL, Remote-URL zu einer `marketplace.json`-Datei oder lokaler Verzeichnispfad. Um an einen Branch oder Tag anzuheften, fügen Sie `@ref` zur GitHub-Kurzform oder `#ref` zu einer Git-URL hinzu

1347 

1348Eine URL muss ihr Schema enthalten. Ab Claude Code v2.1.196 wird ein Host, der ohne eines eingegeben wird, wie `gitlab.example.com/team/plugins`, als ungültige `owner/repo` Kurzform abgelehnt und die Fehlermeldung teilt Ihnen mit, dass Sie `https://` hinzufügen oder `./` für einen lokalen Pfad verwenden sollen. Frühere Versionen lasen es als GitHub-Repository-Pfad fehl und schlagen beim Klonen mit einem GitHub-Fehler fehl.

1349 

1350**Optionen:**

1351 

1352| Option | Beschreibung | Standard |

1353| :-------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------- |

1354| `--scope <scope>` | Wo der Marktplatz deklariert werden soll: `user`, `project` oder `local`. Siehe [Plugin-Installationsbereiche](/docs/de/plugins-reference#plugin-installation-scopes) | `user` |

1355| `--sparse <paths...>` | Begrenzen Sie den Checkout auf bestimmte Verzeichnisse über git sparse-checkout. Nützlich für Monorepos | |

1356| `--claudeai` | Lesen Sie das Argument als den Namen eines [auf claude.ai gehosteten Marktplatzes](/docs/de/discover-plugins#add-from-claude-ai) statt als eine Quelle. Erfordert Claude Code v2.1.273 oder später | |

1357 

1358Fügen Sie einen Marktplatz aus GitHub mit `owner/repo` Kurzform hinzu:

1359 

1360```bash theme={null}

1361claude plugin marketplace add acme-corp/claude-plugins

1362```

1363 

1364Heften Sie an einen bestimmten Branch oder Tag mit `@ref` an:

1365 

1366```bash theme={null}

1367claude plugin marketplace add acme-corp/claude-plugins@v2.0

1368```

1369 

1370Fügen Sie von einer Git-URL auf einem nicht-GitHub-Host hinzu:

1371 

1372```bash theme={null}

1373claude plugin marketplace add https://gitlab.example.com/team/plugins.git

1374```

1375 

1376Fügen Sie von einer Remote-URL hinzu, die die `marketplace.json`-Datei direkt bereitstellt:

1377 

1378```bash theme={null}

1379claude plugin marketplace add https://example.com/marketplace.json

1380```

1381 

1382Fügen Sie von einem lokalen Verzeichnis zum Testen hinzu:

1383 

1384```bash theme={null}

1385claude plugin marketplace add ./my-marketplace

1386```

1387 

1388Deklarieren Sie den Marktplatz im Projektbereich, damit er mit Ihrem Team über `.claude/settings.json` geteilt wird:

1389 

1390```bash theme={null}

1391claude plugin marketplace add acme-corp/claude-plugins --scope project

1392```

1393 

1394Für ein Monorepo begrenzen Sie den Checkout auf die Verzeichnisse, die Plugin-Inhalte enthalten:

1395 

1396```bash theme={null}

1397claude plugin marketplace add acme-corp/monorepo --sparse .claude-plugin plugins

1398```

1399 

1400Fügen Sie einen [auf claude.ai gehosteten Marktplatz](/docs/de/discover-plugins#add-from-claude-ai) nach dem Namen hinzu, der im Abschnitt `From claude.ai:` von `claude plugin marketplace list` angezeigt wird:

1401 

1402```bash theme={null}

1403claude plugin marketplace add --claudeai claudeai-organization-library

1404```

1405 

1406Mit `--claudeai` lehnt der Befehl `--scope` und `--sparse` ab. Der Marktplatz wird für Ihr Konto gehostet, nicht in einer Einstellungsdatei deklariert, daher können Sie ihn nicht über die `.claude/settings.json` eines Projekts teilen.

1407 

1408<h3 id="plugin-marketplace-list">

1409 Plugin marketplace list

1410</h3>

1411 

1412Listet alle konfigurierten Marktplätze auf.

1413 

1414```bash theme={null}

1415claude plugin marketplace list [options]

1416```

1417 

1418**Optionen:**

1419 

1420| Option | Beschreibung |

1421| :------- | :--------------- |

1422| `--json` | Ausgabe als JSON |

1423 

1424Mit `--json` enthält jeder Eintrag `name`, `source`, ein `installLocation`-Feld mit dem lokalen Cache-Pfad, wo der Marktplatz gespeichert ist, und quellenspezifische Felder: `repo` für GitHub-Quellen, `url` für Git- und URL-Quellen und `path` für lokale Quellen. GitHub- und Git-Quellen enthalten auch ein `ref`-Feld, wenn der Marktplatz mit einem angehefteten Branch oder Tag hinzugefügt wurde.

1425 

1426Ein hinzugefügter [claude.ai-Marktplatz](/docs/de/discover-plugins#add-from-claude-ai) hat keinen lokalen Klon, daher enthält sein Eintrag seine claude.ai-Identifikatoren, `marketplaceId` und `organizationUuid`, anstelle von `installLocation`.

1427 

1428In Terminal-Sitzungen, in denen [Plugins von Ihrem claude.ai-Konto synchronisiert werden](/docs/de/plugins-reference#synced-plugins), endet die Textauflistung mit einem Abschnitt `From claude.ai:`, der auflistet, was claude.ai für Ihr Konto über die Marktplätze hinaus auflistet, die Sie hinzugefügt haben. Um einen von ihnen hinzuzufügen, siehe [Hinzufügen von claude.ai](/docs/de/discover-plugins#add-from-claude-ai). Die `--json`-Ausgabe umfasst nur konfigurierte Marktplätze und lässt diesen Abschnitt aus. Erfordert Claude Code v2.1.273 oder später.

1429 

1430<h3 id="plugin-marketplace-remove">

1431 Plugin marketplace remove

1432</h3>

1433 

1434Entfernen Sie einen konfigurierten Marktplatz. Der Alias `rm` wird auch akzeptiert.

1435 

1436```bash theme={null}

1437claude plugin marketplace remove <name> [options]

1438```

1439 

1440**Argumente:**

1441 

1442* `<name>`: Marktplatz-Name zum Entfernen, wie von `claude plugin marketplace list` angezeigt. Dies ist der `name` aus `marketplace.json`, nicht die Quelle, die Sie an `add` übergeben haben

1443 

1444**Optionen:**

1445 

1446| Option | Beschreibung | Standard |

1447| :---------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------- |

1448| `--scope <scope>` | Beschränken Sie die Entfernung auf einen einzelnen Einstellungsbereich: `user`, `project` oder `local`. Siehe [Plugin-Installationsbereiche](/docs/de/plugins-reference#plugin-installation-scopes). Wenn weggelassen, wird die Deklaration aus jedem bearbeitbaren Bereich entfernt. Wenn angegeben, wird nur die Deklaration dieses Bereichs entfernt; der gemeinsame Status, der Cache und die installierten Plugin-Daten werden beibehalten, wenn der Marktplatz noch in einem anderen Bereich deklariert ist | (alle Bereiche) |

1449 

1450<Warning>

1451 Das Entfernen eines Marktplatzes aus seinem letzten verbleibenden Bereich deinstalliert auch alle Plugins, die Sie von ihm installiert haben. Um einen Marktplatz zu aktualisieren, ohne installierte Plugins zu verlieren, verwenden Sie stattdessen `claude plugin marketplace update`.

1452</Warning>

1453 

1454<h3 id="plugin-marketplace-update">

1455 Plugin marketplace update

1456</h3>

1457 

1458Aktualisieren Sie Marktplätze von ihren Quellen, um neue Plugins und Versionsänderungen abzurufen. Ein Marktplatz, der mit einem Branch oder Tag `ref` hinzugefügt wurde, wird auf den neuesten Commit dieses Refs aktualisiert, nicht auf den Standard-Branch des Repositorys.

1459 

1460```bash theme={null}

1461claude plugin marketplace update [name]

1462```

1463 

1464**Argumente:**

1465 

1466* `[name]`: Marktplatz-Name zum Aktualisieren, wie von `claude plugin marketplace list` angezeigt. Aktualisiert alle Marktplätze, wenn weggelassen

1467 

1468Sowohl `remove` als auch `update` schlagen fehl, wenn sie gegen einen Seed-verwalteten Marktplatz ausgeführt werden, der schreibgeschützt ist. Beim Aktualisieren aller Marktplätze werden Seed-verwaltete Einträge übersprungen und andere Marktplätze werden weiterhin aktualisiert. Um Seed-bereitgestellte Plugins zu ändern, bitten Sie Ihren Administrator, das Seed-Image zu aktualisieren. Siehe [Plugins für Container vorab ausfüllen](#pre-populate-plugins-for-containers).

1469 

1470<h2 id="troubleshooting">

1471 Fehlerbehebung

1472</h2>

1473 

1474<h3 id="marketplace-not-loading">

1475 Marktplatz wird nicht geladen

1476</h3>

1477 

1478**Symptome**: Kann Marktplatz nicht hinzufügen oder Plugins von ihm nicht sehen

1479 

1480**Lösungen**:

1481 

1482* Überprüfen Sie, dass die Marktplatz-URL erreichbar ist

1483* Überprüfen Sie, dass `.claude-plugin/marketplace.json` im angegebenen Pfad vorhanden ist

1484* Stellen Sie sicher, dass die JSON-Syntax gültig ist, indem Sie `claude plugin validate .` oder `/plugin validate .` aus dem Marktplatz-Verzeichnis verwenden. Um Skill-, Agent- und Befehl-Frontmatter zu überprüfen, siehe [Validieren Sie ein Plugin oder ein Verzeichnis ohne Manifest](#validate-a-plugin-or-a-directory-without-a-manifest)

1485* Bestätigen Sie für private Repositories, dass Sie Zugriffsberechtigung haben

1486 

1487<h3 id="marketplace-validation-errors">

1488 Marktplatz-Validierungsfehler

1489</h3>

1490 

1491Führen Sie `claude plugin validate .` oder `/plugin validate .` aus Ihrem Marktplatz-Verzeichnis aus, um auf Probleme zu überprüfen. Wenn der Validator auf ein Marktplatz-Verzeichnis verweist, überprüft er `marketplace.json` auf Schema-Fehler, doppelte Plugin-Namen und Quellpfad-Traversal. Für jeden Eintrag, dessen `source` ein lokaler Pfad ist, validiert er auch die `plugin.json` dieses Plugins und warnt, wenn die `version` des Eintrags nicht mit der in `plugin.json` übereinstimmt. Probleme, die in der `plugin.json` eines Plugins gefunden werden, werden mit dem Eintrag-Index in der Form `plugins[2] plugin.json →` vorangestellt.

1492 

1493Ab Claude Code v2.1.196 umfasst die Pro-Eintrag-Überprüfung auch:

1494 

1495* Plugins, deren `source` `.` ist

1496* wird ausgeführt, wenn `marketplace.json` außerhalb eines `.claude-plugin`-Verzeichnisses liegt, wobei Quellen gegen das Verzeichnis der Datei selbst aufgelöst werden

1497* meldet die Probleme jedes Eintrags, auch wenn ein anderer Teil der Datei Schema-Fehler hat

1498 

1499Frühere Versionen überspringen Plugins im Marktplatz-Root und steigen nur von einer `.claude-plugin/marketplace.json` ab.

1500 

1501Aus einem Marktplatz-Verzeichnis öffnet Claude Code nicht die Skill-, Agent-, Befehl- oder Hook-Dateien der Plugins. Um Fehler in diesen Dateien zu finden, siehe [Validieren Sie ein Plugin oder ein Verzeichnis ohne Manifest](#validate-a-plugin-or-a-directory-without-a-manifest). Die folgende Tabelle listet die häufigsten Fehler aus einem Marktplatz-Verzeichnis auf, mit der Ursache und Lösung für jeden:

1502 

1503| Fehler | Ursache | Lösung |

1504| :------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------- |

1505| `No manifest found in directory. Expected .claude-plugin/marketplace.json or .claude-plugin/plugin.json` | Das benannte Verzeichnis hat keine `.claude-plugin/marketplace.json` oder `plugin.json`, und keine Skill-, Agent- oder Befehlsdateien zum Überprüfen | Führen Sie aus dem Marktplatz-Root aus, oder erstellen Sie `.claude-plugin/marketplace.json` mit erforderlichen Feldern |

1506| `Invalid JSON syntax: Unexpected token...` | JSON-Syntaxfehler in marketplace.json | Überprüfen Sie auf fehlende Kommas, zusätzliche Kommas oder nicht zitierte Strings |

1507| `Duplicate plugin name "x" found in marketplace` | Zwei Plugins teilen denselben Namen | Geben Sie jedem Plugin einen eindeutigen `name`-Wert |

1508| `plugins[0].source: Path contains ".."` | Ein Segment des Quellpfads ist `..` | Verwenden Sie Pfade relativ zum Marktplatz-Root ohne `..`-Segmente. Siehe [Relative Pfade](#relative-paths) |

1509| `Marketplace name cannot contain control or bidirectional-formatting characters` | Der Marktplatz-`name` enthält ein Unicode-Bidirektional-Formatierungszeichen oder ein Steuerzeichen, wie ein Escape oder ein Zeilenumbruch | Entfernen Sie das Zeichen aus dem Namen. Vor v2.1.247 erzeugten diese Zeichen den Fehler `Marketplace name impersonates an official Anthropic/Claude marketplace` |

1510| `Plugin name cannot contain control or bidirectional-formatting characters` | Ein Plugin-`name` enthält ein Unicode-Bidirektional-Formatierungszeichen oder ein Steuerzeichen, wie ein Escape oder ein Zeilenumbruch | Entfernen Sie das Zeichen aus dem Namen. Vor v2.1.247 führte Claude Code diese Überprüfung nicht durch |

1511 

1512**Warnungen** (nicht blockierend):

1513 

1514* `Marketplace has no plugins defined`: Fügen Sie mindestens ein Plugin zum `plugins`-Array hinzu

1515* `No marketplace description provided`: Fügen Sie eine Top-Level-`description` hinzu, um Benutzern zu helfen, Ihren Marktplatz zu verstehen

1516* `Plugin name "x" is not kebab-case`: Benennen Sie in Kleinbuchstaben, Ziffern und Bindestriche um (z. B. `my-plugin`). Claude Code akzeptiert andere Formen, aber die claude.ai-Marktplatz-Synchronisierung lehnt sie ab.

1517* `Marketplace name "x" is reserved in Claude Desktop`: Der Marktplatz ist mit `org`, `org-provisioned` oder `unknown` benannt, in beliebiger Schreibweise. Claude Code akzeptiert diese Namen, aber die verwaltete Marktplatz-Synchronisierung von Claude Desktop lehnt den gesamten Marktplatz ab. Benennen Sie den Marktplatz um. Vor v2.1.221 führte `claude plugin validate` diese Überprüfung nicht durch.

1518* `Marketplace name "x" is not accepted by Claude Desktop` oder `Plugin name "x" is not accepted by Claude Desktop`: Claude Desktop akzeptiert Namen von bis zu 128 Zeichen, bestehend aus Buchstaben, Ziffern, `.`, `_` und `-`, beginnend mit einem Buchstaben oder einer Ziffer. Claude Code akzeptiert andere Formen, aber die verwaltete Marktplatz-Synchronisierung von Claude Desktop lehnt einen Marktplatz ab, dessen Name die Überprüfung nicht besteht, und lässt einen Plugin-Eintrag, dessen Name nicht akzeptiert wird, stillschweigend fallen. Benennen Sie den Marktplatz oder das Plugin um. Vor v2.1.221 führte `claude plugin validate` diese Überprüfungen nicht durch.

1519 

1520<h4 id="validate-a-plugin-or-a-directory-without-a-manifest">

1521 Validieren Sie ein Plugin oder ein Verzeichnis ohne Manifest

1522</h4>

1523 

1524Um Skill-, Agent- und Befehlsdateien zu finden, deren Frontmatter nicht analysiert wird, führen Sie `claude plugin validate` aus und benennen Sie das Verzeichnis, das sie enthält. Claude Code schaut nicht außerhalb des benannten Verzeichnisses. Jede Ausführung außer einer gegen ein Plugin, das eine `plugin.json` hat, erfordert Claude Code v2.1.233 oder später.

1525 

1526<h5 id="pick-the-directory-to-name">

1527 Wählen Sie das zu benennende Verzeichnis

1528</h5>

1529 

1530Claude Code überprüft verschiedene Dateien, je nachdem, welches Verzeichnis Sie benennen. Finden Sie, was Sie überprüfen möchten, in der ersten Spalte, und führen Sie den Befehl dieser Zeile aus:

1531 

1532| Zu überprüfen | Führen Sie aus | Claude Code überprüft |

1533| :------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

1534| Ein Plugin, das eine `plugin.json` hat | `claude plugin validate ./plugins/my-plugin` | `plugin.json`, `hooks/hooks.json` und die Verzeichnisse `skills`, `agents` und `commands` im Plugin-Root |

1535| Ein Verzeichnis von Skills, Agents oder Befehlen, wie ein Plugin, das noch keine `plugin.json` hat | `claude plugin validate .claude/skills`, `~/.claude/agents` oder `./my-plugin/agents` | Jede Skill-, Agent- oder Befehlsdatei in diesem Verzeichnis |

1536| Ein Ordner, dessen Skill seine Root-`SKILL.md` ist | `claude plugin validate ./skills`, benennend das `skills`-Verzeichnis, das den Ordner enthält | Die Root-`SKILL.md` jedes Ordners. Das Halte-Verzeichnis muss `skills` benannt sein; ein Ordner unter einem anderen Namen, wie `plugins/`, hat keine Ausführung, die seine Root-`SKILL.md` überprüft |

1537| Die drei Verzeichnisse eines Projekts auf einmal | `claude plugin validate .claude` oder das Projekt-Root, wenn es kein `.claude-plugin/`-Manifest hat | `.claude/skills`, `.claude/agents` und `.claude/commands` |

1538| Ihre Verzeichnisse auf Benutzerebene | `claude plugin validate ~/.claude` | `~/.claude/skills`, `~/.claude/agents` und `~/.claude/commands` |

1539 

1540<h5 id="check-a-plugin-whose-skill-is-its-root-skill-md">

1541 Überprüfen Sie ein Plugin, dessen Skill seine Root-`SKILL.md` ist

1542</h5>

1543 

1544Wenn Sie `claude plugin validate` gegen ein Plugin-Verzeichnis ausführen, überprüft Claude Code keine `SKILL.md` im Plugin-Root. Wenn das Plugin in einem Verzeichnis namens `skills` sitzt, führen Sie den Befehl zweimal aus:

1545 

1546* Benennen Sie dieses `skills`-Verzeichnis, um die Root-`SKILL.md` des Plugins zu überprüfen.

1547* Benennen Sie das Plugin-Verzeichnis, um den Rest zu überprüfen.

1548 

1549Wenn das Plugin unter einem anderen Namen sitzt, wie `plugins/`, ist die `skills`-Verzeichnis-Ausführung nicht verfügbar, und keine Ausführung überprüft seine Root-`SKILL.md`.

1550 

1551<h5 id="check-files-behind-symlinks">

1552 Überprüfen Sie Dateien hinter Symlinks

1553</h5>

1554 

1555Wenn Sie `claude plugin validate` ausführen, folgt Claude Code nicht Symlinks innerhalb des benannten Verzeichnisses. Was es tut, hängt davon ab, wo der Link ist:

1556 

1557* **Ein verknüpftes `skills`-, `agents`- oder `commands`-Verzeichnis unter dem Plugin- oder `.claude`-Root**: Claude Code warnt, dass nichts darin gelesen wurde.

1558* **Ein verknüpfter Eintrag innerhalb eines `skills`-, `agents`- oder `commands`-Verzeichnisses**: Claude Code überspringt ihn und warnt pro Verzeichnis, wie viele Einträge es übersprungen hat, die eine Sitzung laden würde.

1559* **Das `skills`-, `agents`- oder `commands`-Verzeichnis, das Sie benennen, ist selbst ein Symlink, oder sein übergeordnetes `.claude`-Verzeichnis ist**: Claude Code meldet einen Fehler und überprüft nichts darin. Benennen Sie stattdessen das echte Verzeichnis.

1560 

1561In zwei Skills-Fällen wird die Ausführung mit Warnungen bestanden. Um die verknüpften Dateien zu überprüfen, führen Sie erneut aus und benennen Sie ein Verzeichnis, das sie direkt enthält:

1562 

1563* **Ein Plugin, dessen `skills`-Verzeichnis [auf die Skills eines Sibling-Plugins verlinkt](/docs/de/plugins-reference#share-files-within-a-marketplace-with-symlinks)**: Benennen Sie das Verzeichnis des Sibling-Plugins.

1564* **Ein [verknüpfter Skill-Eintrag](/docs/de/skills#where-skills-live) in `~/.claude/skills` oder `.claude/skills`**: Claude Code folgt dem Eintrag in einer Sitzung. Um ihn zu überprüfen, benennen Sie ein Verzeichnis namens `skills`, das den echten Ordner enthält.

1565 

1566<h5 id="read-the-validation-results">

1567 Lesen Sie die Validierungsergebnisse

1568</h5>

1569 

1570Eine saubere Ausführung endet mit `Validation passed`.

1571 

1572`No manifest found in directory` bedeutet, dass Claude Code dort keine `plugin.json` oder `marketplace.json` gefunden hat, und keine Skill-, Agent- oder Befehlsdatei in den Verzeichnissen, die es darunter überprüft. Benennen Sie stattdessen das `skills`-, `agents`- oder `commands`-Verzeichnis, das Ihre Dateien enthält.

1573 

1574Zwei der Fehler, die Claude Code aus diesen Ausführungen meldet, mit der Lösung für jeden:

1575 

1576* `YAML frontmatter failed to parse: ...`: Beheben Sie das YAML im Frontmatter-Block der Skill-, Agent- oder Befehlsdatei. Bis Sie das tun, liest eine Sitzung keine Frontmatter-Felder aus der Datei

1577* `Invalid JSON syntax: ...` auf `hooks/hooks.json`: Beheben Sie die JSON-Syntax. Bis Sie das tun, lädt eine Sitzung das Plugin ohne die Hooks in dieser Datei. Claude Code meldet diesen Fehler nur in einer Plugin-Ausführung

1578 

1579In einer Plugin-Ausführung warnt Claude Code auch vor einer `CLAUDE.md` im Plugin-Root. Für Pfade, die Sie durch die [Komponenten-Pfadfelder](/docs/de/plugins-reference#component-path-fields) in `plugin.json` festlegen, überprüft Claude Code, dass jeder Pfad vorhanden ist, liest aber die Dateien dort nicht.

1580 

1581<h3 id="plugin-installation-failures">

1582 Plugin-Installationsfehler

1583</h3>

1584 

1585**Symptome**: Marktplatz wird angezeigt, aber Plugin-Installation schlägt fehl

1586 

1587**Lösungen**:

1588 

1589* Überprüfen Sie, dass Plugin-Quell-URLs erreichbar sind

1590* Überprüfen Sie, dass Plugin-Verzeichnisse erforderliche Dateien enthalten

1591* Überprüfen Sie für GitHub-Quellen, dass Repositories öffentlich sind oder Sie Zugriff haben

1592* Testen Sie Plugin-Quellen manuell durch Klonen/Herunterladen

1593* Wenn die Quelle sowohl `ref` als auch `sha` festlegt, blockiert ein gelöschter Upstream-Branch oder Tag die Installation nicht auf den meisten Git-Hosts, einschließlich GitHub, GitLab und Bitbucket. Auf Servern, die das Abrufen von Commits nach SHA nicht unterstützen, wie AWS CodeCommit, muss die `ref` immer noch vorhanden sein und der angeheftete Commit muss von ihr erreichbar sein. Wenn die Installation immer noch fehlschlägt, bestätigen Sie, dass der angeheftete Commit immer noch im Repository vorhanden ist

1594 

1595<h3 id="private-repository-authentication-fails">

1596 Authentifizierung für private Repositories schlägt fehl

1597</h3>

1598 

1599**Symptome**: Authentifizierungsfehler beim Installieren von Plugins aus privaten Repositories

1600 

1601**Lösungen**:

1602 

1603Für manuelle Installation und Updates:

1604 

1605* Überprüfen Sie, dass Sie bei Ihrem Git-Anbieter authentifiziert sind (führen Sie z. B. `gh auth status` für GitHub aus)

1606* Überprüfen Sie, dass Ihr Credential-Helper konfiguriert ist: `git config --global credential.helper`

1607* Führen Sie `git ls-remote <marketplace-url>` aus, um zu testen, ob Git sich selbst authentifizieren kann. Wenn Git nach einem Benutzernamen oder Passwort fragt, speichern Sie zuerst die Anmeldedaten: Führen Sie für GitHub über HTTPS `gh auth setup-git` aus, und für SSH-Remotes laden Sie Ihren Schlüssel in `ssh-agent`

1608 

1609Für Hintergrund-Auto-Updates:

1610 

1611* Die Hintergrund-Überprüfung verwendet Ihre konfigurierten Git-Credential-Helper, fordert aber nie auf, sodass Ihr Helper mit einer gespeicherten Anmeldedaten antworten können muss. SSH-Remotes mit einem in `ssh-agent` geladenen Schlüssel authentifizieren sich auch

1612* Wenn Ihr Helper Sie auffordern muss, schlägt die Hintergrund-Aktualisierung stillschweigend fehl und der vorhandene Klon bleibt an Ort und Stelle. Melden Sie sich zuerst bei Ihrem Helper an, damit er eine Anmeldedaten für den Host hält. Für GitHub führen Sie `gh auth login` aus, dann `gh auth setup-git`

1613* Wenn die Überprüfung neue Commits findet oder den Remote nicht erreichen oder authentifizieren kann, klont Claude Code den Marktplatz mit denselben Anmeldedaten erneut. Das erneute Klonen kann bei großen Repositories zeitüberschreiten

1614* Legen Sie `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE=1` fest, um den vorhandenen Klon beizubehalten, ohne das erneute Klonen zu versuchen, wenn die Hintergrund-Überprüfung den Remote nicht erreichen oder authentifizieren kann

1615* Wenn das erneute Klonen bei einem großen Repository zeitüberschreitet, erhöhen Sie das Limit mit [`CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS`](#git-operations-time-out)

1616* Oder aktualisieren Sie private Marktplätze manuell mit `/plugin marketplace update <name>`, das Ihre Anmeldedaten verwendet

1617 

1618Vor v2.1.280 führte die Hintergrund-Überprüfung ohne Ihre Credential-Helper aus und konnte sich nicht bei privaten Repositories über HTTPS authentifizieren.

1619 

1620<h3 id="marketplace-updates-fail-in-offline-environments">

1621 Marktplatz-Updates schlagen in Offline-Umgebungen fehl

1622</h3>

1623 

1624**Symptome**: In einer Offline- oder Airgapped-Umgebung kann die Hintergrund-Marktplatz-Aktualisierung den Remote nicht erreichen und Claude Code versucht wiederholt ein erneutes Klonen, das nicht erfolgreich sein kann.

1625 

1626**Ursache**: Die Hintergrund-Aktualisierung überprüft den Remote des Marktplatzes auf neue Commits, und wenn die Überprüfung den Remote nicht erreichen kann, versucht Claude Code, den Marktplatz erneut zu klonen. Offline schlägt das Klonen auf die gleiche Weise fehl und der vorhandene Klon bleibt an Ort und Stelle. Vor v2.1.274 führte die Aktualisierung `git pull` im vorhandenen Klon aus, verschob den Klon zur Seite zum erneuten Klonen, wenn der Pull fehlschlägt, und stellte ihn danach auf Best-Effort-Basis wieder her.

1627 

1628Die Aktualisierung wird im Hintergrund nach dem Start ausgeführt, sodass sie den Start nicht verzögert. Jede Sitzung wiederholt immer noch den fehlgeschlagenen Versuch, und jede Git-Operation kann das [120-Sekunden-Timeout](#git-operations-time-out) abwarten.

1629 

1630**Lösung**: Legen Sie `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE=1` fest, um den erneuten Klon-Versuch zu überspringen und den vorhandenen Klon weiterhin zu verwenden, wenn die Überprüfung den Remote nicht erreichen kann:

1631 

1632```bash theme={null}

1633export CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE=1

1634```

1635 

1636Für vollständig Offline-Bereitstellungen, bei denen das Repository nie erreichbar sein wird, verwenden Sie stattdessen [`CLAUDE_CODE_PLUGIN_SEED_DIR`](#pre-populate-plugins-for-containers), um das Plugins-Verzeichnis zur Build-Zeit vorab auszufüllen.

1637 

1638<h3 id="git-operations-time-out">

1639 Git-Operationen zeitüberschreitung

1640</h3>

1641 

1642**Symptome**: Plugin-Installation oder Marktplatz-Updates schlagen mit einem Timeout-Fehler fehl, wie `Git clone timed out after 120s`.

1643 

1644**Ursache**: Claude Code verwendet ein 120-Sekunden-Timeout für alle Git-Operationen, einschließlich Klonen von Plugin-Repositories und erneutes Klonen eines Marktplatzes zum Aktualisieren. Große Repositories oder langsame Netzwerkverbindungen können dieses Limit überschreiten.

1645 

1646**Lösung**: Erhöhen Sie das Timeout mit der Umgebungsvariable `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS`. Der Wert ist in Millisekunden:

1647 

1648```bash theme={null}

1649export CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS=300000 # 5 Minuten

1650```

1651 

1652<h3 id="plugins-with-relative-paths-fail-in-url-based-marketplaces">

1653 Plugins mit relativen Pfaden schlagen in URL-basierten Marktplätzen fehl

1654</h3>

1655 

1656**Symptome**: Einen Marktplatz über eine URL wie `https://example.com/marketplace.json` hinzugefügt, aber Plugins mit relativen Pfadquellen wie `"./plugins/my-plugin"` schlagen mit `its marketplace entry path does not stay inside the marketplace directory` fehl. Bereits installierte Plugins schlagen mit `Plugin source path refused` fehl. Beide Meldungen haben einen [Fehlerreferenzeintrag](/docs/de/errors#marketplace-entry-path-does-not-stay-inside-the-marketplace-directory).

1657 

1658**Ursache**: Das Hinzufügen eines URL-basierten Marktplatzes lädt nur die `marketplace.json`-Datei selbst herunter, und Claude Code lädt Plugin-Dateien nicht nach relativem Pfad von diesem Server herunter. Relative Pfade im Marktplatz-Eintrag verweisen auf Dateien auf dem Remote-Server, die nicht heruntergeladen wurden.

1659 

1660**Lösungen**:

1661 

1662* **Verwenden Sie externe Quellen**: Ändern Sie Plugin-Einträge in jede [Plugin-Quelle](#plugin-sources) außer einem relativen Pfad:

1663 ```json theme={null}

1664 { "name": "my-plugin", "source": { "source": "github", "repo": "owner/repo" } }

1665 ```

1666* **Verwenden Sie einen Git-basierten Marktplatz**: Hosten Sie Ihren Marktplatz in einem Git-Repository und fügen Sie ihn mit der Git-URL hinzu. Git-basierte Marktplätze klonen das gesamte Repository, wodurch relative Pfade funktionieren.

1667 

1668<h3 id="files-not-found-after-installation">

1669 Dateien nicht gefunden nach Installation

1670</h3>

1671 

1672**Symptome**: Plugin wird installiert, aber Verweise auf Dateien schlagen fehl, besonders Dateien außerhalb des Plugin-Verzeichnisses

1673 

1674**Ursache**: Claude Code kopiert installierte Plugins in ein Cache-Verzeichnis, anstatt sie an Ort und Stelle zu verwenden, außer wenn ein Plugin in Place lädt. Eine [`command`-Quelle im Link-Modus](#copy-mode-and-link-mode) lädt in Place, und so auch eine [relative Pfad-Quelle](#relative-paths) in einem Marktplatz, der aus einem lokalen Verzeichnis hinzugefügt wurde. Pfade, die auf Dateien außerhalb eines kopierten Plugin-Verzeichnisses verweisen (wie `../shared-utils`), funktionieren nicht, da diese Dateien nicht kopiert werden.

1675 

1676**Lösungen**: Siehe [Plugin-Caching und Dateiauflösung](/docs/de/plugins-reference#plugin-caching-and-file-resolution) für Workarounds, einschließlich Symlinks und Verzeichnisumstrukturierung.

1677 

1678Für zusätzliche Debugging-Tools und häufige Probleme siehe [Debugging- und Entwicklungstools](/docs/de/plugins-reference#debugging-and-development-tools).

1679 

1680<h2 id="see-also">

1681 Siehe auch

1682</h2>

1683 

1684* [Entdecken und Installieren vorgefertigter Plugins](/docs/de/discover-plugins) - Installieren von Plugins aus vorhandenen Marktplätzen

1685* [Plugins](/docs/de/plugins) - Erstellen Ihrer eigenen Plugins

1686* [Plugins-Referenz](/docs/de/plugins-reference) - Vollständige technische Spezifikationen und Schemas

1687* [Plugin-Einstellungen](/docs/de/settings-reference#plugin-settings) - Plugin-Konfigurationsoptionen

1688* [strictKnownMarketplaces-Referenz](/docs/de/settings-reference#strictknownmarketplaces) - Verwaltete Marktplatz-Einschränkungen

plugin-relevance.md +0 −188 deleted

File Deleted View Diff

1> ## Documentation Index

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

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

4 

5# Plugins für Ihre Organisation empfehlen

6 

7> Fügen Sie einen Relevanzblock zu Marketplace-Plugin-Einträgen hinzu, damit Claude Code diese vorschlägt, wenn die Arbeit eines Benutzers passt.

8 

9Wenn Sie einen Plugin-Marketplace für Ihre Organisation betreiben, können Sie Claude Code so konfigurieren, dass bestimmte Plugins Benutzern basierend auf ihrer aktuellen Arbeit vorgeschlagen werden. Fügen Sie einen `relevance`-Block zum Plugin-Eintrag in `marketplace.json` hinzu und genehmigen Sie den Marketplace in verwalteten Einstellungen. Wenn eine Benutzersitzung einem der deklarierten Signale entspricht, zeigt Claude Code einen Installationsvorschlag für dieses Plugin an.

10 

11Marketplace-deklarierte Vorschläge sind pro Marketplace durch [verwaltete Einstellungen](/docs/de/managed-settings) optional. Kein `relevance`-Deklaration eines Marketplace erzeugt Vorschläge, bis ein Administrator ihn zur Genehmigungsliste hinzufügt, einschließlich des offiziellen Anthropic-Marketplace. Claude Code enthält auch einen integrierten Vorschlag, der unabhängig von dieser Genehmigungsliste ist; dieser Tipp und alle Marketplace-deklarierten Tipps sind deaktiviert, wenn [`spinnerTipsEnabled`](/docs/de/settings-reference#spinnertipsenabled) auf `false` gesetzt ist.

12 

13Diese Seite ist für Marketplace-Betreiber und Enterprise-Administratoren. Wenn Sie Plugins installieren möchten, siehe [Plugins entdecken und installieren](/docs/de/discover-plugins).

14 

15<h2 id="how-it-works">

16 Funktionsweise

17</h2>

18 

19Jeder Plugin-Eintrag in `marketplace.json` kann ein `relevance`-Objekt enthalten. Das Objekt benennt ein Thema und ein oder mehrere Signale. Ein Signal ist ein Muster, das Claude Code gegen die aktuelle Sitzung testet, z. B. das Arbeitsverzeichnis oder Dateien, die Claude gelesen hat.

20 

21Signal-Matching erfolgt lokal auf dem Computer des Benutzers. Das Matching erzeugt keinen Netzwerkverkehr und meldet nicht, welche Signale übereinstimmten oder deren Werte an Anthropic oder den Marketplace-Betreiber.

22 

23Wenn ein Signal übereinstimmt und das Plugin nicht bereits installiert ist, zeigt Claude Code das Plugin an drei Stellen an:

24 

25* **Spinner-Tipp**: Eine Meldung „Arbeiten mit *Thema*? Installieren Sie das *Plugin*-Plugin" mit dem `/plugin install`-Befehl wird unter dem Spinner angezeigt, während Claude antwortet.

26* **Sitzungsstart-Vorschlag**: Wenn das `cwd`-Signal dem Arbeitsverzeichnis entspricht, wird eine einzeilige `plugin suggestion: <name>@<marketplace> · /plugin`-Benachrichtigung vor dem ersten Turn angezeigt.

27* **`/plugin` Discover-Registerkarte**: Das Plugin wird oben in der Discover-Liste mit einer Anmerkung wie „für dieses Verzeichnis empfohlen" oder „für Stripe-Befehle empfohlen" angeheftet.

28 

29Der Spinner-Tipp und die Sitzungsstart-Benachrichtigung sind Teil des Spinner-Tipps-Systems. Claude Code deaktiviert beide, wenn `spinnerTipsEnabled` in Ihren Einstellungsdateien zu `false` aufgelöst wird, oder wenn `excludeDefault` in den [`spinnerTipsOverride`](/docs/de/settings-reference#spinnertipsoverride)-Schlüsseln in Benutzer-, `--settings`- und verwalteten Einstellungen zu `true` aufgelöst wird und diese Schlüssel mindestens einen Tipp oder eine `tipsFile` konfigurieren.

30 

31Das Anheften auf der Discover-Registerkarte ist unabhängig von Tipp-Einstellungen.

32 

33Claude Code installiert ein Plugin niemals automatisch. Der Benutzer bestätigt immer.

34 

35<h2 id="add-relevance-to-a-plugin-entry">

36 Relevanz zu einem Plugin-Eintrag hinzufügen

37</h2>

38 

39Fügen Sie ein `relevance`-Objekt zum Plugin-Eintrag in Ihrer `marketplace.json` hinzu. Das folgende Beispiel deklariert, dass das `terraform-helpers`-Plugin relevant ist, wenn Claude eine `.tf`-Datei liest oder wenn Claude `terraform` ausführt:

40 

41```json theme={null}

42{

43 "name": "acme-corp-plugins",

44 "owner": { "name": "Acme Platform Team" },

45 "plugins": [

46 {

47 "name": "terraform-helpers",

48 "source": "./plugins/terraform-helpers",

49 "description": "Acme conventions and helpers for Terraform",

50 "relevance": {

51 "topic": "Terraform",

52 "signals": {

53 "cli": ["terraform"],

54 "filesRead": ["**/*.tf"]

55 }

56 }

57 }

58 ]

59}

60```

61 

62Ein Plugin mit einem `relevance`-Block aber ohne übereinstimmendes Signal verhält sich wie jeder andere Marketplace-Eintrag. Es wird in der Discover-Liste an seiner normalen Position angezeigt und wird niemals als Spinner-Tipp angezeigt.

63 

64<h2 id="field-reference">

65 Feldverweis

66</h2>

67 

68<h3 id="relevance">

69 `relevance`

70</h3>

71 

72| Feld | Typ | Beschreibung |

73| :-------- | :----- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

74| `topic` | string | Optional. Der Ausdruck, der „Arbeiten mit *Thema*?" im Spinner-Tipp ausfüllt. Oft der Produktname, z. B. `Stripe`. Verwenden Sie eine Domäne wie `design`, wenn der Plugin-Name nicht natürlich als Thema gelesen wird. Standardmäßig der Plugin-Name mit jedem Bindestrich-Segment kapitalisiert. Die Sitzungsstart-Benachrichtigung verwendet diesen Wert nicht. Maximal 64 Zeichen. |

75| `signals` | object | Matcher, die bestimmen, wann das Plugin relevant ist. Mindestens ein Signal ist erforderlich, damit das Plugin vorschlagbar ist. Siehe die Tabelle unten. |

76 

77<h3 id="relevance-signals">

78 `relevance.signals`

79</h3>

80 

81| Feld | Typ | Beschreibung |

82| :------------- | :--------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

83| `cwd` | array of strings | Glob-Muster, die gegen das Arbeitsverzeichnis der Sitzung abgeglichen werden. Abgeglichen als absoluter Pfad und, wenn sich in einem Git-Repository befindet, als Pfad relativ zum Repository-Root. Schrägstrich-normalisiert und Groß-/Kleinschreibung-insensitiv. Jedes Muster passt zum Verzeichnis selbst und allem darunter, daher verhalten sich `infra`, `infra/` und `infra/**` identisch. Dies ist das einzige Signal, das beim Sitzungsstart vor dem ersten Turn übereinstimmen kann. Maximal 10 Muster mit je 256 Zeichen. |

84| `cli` | array of strings | Befehlsnamen aus Shell-Befehlen, die Claude in dieser Sitzung ausgeführt hat, z. B. `["stripe"]`. Gilt auf jeder Plattform: Befehle, die unter Windows über PowerShell oder Git Bash ausgeführt werden, werden auf die gleiche Weise aufgezeichnet. Claude Code zeichnet einen Befehlsnamen pro Shell-Tool-Aufruf auf: das erste Token nach allen führenden Umgebungsvariablenzuweisungen und `sudo`. Zusammengesetzte Befehle tragen nur ihren führenden Befehl bei, daher zeichnet `cd infra && terraform plan` `cd` auf, nicht `terraform`. Exakte Übereinstimmung. Maximal 10 Einträge mit je 64 Zeichen. |

85| `hosts` | array of strings | Hostnamen in `http://`- oder `https://`-URLs in Bash-Befehlen dieser Sitzung, z. B. `["api.stripe.com"]`. Nur reiner Hostname in Kleinbuchstaben: kein Schema, Port oder Pfad. Exakte Groß-/Kleinschreibung-insensitive Übereinstimmung. Maximal 20 Einträge mit je 128 Zeichen. |

86| `filesRead` | array of strings | Glob-Muster, die gegen die Pfade von Dateien abgeglichen werden, die Claude in dieser Sitzung gelesen hat, z. B. `["**/*.tf"]`. Schrägstrich-normalisiert und Groß-/Kleinschreibung-insensitiv. Maximal 10 Muster mit je 256 Zeichen. |

87| `manifestDeps` | array of objects | Abhängigkeiten, die in Paketmanifesten deklariert sind, die Claude in dieser Sitzung gelesen hat. Jeder Eintrag ist `{ "file": "...", "pattern": "..." }`, wobei `file` ein regulärer Ausdruck ist, der gegen den Pfad der Manifestdatei abgeglichen wird, wie er im Sitzungszustand aufgezeichnet ist, typischerweise ein absoluter Pfad, und `pattern` ein regulärer Ausdruck ist, der gegen den Inhalt dieser Datei abgeglichen wird. Verankern Sie `file` am Ende, z. B. `[/\\\\]package\\.json$` in JSON-escaped-Form, da ein am Anfang verankertes Muster niemals einen absoluten Pfad passt. Pfade sind nicht Separator-normalisiert für dieses Signal, daher verwenden Windows-Pfade Backslashes. Manifestdateien größer als 512 KB werden übersprungen. Beide Werte sind JavaScript-`RegExp`-Quellzeichenfolgen mit maximal 256 Zeichen. `file` passt Groß-/Kleinschreibung-insensitiv. `pattern` ist Groß-/Kleinschreibung-sensitiv. Maximal 10 Einträge. |

88 

89Die Signale `cli`, `hosts`, `filesRead` und `manifestDeps` benötigen Sitzungsverlauf, daher können sie nur auf dem Spinner-Tipp und der Discover-Registerkarte übereinstimmen.

90 

91Die Signale `filesRead` und `manifestDeps` testen den aufgezeichneten Dateizustand der Sitzung, der auch Dateien enthält, die Claude geschrieben oder bearbeitet hat, und automatisch geladene `CLAUDE.md`-Speicherdateien. Für diese beiden Signale überspringt Claude Code Pfade unter seinem eigenen [Konfigurationsverzeichnis](/docs/de/claude-directory) und seinen temporären Verzeichnissen.

92 

93Das folgende Beispiel verwendet `manifestDeps`, um ein Stripe-Plugin vorzuschlagen, sobald Claude eine `package.json` gelesen hat, die von `stripe` abhängt. Das `file`-Muster verwendet `[/\\\\]`, damit es sowohl Schrägstrich- als auch Backslash-Pfad-Trennzeichen passt, und `\\.`, damit der Punkt literal ist. In JSON wird jeder Backslash im regulären Ausdruck zweimal geschrieben.

94 

95```json theme={null}

96{

97 "name": "stripe-helpers",

98 "source": "./plugins/stripe-helpers",

99 "relevance": {

100 "topic": "Stripe",

101 "signals": {

102 "manifestDeps": [

103 {

104 "file": "[/\\\\]package\\.json$",

105 "pattern": "\"stripe\"\\s*:"

106 }

107 ]

108 }

109 }

110}

111```

112 

113<Note>

114 Claude Code ignoriert unbekannte Felder unter `relevance` und `relevance.signals` beim Laden, daher können ältere Clients Ihren Marketplace weiterhin laden.

115</Note>

116 

117<h2 id="enable-suggestions-in-managed-settings">

118 Vorschläge in verwalteten Einstellungen aktivieren

119</h2>

120 

121Das Deklarieren von `relevance` in `marketplace.json` ist allein nicht ausreichend. Ein Administrator muss den Marketplace in [verwalteten Einstellungen](/docs/de/managed-settings) genehmigen, bevor seine Vorschläge Benutzern angezeigt werden.

122 

123Fügen Sie den Marketplace-Namen zu `pluginSuggestionMarketplaces` hinzu. Für jeden Marketplace außer dem offiziellen Anthropic-Marketplace deklarieren Sie auch die Marketplace-Quelle in denselben verwalteten Einstellungen, entweder als Eintrag dieses Namens in `extraKnownMarketplaces` oder als Eintrag in `strictKnownMarketplaces`. Der genehmigte Name wird ignoriert, wenn der auf dem Computer registrierte Marketplace aus einer anderen Quelle stammt. Dies verhindert, dass eine unabhängige Quelle sich unter einem genehmigten Namen registriert, um ihre Plugins in Ihrer Organisation vorgeschlagen zu bekommen.

124 

125Die folgende `managed-settings.json` registriert einen Organisations-Marketplace aus einem GitHub-Repository und aktiviert seine Vorschläge:

126 

127```json theme={null}

128{

129 "extraKnownMarketplaces": {

130 "acme-corp-plugins": {

131 "source": {

132 "source": "github",

133 "repo": "acme-corp/claude-plugins"

134 }

135 }

136 },

137 "pluginSuggestionMarketplaces": ["acme-corp-plugins"]

138}

139```

140 

141Der offizielle Marketplace ist von der Quellendeklarationsanforderung befreit, da sein Name nur von der offiziellen Anthropic-Quelle registriert werden kann. Das Genehmigen des Namens allein ist ausreichend:

142 

143```json theme={null}

144{

145 "pluginSuggestionMarketplaces": ["claude-plugins-official"]

146}

147```

148 

149<h2 id="what-the-user-sees">

150 Was der Benutzer sieht

151</h2>

152 

153Wenn ein Signal während einer Sitzung übereinstimmt, lautet der Spinner-Tipp:

154 

155```text theme={null}

156Working with Terraform? Install the terraform-helpers plugin:

157/plugin install terraform-helpers@acme-corp-plugins

158```

159 

160Beim Sitzungsstart zeigt ein übereinstimmendes `cwd`-Signal die einzeilige Benachrichtigung:

161 

162```text theme={null}

163plugin suggestion: terraform-helpers@acme-corp-plugins · /plugin

164```

165 

166Der Vorschlag eines bestimmten Plugins wird höchstens einmal alle drei Sitzungen über den Spinner-Tipp und die Sitzungsstart-Benachrichtigung kombiniert angezeigt, und keiner wiederholt sich, sobald das Plugin installiert ist. Die Sitzungsstart-Benachrichtigung stoppt zusätzlich, nachdem der Vorschlag zweimal angezeigt wurde.

167 

168In der `/plugin` Discover-Registerkarte wird das Plugin oben in den anderen Ergebnissen mit einer Anmerkung angeheftet, die das übereinstimmende Signal benennt, z. B. `suggested for this directory` oder `suggested for terraform commands`. Die Discover-Registerkarte heftet ein bestimmtes Plugin einmal an; spätere Besuche listen es in normaler Reihenfolge auf.

169 

170<h2 id="validate-your-marketplace">

171 Validieren Sie Ihren Marketplace

172</h2>

173 

174Führen Sie `claude plugin validate` gegen Ihr Marketplace-Verzeichnis aus, um den `relevance`-Block vor der Veröffentlichung zu überprüfen:

175 

176```

177claude plugin validate ./my-marketplace

178```

179 

180Der Validator meldet unbekannte Schlüssel unter `relevance` und `relevance.signals` als Warnungen, kennzeichnet einen `relevance`-Wert, der kein Objekt ist, und lehnt einen `signals.hosts`-Eintrag ab, der ein Schema, einen Port oder einen Pfad enthält.

181 

182<h2 id="see-also">

183 Siehe auch

184</h2>

185 

186* [Erstellen und verteilen Sie einen Plugin-Marketplace](/docs/de/plugin-marketplaces): Erstellen Sie den Marketplace, der Ihre Plugins hostet

187* [Empfehlen Sie Ihr Plugin von Ihrer CLI](/docs/de/plugin-hints): Fordern Sie Benutzer von Ihrer eigenen CLI auf, anstatt von Claude Code's Sitzungssignalen

188* [Alle Einstellungen](/docs/de/settings-reference#pluginsuggestionmarketplaces): `pluginSuggestionMarketplaces` und `extraKnownMarketplaces`

plugins.md +0 −527 deleted

File Deleted View Diff

1> ## Documentation Index

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

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

4 

5# Plugins erstellen

6 

7> Erstellen Sie benutzerdefinierte Plugins, um Claude Code mit Skills, Agents, Hooks und MCP-Servern zu erweitern.

8 

9Plugins ermöglichen es Ihnen, Claude Code mit benutzerdefinierten Funktionen zu erweitern, die projektübergreifend und teamübergreifend freigegeben werden können. Diese Anleitung behandelt die Erstellung eigener Plugins mit Skills, Agents, Hooks und MCP-Servern.

10 

11Möchten Sie vorhandene Plugins installieren? Siehe [Plugins entdecken und installieren](/docs/de/discover-plugins). Für vollständige technische Spezifikationen siehe [Plugins-Referenz](/docs/de/plugins-reference).

12 

13<h2 id="when-to-use-plugins-vs-standalone-configuration">

14 Wann Plugins vs. eigenständige Konfiguration verwenden

15</h2>

16 

17Claude Code unterstützt zwei Möglichkeiten, um benutzerdefinierte Skills, Agents und Hooks hinzuzufügen:

18 

19| Ansatz | Skill-Namen | Am besten für |

20| :------------------------------------------------------------------------------------------------------------------- | :------------------- | :------------------------------------------------------------------------------------------------------------------- |

21| **Eigenständig** (`.claude/`-Verzeichnis) | `/hello` | Persönliche Workflows, projektspezifische Anpassungen, schnelle Experimente |

22| **Plugins** (eigenständige Verzeichnisse mit Skills, Agents, Hooks oder einem `.claude-plugin/plugin.json`-Manifest) | `/plugin-name:hello` | Freigabe für Teamkollegen, Verteilung an die Community, versionierte Releases, wiederverwendbar über Projekte hinweg |

23 

24<Tip>

25 Beginnen Sie mit eigenständiger Konfiguration in `.claude/` für schnelle Iteration, dann [konvertieren Sie zu einem Plugin](#convert-existing-configurations-to-plugins), wenn Sie bereit sind zu teilen.

26</Tip>

27 

28<h2 id="quickstart">

29 Schnellstart

30</h2>

31 

32Dieser Schnellstart führt Sie durch die Erstellung eines Plugins mit einem benutzerdefinierten Skill. Sie erstellen ein Manifest (die Konfigurationsdatei, die Ihr Plugin definiert), fügen einen Skill hinzu und testen ihn lokal mit dem Flag `--plugin-dir`.

33 

34<h3 id="prerequisites">

35 Voraussetzungen

36</h3>

37 

38* Claude Code [installiert und authentifiziert](/docs/de/quickstart#step-1-install-claude-code)

39 

40<h3 id="create-your-first-plugin">

41 Erstellen Sie Ihr erstes Plugin

42</h3>

43 

44<Steps>

45 <Step title="Erstellen Sie das Plugin-Verzeichnis">

46 Jedes Plugin befindet sich in seinem eigenen Verzeichnis, das Ihre Skills, Agents oder Hooks enthält, optional zusammen mit einem `.claude-plugin/plugin.json`-Manifest. Der Speicherort spielt für diesen Schnellstart keine Rolle, da Sie Claude Code im Testschritt mit `--plugin-dir` auf das Verzeichnis verweisen. Erstellen Sie es überall, wo es praktisch ist, z. B. in einem Scratch-Ordner oder einem Projektverzeichnis:

47 

48 ```bash theme={null}

49 mkdir my-first-plugin

50 ```

51 

52 Die verbleibenden Schritte werden vom übergeordneten Verzeichnis aus ausgeführt und referenzieren Pfade wie `my-first-plugin/...` relativ dazu.

53 </Step>

54 

55 <Step title="Erstellen Sie das Plugin-Manifest">

56 Die Manifestdatei unter `.claude-plugin/plugin.json` definiert die Identität Ihres Plugins: seinen Namen, die Beschreibung und die Version. Claude Code verwendet diese Metadaten, um Ihr Plugin im Plugin-Manager anzuzeigen.

57 

58 Erstellen Sie das `.claude-plugin`-Verzeichnis in Ihrem Plugin-Ordner:

59 

60 ```bash theme={null}

61 mkdir my-first-plugin/.claude-plugin

62 ```

63 

64 Erstellen Sie dann `my-first-plugin/.claude-plugin/plugin.json` mit diesem Inhalt:

65 

66 ```json my-first-plugin/.claude-plugin/plugin.json theme={null}

67 {

68 "name": "my-first-plugin",

69 "description": "A greeting plugin to learn the basics",

70 "version": "1.0.0",

71 "author": {

72 "name": "Your Name"

73 }

74 }

75 ```

76 

77 | Feld | Zweck |

78 | :------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

79 | `name` | Eindeutige Kennung und Skill-Namespace. Skills werden mit diesem Präfix versehen (z. B. `/my-first-plugin:hello`). |

80 | `description` | Wird im Plugin-Manager angezeigt, wenn Sie Plugins durchsuchen oder installieren. |

81 | `version` | Optional. Falls gesetzt, erhalten Benutzer nur Updates, wenn Sie dieses Feld erhöhen, außer für eine [`command`-Quelle](/docs/de/plugin-marketplaces#command-sources) oder ein Plugin [lokal geladen](/docs/de/plugins-reference#plugin-caching-and-file-resolution); siehe [Versionsverwaltung](/docs/de/plugins-reference#version-management). Falls weggelassen, stammt die Version aus der nächsten Quelle in der [Versionsverwaltung](/docs/de/plugins-reference#version-management). |

82 | `author` | Optional. Hilfreich für die Zuordnung. |

83 

84 Für zusätzliche Felder wie `homepage`, `repository` und `license` siehe das [vollständige Manifest-Schema](/docs/de/plugins-reference#plugin-manifest-schema).

85 </Step>

86 

87 <Step title="Fügen Sie einen Skill hinzu">

88 Skills befinden sich im Verzeichnis `skills/`. Jeder Skill ist ein Ordner, der eine Datei `SKILL.md` enthält. Der Ordnername wird zum Skill-Namen, mit dem Präfix des Plugin-Namespace (`hello/` in einem Plugin namens `my-first-plugin` erstellt `/my-first-plugin:hello`).

89 

90 Erstellen Sie ein Skill-Verzeichnis in Ihrem Plugin-Ordner:

91 

92 ```bash theme={null}

93 mkdir -p my-first-plugin/skills/hello

94 ```

95 

96 Erstellen Sie dann `my-first-plugin/skills/hello/SKILL.md` mit diesem Inhalt:

97 

98 ```markdown my-first-plugin/skills/hello/SKILL.md theme={null}

99 ---

100 description: Greet the user with a friendly message

101 disable-model-invocation: true

102 ---

103 

104 Greet the user warmly and ask how you can help them today.

105 ```

106 </Step>

107 

108 <Step title="Testen Sie Ihr Plugin">

109 Führen Sie Claude Code mit dem Flag `--plugin-dir` aus, um Ihr Plugin zu laden:

110 

111 ```bash theme={null}

112 claude --plugin-dir ./my-first-plugin

113 ```

114 

115 Sobald Claude Code startet, versuchen Sie Ihren neuen Skill:

116 

117 ```shell theme={null}

118 /my-first-plugin:hello

119 ```

120 

121 Sie sehen Claude mit einer Begrüßung antworten. Führen Sie `/help` aus und öffnen Sie die Registerkarte **Benutzerdefinierte Befehle**, um Ihren Skill unter dem Plugin-Namespace aufgelistet zu sehen.

122 

123 <Note>

124 **Warum Namespacing?** Plugin-Skills sind immer mit Namespace versehen (wie `/my-first-plugin:hello`), um Konflikte zu vermeiden, wenn mehrere Plugins Skills mit demselben Namen haben.

125 

126 Um das Namespace-Präfix zu ändern, aktualisieren Sie das Feld `name` in `plugin.json`.

127 </Note>

128 </Step>

129 

130 <Step title="Fügen Sie Skill-Argumente hinzu">

131 Machen Sie Ihren Skill dynamisch, indem Sie Benutzereingaben akzeptieren. Der Platzhalter `$ARGUMENTS` erfasst jeden Text, den der Benutzer nach dem Skill-Namen bereitstellt.

132 

133 Aktualisieren Sie Ihre Datei `SKILL.md`:

134 

135 ```markdown my-first-plugin/skills/hello/SKILL.md theme={null}

136 ---

137 description: Greet the user with a personalized message

138 ---

139 

140 # Hello Skill

141 

142 Greet the user named "$ARGUMENTS" warmly and ask how you can help them today. Make the greeting personal and encouraging.

143 ```

144 

145 Führen Sie `/reload-plugins` aus, um die Änderungen zu übernehmen. Versuchen Sie dann den Skill mit Ihrem Namen:

146 

147 ```shell theme={null}

148 /my-first-plugin:hello Alex

149 ```

150 

151 Claude wird Sie beim Namen begrüßen. Weitere Informationen zum Übergeben von Argumenten an Skills finden Sie unter [Skills](/docs/de/skills#pass-arguments-to-skills).

152 </Step>

153</Steps>

154 

155<Tip>

156 Das Flag `--plugin-dir` ist nützlich für Entwicklung und Tests. Wenn Sie bereit sind, Ihr Plugin mit anderen zu teilen, siehe [Erstellen und verteilen Sie einen Plugin-Marketplace](/docs/de/plugin-marketplaces).

157</Tip>

158 

159<h2 id="develop-a-plugin-in-your-skills-directory">

160 Entwickeln Sie ein Plugin in Ihrem Skills-Verzeichnis

161</h2>

162 

163Anstatt `--plugin-dir` bei jedem Start zu übergeben, können Sie ein Plugin in Ihrem Skills-Verzeichnis behalten und Claude Code es automatisch laden lassen. `claude plugin init` erstellt ein Gerüst dafür:

164 

165```bash theme={null}

166claude plugin init my-tool

167```

168 

169Dies erstellt `~/.claude/skills/my-tool/` mit einem `.claude-plugin/plugin.json`-Manifest und einer Starter-`SKILL.md`. In der nächsten Sitzung wird es als `my-tool@skills-dir` geladen, ohne dass ein Marketplace oder Installationsschritt erforderlich ist.

170 

171Für die Auto-Load-Regeln, persönlicher vs. Projekt-Umfang, die Workspace-Trust-Anforderung und wie man eine aktualisiert oder entfernt, siehe [Skills-Verzeichnis-Plugins](/docs/de/plugins-reference#skills-directory-plugins).

172 

173<h2 id="plugin-structure-overview">

174 Übersicht über die Plugin-Struktur

175</h2>

176 

177Sie haben ein Plugin mit einem Skill erstellt, aber Plugins können viel mehr enthalten: benutzerdefinierte Agents, Hooks, MCP-Server, LSP-Server und Hintergrund-Monitore.

178 

179<Warning>

180 **Häufiger Fehler**: Platzieren Sie `commands/`, `agents/`, `skills/` oder `hooks/` nicht im Verzeichnis `.claude-plugin/`. Nur `plugin.json` gehört in `.claude-plugin/`. Alle anderen Verzeichnisse müssen auf der Plugin-Root-Ebene sein.

181 

182 Das Plugin-Root ist das eigene Verzeichnis des einzelnen Plugins, z. B. `my-first-plugin/` aus dem [Schnellstart](#quickstart). Es ist niemals `~/.claude/`. Zum Beispiel liest Claude Code eine `.mcp.json`, die unter `~/.claude/.mcp.json` platziert ist, nicht.

183</Warning>

184 

185| Verzeichnis | Speicherort | Zweck |

186| :---------------- | :---------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

187| `.claude-plugin/` | Plugin-Root | Enthält `plugin.json`-Manifest (optional, wenn Komponenten Standardspeicherorte verwenden) |

188| `skills/` | Plugin-Root | Skills als `<name>/SKILL.md`-Verzeichnisse |

189| `commands/` | Plugin-Root | Skills als flache Markdown-Dateien. Verwenden Sie `skills/` für neue Plugins |

190| `agents/` | Plugin-Root | Benutzerdefinierte Agent-Definitionen |

191| `hooks/` | Plugin-Root | Event-Handler in `hooks.json` |

192| `.mcp.json` | Plugin-Root | MCP-Server-Konfigurationen |

193| `.lsp.json` | Plugin-Root | LSP-Server-Konfigurationen für Code-Intelligenz |

194| `monitors/` | Plugin-Root | Hintergrund-Monitor-Konfigurationen in `monitors.json` |

195| `bin/` | Plugin-Root | Ausführbare Dateien, die zum `PATH` des Bash-Tools hinzugefügt werden, während das Plugin aktiviert ist. Sie können dieses Verzeichnis nicht in ein Plugin einbeziehen, das Sie [über die Organisationseinstellungen von claude.ai verteilen](/docs/de/plugin-marketplaces#keep-executables-out-of-the-top-level-bin-directory) |

196| `settings.json` | Plugin-Root | Standard-[Einstellungen](/docs/de/settings), die angewendet werden, wenn das Plugin aktiviert ist |

197 

198Ein Plugin, das genau einen Skill enthält, kann `SKILL.md` direkt im Plugin-Root platzieren, anstatt ein `skills/`-Verzeichnis zu erstellen. Claude Code lädt es als einen einzelnen Skill und verwendet das Frontmatter-Feld `name` für den Aufrufen-Namen. Verwenden Sie das `skills/`-Layout für Plugins, die möglicherweise auf mehr als einen Skill anwachsen.

199 

200<h2 id="develop-more-complex-plugins">

201 Entwickeln Sie komplexere Plugins

202</h2>

203 

204Sobald Sie sich mit grundlegenden Plugins vertraut gemacht haben, können Sie anspruchsvollere Erweiterungen erstellen.

205 

206<h3 id="add-skills-to-your-plugin">

207 Fügen Sie Skills zu Ihrem Plugin hinzu

208</h3>

209 

210Plugins können [Agent-Skills](/docs/de/skills) enthalten, um die Fähigkeiten von Claude zu erweitern. Skills werden vom Modell aufgerufen: Claude verwendet sie automatisch basierend auf dem Task-Kontext.

211 

212Fügen Sie ein Verzeichnis `skills/` auf Ihrer Plugin-Root mit Skill-Ordnern hinzu, die `SKILL.md`-Dateien enthalten:

213 

214```text theme={null}

215my-plugin/

216├── .claude-plugin/

217│ └── plugin.json

218└── skills/

219 └── code-review/

220 └── SKILL.md

221```

222 

223Jede `SKILL.md` enthält YAML-Frontmatter und Anweisungen. Fügen Sie eine `description` ein, damit Claude weiß, wann der Skill verwendet werden soll:

224 

225```yaml theme={null}

226description: Reviews code for best practices and potential issues. Use when reviewing code, checking PRs, or analyzing code quality.

227 

228When reviewing code, check for:

2291. Code organization and structure

2302. Error handling

2313. Security concerns

2324. Test coverage

233```

234 

235Nach der Installation des Plugins überprüfen Sie die Installationszusammenfassung: Wenn sie `Run /reload-plugins to activate.` meldet, siehe [Wenden Sie Plugin-Änderungen an, ohne neu zu starten](/docs/de/discover-plugins#apply-plugin-changes-without-restarting), um die Skills in Ihrer aktuellen Sitzung zu laden. Für vollständige Anleitung zur Skill-Erstellung, einschließlich progressiver Offenlegung und Tool-Einschränkungen, siehe [Agent-Skills](/docs/de/skills).

236 

237<h3 id="add-lsp-servers-to-your-plugin">

238 Fügen Sie LSP-Server zu Ihrem Plugin hinzu

239</h3>

240 

241<Tip>

242 Für gängige Sprachen wie TypeScript, Python und Rust installieren Sie die vorgefertigten LSP-Plugins aus dem offiziellen Marketplace. Erstellen Sie benutzerdefinierte LSP-Plugins nur, wenn Sie Unterstützung für Sprachen benötigen, die noch nicht abgedeckt sind.

243</Tip>

244 

245LSP-Plugins (Language Server Protocol) geben Claude Echtzeit-Code-Intelligenz. Wenn Sie eine Sprache unterstützen müssen, die kein offizielles LSP-Plugin hat, können Sie ein eigenes erstellen, indem Sie eine `.lsp.json`-Datei zu Ihrem Plugin hinzufügen:

246 

247```json .lsp.json theme={null}

248{

249 "go": {

250 "command": "gopls",

251 "args": ["serve"],

252 "extensionToLanguage": {

253 ".go": "go"

254 }

255 }

256}

257```

258 

259Benutzer, die Ihr Plugin installieren, müssen die Language-Server-Binärdatei auf ihrem Computer installiert haben.

260 

261Um zu bestätigen, dass der Server startet, starten Sie Claude Code mit aktiviertem Plugin und überprüfen Sie die Registerkarte `/plugin` Fehler: Ein Language-Server, der nicht startet, wird dort angezeigt, zum Beispiel mit `Executable not found in $PATH`, wenn die Binärdatei nicht installiert ist. Ein Eintrag mit ungültiger Konfiguration wird stattdessen übersprungen; führen Sie `claude --debug` aus, um zu sehen, warum.

262 

263Für vollständige LSP-Konfigurationsoptionen siehe [LSP-Server](/docs/de/plugins-reference#lsp-servers).

264 

265<h3 id="add-background-monitors-to-your-plugin">

266 Fügen Sie Hintergrund-Monitore zu Ihrem Plugin hinzu

267</h3>

268 

269Hintergrund-Monitore ermöglichen es Ihrem Plugin, Protokolle, Dateien oder externen Status im Hintergrund zu überwachen und Claude zu benachrichtigen, wenn Ereignisse eintreffen. Claude Code startet jeden Monitor automatisch, wenn das Plugin aktiv ist, sodass Sie Claude nicht anweisen müssen, die Überwachung zu starten.

270 

271Fügen Sie eine Datei `monitors/monitors.json` auf der Plugin-Root mit einem Array von Monitor-Einträgen hinzu:

272 

273```json monitors/monitors.json theme={null}

274[

275 {

276 "name": "error-log",

277 "command": "tail -F ./logs/error.log",

278 "description": "Application error log"

279 }

280]

281```

282 

283Jede stdout-Zeile aus `command` wird Claude während der Sitzung als Benachrichtigung zugestellt. Für das vollständige Schema, einschließlich des `when`-Triggers und der Variablenersetzung, siehe [Monitore](/docs/de/plugins-reference#monitors).

284 

285<h3 id="ship-default-settings-with-your-plugin">

286 Versenden Sie Standard-Einstellungen mit Ihrem Plugin

287</h3>

288 

289Plugins können eine Datei `settings.json` auf der Plugin-Root enthalten, um Standard-Konfiguration anzuwenden, wenn das Plugin aktiviert ist. Derzeit werden nur die Schlüssel `agent` und `subagentStatusLine` unterstützt.

290 

291Das Setzen von `agent` aktiviert einen der [benutzerdefinierten Agents](/docs/de/sub-agents) des Plugins als Haupt-Thread und wendet seinen System-Prompt, Tool-Einschränkungen und Modell an. Dies ermöglicht es einem Plugin, das Standardverhalten von Claude Code zu ändern, wenn es aktiviert ist.

292 

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

294{

295 "agent": "security-reviewer"

296}

297```

298 

299Dieses Beispiel aktiviert den Agent `security-reviewer`, der im Verzeichnis `agents/` des Plugins definiert ist. Einstellungen aus `settings.json` haben Vorrang vor `settings`, die in `plugin.json` deklariert sind. Unbekannte Schlüssel werden stillschweigend ignoriert.

300 

301<h3 id="organize-complex-plugins">

302 Organisieren Sie komplexe Plugins

303</h3>

304 

305Für Plugins mit vielen Komponenten organisieren Sie Ihre Verzeichnisstruktur nach Funktionalität. Für vollständige Verzeichnislayouts und Organisationsmuster siehe [Plugin-Verzeichnisstruktur](/docs/de/plugins-reference#plugin-directory-structure).

306 

307<h3 id="test-your-plugins-locally">

308 Testen Sie Ihre Plugins lokal

309</h3>

310 

311Verwenden Sie das Flag `--plugin-dir`, um Plugins während der Entwicklung zu testen. Dies lädt Ihr Plugin direkt, ohne dass eine Installation erforderlich ist.

312 

313```bash theme={null}

314claude --plugin-dir ./my-plugin

315```

316 

317Das Flag akzeptiert auch ein `.zip`-Archiv des Plugin-Verzeichnisses.

318 

319```bash theme={null}

320claude --plugin-dir ./my-plugin.zip

321```

322 

323Wenn ein `--plugin-dir`-Plugin denselben Namen wie ein installiertes Marketplace-Plugin hat, hat die lokale Kopie in dieser Sitzung Vorrang. Dies ermöglicht es Ihnen, Änderungen an einem Plugin zu testen, das Sie bereits installiert haben, ohne es zuerst zu deinstallieren. Die Ausnahme sind Plugins, die durch verwaltete Einstellungen erzwungen aktiviert oder deaktiviert werden: `--plugin-dir` kann diese nicht überschreiben.

324 

325Wenn Sie Änderungen an Ihrem Plugin vornehmen, führen Sie `/reload-plugins` aus, um die Updates zu übernehmen, ohne neu zu starten. Dies lädt Plugins, Skills, Agents, Hooks, Plugin-MCP-Server und Plugin-LSP-Server neu; in einer Sitzung ohne interaktives Terminal warten Plugin-MCP-Server-Änderungen [auf Ihre nächste Sitzung](/docs/de/discover-plugins#apply-plugin-changes-without-restarting). Testen Sie Ihre Plugin-Komponenten:

326 

327* Versuchen Sie Ihre Skills mit `/plugin-name:skill-name`

328* Überprüfen Sie, dass Agents in `/context` unter Custom Agents angezeigt werden, oder erwähnen Sie einen mit seinem scoped Namen mit @

329* Lösen Sie das Ereignis aus, das jeder Hook erfasst, z. B. indem Sie Claude auffordern, eine Datei für einen `PostToolUse`-Hook zu bearbeiten, und bestätigen Sie seine Auswirkung. Claude Code zeichnet auf, welche Hooks erfasst wurden, ihre Exit-Codes und ihre Ausgabe im [Debug-Protokoll](/docs/de/hooks#debug-hooks)

330 

331<Tip>

332 Sie können mehrere Plugins gleichzeitig laden, indem Sie das Flag mehrmals angeben:

333 

334 ```bash theme={null}

335 claude --plugin-dir ./plugin-one --plugin-dir ./plugin-two

336 ```

337 

338 Um ein Plugin zusammen mit einem Plugin zu testen, von dem es abhängt, siehe [Testen Sie ein Plugin und seine Abhängigkeit lokal](/docs/de/plugin-dependencies#test-a-plugin-and-its-dependency-locally).

339</Tip>

340 

341Um Plugins in einer Sitzung zu laden, in der Sie das Flag nicht hinzufügen können, listen Sie ihre absoluten Pfade stattdessen in der Umgebungsvariablen [`CLAUDE_CODE_PLUGIN_DIRS`](/docs/de/env-vars#variables) auf. Claude Code lädt jeden Pfad wie einen `--plugin-dir`-Pfad. Diese Plugins werden zusätzlich zu allen geladen, die Sie mit `--plugin-dir` übergeben. [Projekt- und lokale Einstellungen können diese Variable nicht setzen](/docs/de/settings-reference#variables-claude-code-ignores-in-env). `CLAUDE_CODE_PLUGIN_DIRS` erfordert Claude Code v2.1.280 oder später.

342 

343Das Testen des Plugins mit `--plugin-dir` zeigt Ihnen, dass es funktionieren kann. Um herauszufinden, wie oft Claude tatsächlich danach greift und das richtige Ergebnis erhält, führen Sie es gegen eine Reihe von Test-Prompts mit [`claude plugin eval`](/docs/de/plugin-evals) aus. Jeder Prompt wird mehrmals mit und ohne das geladene Plugin ausgeführt, sodass Sie sehen können, was das Plugin beiträgt, und Regressionsfehler erkennen können, wenn Sie es ändern oder ein neues Modell ausgeliefert wird.

344 

345Um mehrere Plugins von einem Ort aus zu laden, übergeben Sie einen Ordner, der sie enthält, z. B. `--plugin-dir ./plugins`. Das Laden eines Ordners mit Plugins erfordert Claude Code v2.1.265 oder später. Claude Code liest die oberste Ebene des Ordners, um zu entscheiden, welche Plugins geladen werden, und in einer interaktiven Sitzung überwacht es auch den Ordner auf spätere Änderungen:

346 

347* **Was wird geladen**: Wenn der Ordner keine Manifest- oder Plugin-Komponenten auf seiner obersten Ebene hat, behandelt Claude Code ihn als einen Ordner mit Plugins. Jeder unmittelbare Unterordner, der ein `.claude-plugin/plugin.json`-Manifest hat, wird als separates Plugin geladen. Claude Code überspringt alles andere im Ordner ohne Fehlermeldung, einschließlich Plugins, die kein Manifest haben.

348* **Änderungen während einer interaktiven Sitzung**: Ein Unterordner, den Sie hinzufügen, wird als neues Plugin geladen, sobald sein Manifest vorhanden ist, und wenn Sie einen Unterordner entfernen, wird sein Plugin entladen. Claude Code druckt eine Zeile in der Sitzung für jede Änderung. Wenn das Anwenden einer Änderung mitten in der Konversation den [Prompt-Cache ungültig machen würde](/docs/de/prompt-caching#enabling-or-disabling-a-plugin), hält Claude Code sie an, und die Zeile sagt, dass Sie `/reload-plugins` ausführen sollen, um sie anzuwenden.

349 

350Um ein Plugin zu testen, das bereits als `.zip`-Archiv verpackt und unter einer URL gehostet wird, z. B. ein CI-Build-Artefakt, verwenden Sie stattdessen `--plugin-url`. Claude Code ruft das Archiv beim Start ab und lädt es nur für diese Sitzung. Wenn Claude Code das Archiv nicht abrufen kann oder das Archiv ungültig ist, startet es ohne das Plugin und zeichnet einen Plugin-Ladefehler auf, den Sie in der Registerkarte **Fehler** des `/plugin`-Managers überprüfen können. Die gleichen [Vertrauensüberlegungen](/docs/de/discover-plugins#security) gelten wie für jede andere Plugin-Quelle: Verweisen Sie dieses Flag nur auf Archive, die Sie kontrollieren oder denen Sie vertrauen.

351 

352Um mehrere Plugins zu laden, wiederholen Sie das Flag für jede URL:

353 

354```bash theme={null}

355claude --plugin-url https://example.com/my-plugin.zip --plugin-url https://example.com/other.zip

356```

357 

358Oder übergeben Sie durch Leerzeichen getrennte URLs als ein Argument in Anführungszeichen:

359 

360```bash theme={null}

361claude --plugin-url "https://example.com/my-plugin.zip https://example.com/other.zip"

362```

363 

364<h3 id="debug-plugin-issues">

365 Debuggen Sie Plugin-Probleme

366</h3>

367 

368Wenn Ihr Plugin nicht wie erwartet funktioniert:

369 

3701. **Überprüfen Sie die Struktur**: Stellen Sie sicher, dass Ihre Verzeichnisse auf der Plugin-Root sind, nicht in `.claude-plugin/`

3712. **Testen Sie Komponenten einzeln**: Überprüfen Sie jeden Skill, Agent und Hook separat

3723. **Verwenden Sie Validierungs- und Debugging-Tools**: Siehe [Debugging- und Entwicklungstools](/docs/de/plugins-reference#debugging-and-development-tools) für CLI-Befehle und Troubleshooting-Techniken

373 

374<h3 id="share-your-plugins">

375 Teilen Sie Ihre Plugins

376</h3>

377 

378Wenn Ihr Plugin bereit zum Teilen ist:

379 

3801. **Fügen Sie Dokumentation hinzu**: Fügen Sie eine `README.md` mit Installations- und Verwendungsanweisungen ein

3812. **Wählen Sie eine Versionierungsstrategie**: Entscheiden Sie, ob Sie eine explizite `version` setzen oder sich auf die im [Versionsverwaltung](/docs/de/plugins-reference#version-management) beschriebene Fallback-Lösung verlassen.

3823. **Erstellen oder verwenden Sie einen Marketplace**: Verteilen Sie über [Plugin-Marketplaces](/docs/de/plugin-marketplaces) zur Installation

3834. **Testen Sie mit anderen**: Lassen Sie Teamkollegen das Plugin vor einer breiteren Verteilung testen

384 

385Sobald Ihr Plugin in einem Marketplace ist, können andere es mit den Anweisungen in [Plugins entdecken und installieren](/docs/de/discover-plugins) installieren. Um ein Plugin intern für Ihr Team zu halten, hosten Sie den Marketplace in einem [privaten Repository](/docs/de/plugin-marketplaces#private-repositories).

386 

387<h3 id="submit-your-plugin-to-the-community-marketplace">

388 Reichen Sie Ihr Plugin beim Community-Marketplace ein

389</h3>

390 

391Anthropic verwaltet zwei öffentliche Marketplaces für Claude Code Plugins:

392 

393* **`claude-plugins-official`**: ein kuratierter Satz von Plugins, die von Anthropic verwaltet werden. Claude Code registriert ihn automatisch beim ersten Mal, wenn Sie Claude Code interaktiv starten. Wenn Sie Claude Code nicht-interaktiv ausführen, bevor dieser erste interaktive Start erfolgt, oder wenn eine [Marketplace-Richtlinie](/docs/de/plugin-marketplaces#managed-marketplace-restrictions) einen früheren Versuch blockiert hat, registrieren Sie ihn selbst mit `claude plugin marketplace add anthropics/claude-plugins-official`.

394* **`claude-community`**: der öffentliche Community-Marketplace, auf dem Drittanbieter-Einreichungen nach Überprüfung landen. Benutzer fügen ihn mit `/plugin marketplace add anthropics/claude-plugins-community` hinzu und installieren ihn als `@claude-community`.

395 

396Um Ihr Plugin zur Überprüfung im Community-Marketplace einzureichen, verwenden Sie eines der In-App-Formulare:

397 

398* **claude.ai**: [claude.ai/admin-settings/directory/submissions/plugins/new](https://claude.ai/admin-settings/directory/submissions/plugins/new)

399* **Console**: [platform.claude.com/plugins/submit](https://platform.claude.com/plugins/submit)

400 

401Das claude.ai-Formular erfordert eine Team- oder Enterprise-Organisation und Verzeichnisverwaltungszugriff; Organisationsinhaber haben diesen Zugriff standardmäßig. Einzelne Autoren, die nicht Teil einer Team- oder Enterprise-Organisation sind, können stattdessen das Console-Formular verwenden.

402 

403Führen Sie `claude plugin validate ./your-plugin` lokal aus, bevor Sie einreichen, und ersetzen Sie `./your-plugin` durch den Pfad zu Ihrem Plugin-Verzeichnis. Die Überprüfungs-Pipeline führt die gleiche Überprüfung bei jeder Einreichung durch, zusammen mit automatisierter Sicherheitsüberprüfung. Wenn die Validierung erfolgreich ist, druckt Claude Code `✔ Validation passed` oder `✔ Validation passed with warnings`, wenn es Warnungen gibt. Warnungen führen nicht zu einem Validierungsfehler; fügen Sie `--strict` hinzu, um sie als Fehler zu behandeln.

404 

405Genehmigte Plugins werden auf einen bestimmten Commit-SHA im Katalog [`anthropics/claude-plugins-community`](https://github.com/anthropics/claude-plugins-community) angeheftet, und CI erhöht die Anheftung automatisch, wenn Sie neue Commits in Ihr Repository pushen. Der öffentliche Katalog wird jede Nacht aus der Überprüfungs-Pipeline synchronisiert, daher kann es eine Verzögerung zwischen Genehmigung und dem Erscheinen Ihres Plugins in `marketplace.json` geben. Um zu überprüfen, ob Ihr Plugin bereits installierbar ist, suchen Sie nach seinem Namen im [Community-Katalog](https://github.com/anthropics/claude-plugins-community/blob/main/.claude-plugin/marketplace.json).

406 

407Der offizielle Marketplace, `claude-plugins-official`, wird separat kuratiert. Anthropic entscheidet nach eigenem Ermessen, welche Plugins einbezogen werden. Es gibt keinen Bewerbungsprozess, und das Einreichungsformular fügt Plugins nicht zum offiziellen Marketplace hinzu.

408 

409Wenn Anthropic Ihr Plugin im offiziellen Marketplace auflistet, kann Ihre CLI Claude Code-Benutzer auffordern, es zu installieren. Siehe [Empfehlen Sie Ihr Plugin von Ihrer CLI](/docs/de/plugin-hints).

410 

411<h2 id="convert-existing-configurations-to-plugins">

412 Konvertieren Sie vorhandene Konfigurationen in Plugins

413</h2>

414 

415Wenn Sie bereits Skills oder Hooks in Ihrem Verzeichnis `.claude/` haben, können Sie diese in ein Plugin konvertieren, um die Freigabe und Verteilung zu vereinfachen.

416 

417<h3 id="migration-steps">

418 Migrationschritte

419</h3>

420 

421<Steps>

422 <Step title="Erstellen Sie die Plugin-Struktur">

423 Erstellen Sie ein neues Plugin-Verzeichnis in Ihrem Projektstammverzeichnis neben dem vorhandenen Ordner `.claude/`, damit die relativen `cp`-Pfade im nächsten Schritt aufgelöst werden:

424 

425 ```bash theme={null}

426 mkdir -p my-plugin/.claude-plugin

427 ```

428 

429 Erstellen Sie die Manifestdatei unter `my-plugin/.claude-plugin/plugin.json`:

430 

431 ```json my-plugin/.claude-plugin/plugin.json theme={null}

432 {

433 "name": "my-plugin",

434 "description": "Migrated from standalone configuration",

435 "version": "1.0.0"

436 }

437 ```

438 </Step>

439 

440 <Step title="Kopieren Sie Ihre vorhandenen Dateien">

441 Kopieren Sie jedes Konfigurationsverzeichnis, das Sie haben, in das Plugin-Stammverzeichnis. Möglicherweise haben Sie nicht alle drei: Wenn ein Verzeichnis nicht vorhanden ist, gibt `cp` die Meldung `No such file or directory` aus und kopiert nichts, daher können Sie diesen Befehl überspringen oder den Fehler ignorieren.

442 

443 ```bash theme={null}

444 cp -r .claude/commands my-plugin/

445 

446 cp -r .claude/agents my-plugin/

447 

448 cp -r .claude/skills my-plugin/

449 ```

450 

451 Ihr Plugin enthält nun Kopien der Verzeichnisse, die Sie unter `.claude/` hatten. Führen Sie `ls my-plugin` aus, um dies zu bestätigen: Sie sollten jedes Verzeichnis sehen, das Sie kopiert haben.

452 </Step>

453 

454 <Step title="Migrieren Sie Hooks">

455 Wenn Sie Hooks in Ihren Einstellungen haben, erstellen Sie ein Hooks-Verzeichnis:

456 

457 ```bash theme={null}

458 mkdir my-plugin/hooks

459 ```

460 

461 Erstellen Sie `my-plugin/hooks/hooks.json` mit Ihrer Hooks-Konfiguration. Kopieren Sie das Objekt `hooks` aus Ihrer `.claude/settings.json` oder `settings.local.json`, da das Format gleich ist. Der Befehl empfängt Hook-Eingaben als JSON auf stdin, verwenden Sie also `jq`, um den Dateipfad zu extrahieren:

462 

463 ```json my-plugin/hooks/hooks.json theme={null}

464 {

465 "hooks": {

466 "PostToolUse": [

467 {

468 "matcher": "Write|Edit",

469 "hooks": [{ "type": "command", "command": "jq -r '.tool_input.file_path' | xargs npm run lint:fix" }]

470 }

471 ]

472 }

473 }

474 ```

475 </Step>

476 

477 <Step title="Testen Sie Ihr migriertes Plugin">

478 Laden Sie Ihr Plugin, um zu überprüfen, ob alles funktioniert:

479 

480 ```bash theme={null}

481 claude --plugin-dir ./my-plugin

482 ```

483 

484 Testen Sie jede Komponente: Führen Sie Ihre Befehle aus, überprüfen Sie, dass Agents in `/context` angezeigt werden, und lösen Sie das Ereignis aus, das jeder Hook abgleicht, um seine Auswirkung zu bestätigen. Claude Code zeichnet auf, welche Hooks abgeglichen wurden und wie sie beendet wurden, im [Debug-Protokoll](/docs/de/hooks#debug-hooks).

485 </Step>

486</Steps>

487 

488<h3 id="what-changes-when-migrating">

489 Was sich bei der Migration ändert

490</h3>

491 

492| Eigenständig (`.claude/`) | Plugin |

493| :---------------------------------------- | :---------------------------------------- |

494| Nur in einem Projekt verfügbar | Kann über Marketplaces freigegeben werden |

495| Dateien in `.claude/commands/` | Dateien in `plugin-name/commands/` |

496| Hooks in `settings.json` | Hooks in `hooks/hooks.json` |

497| Muss manuell kopiert werden, um zu teilen | Mit `/plugin install` installieren |

498 

499<Note>

500 Nach der Migration entfernen Sie die ursprünglichen Dateien aus `.claude/`, um Duplikate zu vermeiden. Projekt- und Benutzer-`.claude/agents/`-Definitionen überschreiben gleichnamige Plugin-Agents, daher wird die Plugin-Version erst wirksam, wenn die ursprünglichen Dateien entfernt werden. Plugin-Skills werden als `/plugin-name:skill-name` namensgebunden, daher bleiben sowohl das Original `/skill-name` als auch die Plugin-Kopie verfügbar, anstatt dass eines das andere überschreibt.

501</Note>

502 

503<h2 id="next-steps">

504 Nächste Schritte

505</h2>

506 

507Jetzt, da Sie das Plugin-System von Claude Code verstehen, finden Sie hier vorgeschlagene Pfade für verschiedene Ziele:

508 

509<h3 id="for-plugin-users">

510 Für Plugin-Benutzer

511</h3>

512 

513* [Plugins entdecken und installieren](/docs/de/discover-plugins): Durchsuchen Sie Marketplaces und installieren Sie Plugins

514* [Konfigurieren Sie Team-Marketplaces](/docs/de/discover-plugins#configure-team-marketplaces): Richten Sie Repository-Level-Plugins für Ihr Team ein

515 

516<h3 id="for-plugin-developers">

517 Für Plugin-Entwickler

518</h3>

519 

520* [Testen Sie Plugins mit Evals](/docs/de/plugin-evals): Messen Sie, was Ihr Plugin ändert, und gaten Sie CI darauf

521* [Erstellen und verteilen Sie einen Marketplace](/docs/de/plugin-marketplaces): Verpacken und teilen Sie Ihre Plugins

522* [Plugins-Referenz](/docs/de/plugins-reference): Vollständige technische Spezifikationen

523* Tauchen Sie tiefer in spezifische Plugin-Komponenten ein:

524 * [Skills](/docs/de/skills): Details zur Skill-Entwicklung

525 * [Subagents](/docs/de/sub-agents): Agent-Konfiguration und Fähigkeiten

526 * [Hooks](/docs/de/hooks): Event-Handling und Automatisierung

527 * [MCP](/docs/de/mcp): Integration externer Tools

plugins-reference.md +0 −1645 deleted

File Deleted View Diff

1> ## Documentation Index

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

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

4 

5# Plugins-Referenz

6 

7> Vollständige technische Referenz für das Claude Code Plugin-System, einschließlich Schemas, CLI-Befehle und Komponentenspezifikationen.

8 

9<Tip>

10 Möchten Sie Plugins installieren? Siehe [Plugins entdecken und installieren](/docs/de/discover-plugins). Zum Erstellen von Plugins siehe [Plugins](/docs/de/plugins). Zum Verteilen von Plugins siehe [Plugin-Marktplätze](/docs/de/plugin-marketplaces).

11</Tip>

12 

13Ein **Plugin** ist ein eigenständiges Verzeichnis von Komponenten, das Claude Code mit benutzerdefinierten Funktionen erweitert. Plugin-Komponenten umfassen Skills, Agents, Hooks, MCP-Server, LSP-Server und Monitore.

14 

15<h2 id="plugin-components-reference">

16 Referenz für Plugin-Komponenten

17</h2>

18 

19<h3 id="skills">

20 Skills

21</h3>

22 

23Plugins fügen Claude Code Skills hinzu und erstellen `/name` Shortcuts, die Sie oder Claude aufrufen können.

24 

25**Speicherort**: `skills/` oder `commands/` Verzeichnis im Plugin-Root oder eine einzelne `SKILL.md` Datei im Plugin-Root

26 

27**Dateiformat**: Skills sind Verzeichnisse mit `SKILL.md`; Commands sind einfache Markdown-Dateien

28 

29**Skill-Struktur**:

30 

31```text theme={null}

32skills/

33├── pdf-processor/

34│ ├── SKILL.md

35│ ├── reference.md (optional)

36│ └── scripts/ (optional)

37└── code-reviewer/

38 └── SKILL.md

39```

40 

41Skills und Commands werden automatisch erkannt, wenn das Plugin installiert wird.

42 

43Wenn ein Plugin kein `skills/` Verzeichnis und kein `skills` Manifest-Feld hat, wird eine `SKILL.md` im Plugin-Root als einzelner Skill geladen. Setzen Sie das Frontmatter-Feld `name`, um den Aufrufen-Namen des Skills zu steuern. Ohne dieses Feld greift Claude Code auf den Installationsverzeichnisnamen zurück. Für ein Plugin, das [in den Cache kopiert wurde](#plugin-caching-and-file-resolution), ist dieser Name ein Versionsstring, der sich bei jedem Update ändert. Für Plugins, die mehr als einen Skill bereitstellen, verwenden Sie das oben gezeigte `skills/` Verzeichnis-Layout.

44 

45In Plugin-Skills und Commands akzeptieren Boolean-Frontmatter-Felder wie `disable-model-invocation` `yes`, `no`, `on`, `off`, `1` und `0` in beliebiger Schreibweise zusätzlich zu `true` und `false`. Vor v2.1.218 erkannte Claude Code nur `true` und `false`.

46 

47Vollständige Details finden Sie unter [Skills](/docs/de/skills).

48 

49<h3 id="agents">

50 Agents

51</h3>

52 

53Plugins können spezialisierte Subagents für spezifische Aufgaben bereitstellen, die Claude automatisch aufrufen kann, wenn dies angemessen ist.

54 

55**Speicherort**: `agents/` Verzeichnis im Plugin-Root

56 

57**Dateiformat**: Markdown-Dateien, die Agent-Fähigkeiten beschreiben

58 

59**Agent-Struktur**:

60 

61```markdown theme={null}

62name: agent-name

63description: Worauf sich dieser Agent spezialisiert und wann Claude ihn aufrufen sollte

64model: sonnet

65effort: medium

66maxTurns: 20

67disallowedTools: Write, Edit

68 

69Detaillierte Systemaufforderung für den Agent, die seine Rolle, Expertise und sein Verhalten beschreibt.

70```

71 

72<h4 id="plugin-agent-frontmatter">

73 Plugin-Agent-Frontmatter

74</h4>

75 

76Eine Plugin-Agent-Datei verwendet die gleichen [Frontmatter-Felder wie eine Subagent-Datei](/docs/de/sub-agents#supported-frontmatter-fields), aber Claude Code berücksichtigt nur einige davon, wenn der Agent von einem Plugin stammt:

77 

78* **Unterstützt**: `name`, `description`, `model`, `effort`, `maxTurns`, `tools`, `disallowedTools`, `skills`, `memory`, `background`, `omitClaudeMd`, `isolation`, `color` und `experimental`. Der einzige gültige `isolation` Wert ist `"worktree"`.

79* **Nicht unterstützt, aus Sicherheitsgründen**: `hooks`, `mcpServers` und `permissionMode`. Claude Code ignoriert diese, wenn der Agent von einem Plugin geladen wird. Um sie zu verwenden, kopieren Sie die Agent-Datei in `.claude/agents/` oder `~/.claude/agents/`.

80* **Nicht unterstützt**: `initialPrompt`.

81 

82Sie können Plugin-Agent-Dateien in Unterordnern von `agents/` ablegen. Claude Code [lädt sie rekursiv](/docs/de/sub-agents#choose-the-subagent-scope) und verbindet den Plugin-Namen, jeden Unterordnernamen und den Dateinamen mit Doppelpunkten, um den scoped Namen des Agents zu bilden. Zum Beispiel wird `agents/review/security.md` in einem Plugin namens `my-plugin` als `my-plugin:review:security` geladen. Zwei Einstellungen ändern diesen Namen:

83 

84* Frontmatter `name`: Es ersetzt nur den Dateinamen, daher wird `name: audit` in `agents/review/security.md` als `my-plugin:review:audit` geladen

85* Manifest [`agents`](#component-path-fields) Feld: Eine Datei, die Sie dort auflisten, wird ohne Unterordnernamen geladen, daher wird `"agents": "./custom/review/security.md"` als `my-plugin:security` geladen

86 

87Claude Code lädt einen Plugin-Agent auch dann, wenn sein Frontmatter kein `name` Feld hat oder nicht geparst werden kann:

88 

89* Kein `name`: Claude Code benennt den Agent nach der Datei, also wird `agents/reviewer.md` in einem Plugin namens `my-plugin` als `my-plugin:reviewer` geladen

90* Frontmatter, das nicht geparst werden kann: Claude Code benennt den Agent nach der Datei, verwendet `Agent from my-plugin plugin` als Beschreibung und ignoriert jedes Feld in der Datei

91 

92Im Gegensatz dazu überspringt Claude Code eine Projekt-, Benutzer- oder verwaltete Agent-Datei, deren Frontmatter kein `name` Feld hat oder nicht geparst werden kann.

93 

94Um Dateien im Standard-`agents/` Verzeichnis eines Plugins zu finden, deren Frontmatter nicht geparst werden kann, führen Sie `claude plugin validate` aus. Der Pfad, den Sie übergeben, hängt davon ab, ob das Plugin ein Manifest hat, und beide Beispiele verwenden `./my-plugin` als Plugin-Verzeichnis:

95 

96* Ein Plugin mit Manifest: `claude plugin validate ./my-plugin`

97* Ein Plugin ohne Manifest: `claude plugin validate ./my-plugin/agents`. Erfordert Claude Code v2.1.233 oder später.

98 

99Agents erscheinen in der [@-Mention Typeahead](/docs/de/sub-agents#invoke-subagents-explicitly) unter ihrem scoped Namen, wie `my-plugin:code-reviewer`, sobald das Plugin aktiviert ist.

100 

101Vollständige Details finden Sie unter [Subagents](/docs/de/sub-agents).

102 

103<h3 id="hooks">

104 Hooks

105</h3>

106 

107Plugins können Event-Handler bereitstellen, die automatisch auf Claude Code Events reagieren.

108 

109**Speicherort**: `hooks/hooks.json` im Plugin-Root oder inline in plugin.json

110 

111**Format**: JSON-Konfiguration mit Event-Matchern und Aktionen

112 

113`hooks/hooks.json` kann einen Top-Level-Schlüssel `$schema` enthalten, der eine JSON-Schema-URL für Editor-Autovervollständigung und Validierung benennt. Claude Code ignoriert den Schlüssel beim Laden.

114 

115**Hook-Konfiguration**:

116 

117```json theme={null}

118{

119 "hooks": {

120 "PostToolUse": [

121 {

122 "matcher": "Write|Edit",

123 "hooks": [

124 {

125 "type": "command",

126 "command": "\"${CLAUDE_PLUGIN_ROOT}\"/scripts/format-code.sh"

127 }

128 ]

129 }

130 ]

131 }

132}

133```

134 

135Plugin-Hooks reagieren auf die gleichen Lifecycle-Events wie [benutzerdefinierte Hooks](/docs/de/hooks):

136 

137| Ereignis | Wann es ausgelöst wird |

138| :-------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

139| `SessionStart` | Wenn eine Sitzung beginnt oder fortgesetzt wird |

140| `Setup` | Wenn Sie Claude Code mit `--init-only` starten oder mit `--init` oder `--maintenance` im `-p`-Modus. Für einmalige Vorbereitung in CI oder Skripten |

141| `UserPromptSubmit` | Wenn Sie eine Eingabeaufforderung absenden, bevor Claude sie verarbeitet |

142| `UserPromptExpansion` | Wenn ein von Ihnen eingegebener Befehl in eine Eingabeaufforderung erweitert wird, bevor sie Claude erreicht. Kann die Erweiterung blockieren |

143| `PreToolUse` | Bevor ein Werkzeugaufruf ausgeführt wird. Kann ihn blockieren |

144| `PermissionRequest` | Wenn ein Werkzeugaufruf eine Genehmigungsentscheidung benötigt |

145| `PermissionDenied` | Wenn der automatische Modus einen Werkzeugaufruf ablehnt, einschließlich Ablehnungen ohne Klassifizierer-Urteil. Verwenden Sie JSON `hookSpecificOutput.retry: true`, um dem Modell mitzuteilen, dass es den abgelehnten Werkzeugaufruf möglicherweise erneut versuchen kann. Claude Code ignoriert `retry`, wenn der Klassifizierer kein Urteil gefällt hat |

146| `PostToolUse` | Nach erfolgreichem Werkzeugaufruf |

147| `PostToolUseFailure` | Nach fehlgeschlagenem Werkzeugaufruf |

148| `PostToolBatch` | Nach Auflösung eines vollständigen Satzes paralleler Werkzeugaufrufe, bevor der nächste Modellaufruf erfolgt |

149| `Notification` | Wenn Claude Code eine Benachrichtigung sendet |

150| `MessageDisplay` | Während der Text der Assistentnachricht angezeigt wird |

151| `SubagentStart` | Wenn ein Subagent erzeugt wird |

152| `SubagentStop` | Wenn ein Subagent beendet wird |

153| `TaskCreated` | Wenn eine Aufgabe über `TaskCreate` erstellt wird |

154| `TaskCompleted` | Wenn eine Aufgabe als abgeschlossen markiert wird |

155| `Stop` | Wenn Claude die Antwort beendet |

156| `StopFailure` | Wenn die Runde aufgrund eines API-Fehlers endet |

157| `TeammateIdle` | Wenn ein [Agent-Team](/docs/de/agent-teams)-Teamkollege im Begriff ist, untätig zu werden |

158| `InstructionsLoaded` | Wenn eine CLAUDE.md- oder `.claude/rules/*.md`-Datei in den Kontext geladen wird. Wird beim Sitzungsstart und beim verzögerten Laden von Dateien während einer Sitzung ausgelöst |

159| `ConfigChange` | Wenn sich eine Konfigurationsdatei während einer Sitzung ändert |

160| `CwdChanged` | Wenn sich das Arbeitsverzeichnis ändert, z. B. wenn Claude einen `cd`-Befehl ausführt. Nützlich für reaktive Umgebungsverwaltung mit Tools wie direnv |

161| `DirectoryAdded` | Wenn ein Arbeitsverzeichnis während einer Sitzung über `/add-dir` oder die SDK-Steueranforderung `register_repo_root` hinzugefügt wird |

162| `FileChanged` | Wenn sich eine überwachte Datei auf der Festplatte ändert. Das Feld `matcher` gibt an, welche Dateinamen überwacht werden sollen |

163| `WorktreeCreate` | Wenn ein Worktree über `--worktree`, `isolation: "worktree"` oder für eine Hintergrundsitzung erstellt wird. Ersetzt das Standard-Git-Verhalten |

164| `WorktreeRemove` | Wenn ein Worktree beim Sitzungsende, beim Beenden eines Subagenten oder beim Löschen einer Hintergrundsitzung entfernt wird |

165| `PreCompact` | Vor Kontextkomprimierung |

166| `PostCompact` | Nach Abschluss der Kontextkomprimierung |

167| `PreModelSwitch` | Bevor Claude Code einen Modellwechsel anwendet, den Sie oder ein Client angefordert haben. Kann den Wechsel blockieren |

168| `PostModelSwitch` | Nach Änderung des Modells der Sitzung, einschließlich Änderungen, die Claude Code selbst vornimmt, z. B. Wiederherstellung des Modells beim Fortsetzen einer Sitzung |

169| `Elicitation` | Wenn ein MCP-Server während eines Werkzeugaufrufs Benutzereingaben anfordert |

170| `ElicitationResult` | Nachdem ein Benutzer auf eine MCP-Abfrage antwortet, bevor die Antwort an den Server zurückgesendet wird |

171| `SessionEnd` | Wenn eine Sitzung beendet wird |

172 

173**Hook-Typen**:

174 

175* `command`: Shell-Commands oder Scripts ausführen

176* `http`: Das Event-JSON als POST-Request an eine URL senden

177* `mcp_tool`: Ein Tool auf einem konfigurierten [MCP Server](/docs/de/mcp) aufrufen

178* `prompt`: Eine Aufforderung mit einem LLM evaluieren (verwendet `$ARGUMENTS` Platzhalter für Kontext)

179* `agent`: Einen agentic Verifier mit Tools für komplexe Verifikationsaufgaben ausführen

180 

181Hooks, die auf den eigenen [gebündelten MCP Server](#mcp-servers) des Plugins abzielen, müssen seine scoped Namen verwenden. Tool-Matcher und `if` Felder verwenden den scoped Tool-Namen `mcp__plugin_<plugin-name>_<server-name>__<tool>`, und das `server` Feld eines `mcp_tool` Hooks verwendet `plugin:<plugin-name>:<server-name>`. Ein Matcher, der gegen den bloßen Server-Schlüssel geschrieben wird, wird nie ausgelöst. Siehe [Match MCP tools](/docs/de/hooks#match-mcp-tools) und [Plugin-bereitgestellte MCP Server](/docs/de/mcp#plugin-provided-mcp-servers).

182 

183<h3 id="mcp-servers">

184 MCP servers

185</h3>

186 

187Plugins können Model Context Protocol (MCP) Server bündeln, um Claude Code mit externen Tools und Services zu verbinden.

188 

189**Speicherort**: `.mcp.json` im Plugin-Root oder inline in plugin.json

190 

191**Format**: Standard MCP Server-Konfiguration

192 

193**MCP Server-Konfiguration**:

194 

195```json theme={null}

196{

197 "mcpServers": {

198 "plugin-database": {

199 "command": "${CLAUDE_PLUGIN_ROOT}/servers/db-server",

200 "args": ["--config", "${CLAUDE_PLUGIN_ROOT}/config.json"],

201 "env": {

202 "DB_PATH": "${CLAUDE_PLUGIN_ROOT}/data"

203 }

204 },

205 "plugin-api-client": {

206 "command": "npx",

207 "args": ["@company/mcp-server", "--plugin-mode"]

208 }

209 }

210}

211```

212 

213**Integrations-Verhalten**:

214 

215* Plugin MCP Server starten automatisch, wenn das Plugin aktiviert ist

216* Server erscheinen als Standard MCP Tools in Claudes Toolkit

217* Plugin Server können unabhängig von Benutzer MCP Servern konfiguriert werden

218* Wenn Sie [`/reload-plugins`](/docs/de/discover-plugins#apply-plugin-changes-without-restarting) während einer Session ausführen, behält Claude Code die Live-Verbindungen von Servern bei, deren Konfiguration unverändert ist

219 

220<h3 id="lsp-servers">

221 LSP servers

222</h3>

223 

224<Tip>

225 Möchten Sie LSP Plugins verwenden? Installieren Sie diese aus dem offiziellen Marketplace: Suchen Sie nach "lsp" im `/plugin` Discover Tab. Dieser Abschnitt dokumentiert, wie Sie LSP Plugins für Sprachen erstellen, die nicht vom offiziellen Marketplace abgedeckt werden.

226</Tip>

227 

228Plugins können [Language Server Protocol](https://microsoft.github.io/language-server-protocol/) (LSP) Server bereitstellen, um Claude [Echtzeit-Code-Intelligenz](/docs/de/discover-plugins#code-intelligence) beim Arbeiten an Ihrer Codebasis zu geben.

229 

230**Speicherort**: `.lsp.json` im Plugin-Root oder inline in `plugin.json`

231 

232**Format**: JSON-Konfiguration, die Language Server Namen ihren Konfigurationen zuordnet

233 

234**`.lsp.json` Dateiformat**:

235 

236```json theme={null}

237{

238 "go": {

239 "command": "gopls",

240 "args": ["serve"],

241 "extensionToLanguage": {

242 ".go": "go"

243 }

244 }

245}

246```

247 

248**Inline in `plugin.json`**:

249 

250```json theme={null}

251{

252 "name": "my-plugin",

253 "lspServers": {

254 "go": {

255 "command": "gopls",

256 "args": ["serve"],

257 "extensionToLanguage": {

258 ".go": "go"

259 }

260 }

261 }

262}

263```

264 

265**Erforderliche Felder:**

266 

267| Feld | Beschreibung |

268| :-------------------- | :--------------------------------------------------- |

269| `command` | Die auszuführende LSP-Binärdatei (muss in PATH sein) |

270| `extensionToLanguage` | Ordnet Dateierweiterungen Sprachbezeichnern zu |

271 

272**Optionale Felder:**

273 

274| Feld | Beschreibung |

275| :---------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

276| `args` | Befehlszeilenargumente für den LSP Server |

277| `transport` | Kommunikations-Transport: `stdio` (Standard) oder `socket`. Claude Code akzeptiert `socket`, führt aber jeden Server über stdio aus, daher gelten die stdout-Protokoll-Regeln für alle Server |

278| `env` | Umgebungsvariablen, die beim Starten des Servers gesetzt werden |

279| `initializationOptions` | Optionen, die während der Initialisierung an den Server übergeben werden |

280| `settings` | Einstellungen, die über `workspace/didChangeConfiguration` übergeben werden |

281| `workspaceFolder` | Workspace-Ordnerpfad für den Server |

282| `startupTimeout` | Maximale Wartezeit für Server-Start (Millisekunden) |

283| `shutdownTimeout` | Maximale Wartezeit für ordnungsgemäßes Herunterfahren (Millisekunden). Wenn das Timeout abläuft, beendet Claude Code den Server-Prozess. Wenn nicht gesetzt, gilt kein Timeout |

284| `restartOnCrash` | Ob der Server nach einem Absturz neu gestartet werden soll. Standard ist `true`. Setzen Sie auf `false`, um einen abgestürzten Server gestoppt zu lassen, anstatt ihn neu zu starten |

285| `maxRestarts` | Maximale Anzahl von Neustartversuchen, bevor aufgegeben wird |

286| `diagnostics` | Ob Diagnostiken nach Änderungen in Claudes Kontext eingefügt werden sollen (Standard `true`). Setzen Sie auf `false`, um Code-Navigation beizubehalten, aber automatische Diagnostik-Einspeisung zu unterdrücken. |

287 

288`restartOnCrash` und `shutdownTimeout` erfordern Claude Code v2.1.205 oder später. Vor v2.1.205 akzeptierte das Config-Schema beide Optionen, aber das Setzen einer dieser Optionen führte dazu, dass Claude Code diesen LSP Server beim Start vollständig übersprang, wobei der Grund nur in der `claude --debug` Ausgabe sichtbar war.

289 

290**Mehrere Server für die gleiche Erweiterung**: Wenn mehr als ein aktivierter LSP Server die gleiche Dateierweiterung in `extensionToLanguage` deklariert, ob die Server von einem Plugin oder von verschiedenen Plugins stammen, verarbeitet der zuerst registrierte Server Dateien mit dieser Erweiterung und die anderen starten nie. Die `/plugin` Schnittstelle zeigt eine Warnung an, die das Plugin benennt, dessen Server aktiv ist.

291 

292**Server, die nicht initialisiert werden können**: Claude Code überspringt einen Server, dessen Konfiguration ungültig ist, z. B. einer, dem `command` oder `extensionToLanguage` fehlt, und die anderen konfigurierten Server starten trotzdem. Führen Sie `claude --debug` aus, um zu sehen, warum ein Server übersprungen wurde.

293 

294Ein übersprungener Server beansprucht seine Dateierweiterungen nicht, daher kann ein anderer gültiger Server, der die gleiche Erweiterung deklariert, vom gleichen oder einem anderen Plugin, diese Dateien trotzdem verarbeiten.

295 

296**Senden Sie Log-Ausgabe an stderr, nicht stdout**: Claude Code liest den stdout eines Servers nur als Protokollmeldungen und akzeptiert Nachrichtenheader bis zu 64 KiB und einen Nachrichtentext bis zu 32 MiB. Claude Code trennt einen Server, der eines dieser Limits überschreitet oder nicht-Protokoll-Ausgabe an stdout schreibt, und zählt die Trennung als Absturz für `restartOnCrash` und `maxRestarts`. Wenn Sie mit `--debug` ausführen, schreibt Claude Code einen Fehler, der die Ursache benennt, in das Debug-Log.

297 

298<Warning>

299 **Sie müssen die Language Server Binärdatei separat installieren.** LSP Plugins konfigurieren, wie Claude Code sich mit einem Language Server verbindet, aber sie enthalten den Server selbst nicht. Wenn Sie `Executable not found in $PATH` im `/plugin` Errors Tab sehen, installieren Sie die erforderliche Binärdatei für Ihre Sprache.

300</Warning>

301 

302**Verfügbare LSP Plugins:**

303 

304| Plugin | Language Server | Installationsbefehl |

305| :------------------ | :------------------------- | :------------------------------------------------------------------------------------------- |

306| `pyright-lsp` | Pyright (Python) | `pip install pyright` oder `npm install -g pyright` |

307| `typescript-lsp` | TypeScript Language Server | `npm install -g typescript-language-server typescript` |

308| `rust-analyzer-lsp` | rust-analyzer | [Siehe rust-analyzer Installation](https://rust-analyzer.github.io/manual.html#installation) |

309 

310Installieren Sie zuerst den Language Server und dann das Plugin aus dem Marketplace.

311 

312<h3 id="monitors">

313 Monitors

314</h3>

315 

316Plugins können Background-Monitore deklarieren, die Claude Code automatisch startet, wenn das Plugin aktiv ist. Jeder Monitor führt einen Shell-Befehl für die Lebensdauer der Session aus und liefert jede stdout-Zeile als Benachrichtigung an Claude, damit Claude auf Log-Einträge, Statusänderungen oder abgerufene Events reagieren kann, ohne aufgefordert zu werden, die Überwachung selbst zu starten.

317 

318Plugin-Monitore verwenden den gleichen Mechanismus wie das [Monitor Tool](/docs/de/tools-reference#monitor-tool) und teilen seine Verfügbarkeitsbeschränkungen. Sie laufen nur in interaktiven CLI-Sessions, laufen unsandboxed auf der gleichen Vertrauensebene wie [Hooks](#hooks) und werden auf Hosts übersprungen, wo das Monitor Tool nicht verfügbar ist.

319 

320**Speicherort**: `monitors/monitors.json` im Plugin-Root oder inline in `plugin.json`

321 

322**Format**: JSON-Array von Monitor-Einträgen

323 

324Die folgende `monitors/monitors.json` überwacht einen Deployment-Status-Endpunkt und ein lokales Error-Log:

325 

326```json theme={null}

327[

328 {

329 "name": "deploy-status",

330 "command": "\"${CLAUDE_PLUGIN_ROOT}\"/scripts/poll-deploy.sh",

331 "description": "Deployment status changes"

332 },

333 {

334 "name": "error-log",

335 "command": "tail -F ./logs/error.log",

336 "description": "Application error log",

337 "when": "on-skill-invoke:debug"

338 }

339]

340```

341 

342Um Monitore inline zu deklarieren, setzen Sie `experimental.monitors` in `plugin.json` auf das gleiche Array. Um von einem nicht-Standard-Pfad zu laden, setzen Sie `experimental.monitors` auf einen relativen Pfad-String wie `"./config/monitors.json"`. Monitore sind eine [experimentelle Komponente](#experimental-components).

343 

344**Erforderliche Felder:**

345 

346| Feld | Beschreibung |

347| :------------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------- |

348| `name` | Bezeichner, der innerhalb des Plugins eindeutig ist. Verhindert doppelte Prozesse, wenn das Plugin neu geladen wird oder ein Skill erneut aufgerufen wird |

349| `command` | Shell-Befehl, der als persistenter Background-Prozess im Session-Arbeitsverzeichnis ausgeführt wird |

350| `description` | Kurze Zusammenfassung dessen, was überwacht wird. Wird im Task-Panel und in Benachrichtigungszusammenfassungen angezeigt |

351 

352**Optionale Felder:**

353 

354| Feld | Beschreibung |

355| :----- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

356| `when` | Steuert, wann der Monitor startet. `"always"` startet ihn beim Session-Start und beim Plugin-Reload und ist der Standard. `"on-skill-invoke:<skill-name>"` startet ihn das erste Mal, wenn der benannte Skill in diesem Plugin versendet wird |

357 

358Der `command` Wert unterstützt die [Pfad-Substitutionen](#environment-variables) `${CLAUDE_PLUGIN_ROOT}`, `${CLAUDE_PLUGIN_DATA}` und `${CLAUDE_PROJECT_DIR}`, plus alle `${ENV_VAR}` aus der Umgebung. Präfixieren Sie den Befehl mit `cd "${CLAUDE_PLUGIN_ROOT}" && `, wenn das Script aus dem eigenen Verzeichnis des Plugins ausgeführt werden muss.

359 

360Ein Monitor `command` kann nicht auf [`${user_config.*}`](#user-configuration) Werte verweisen. Der Befehl läuft durch eine Shell, daher lehnt Claude Code den Monitor mit einem [Fehler](/docs/de/errors#plugin-command-references-user-config) ab, anstatt den Wert zu ersetzen. Monitor-Prozesse erhalten keine `CLAUDE_PLUGIN_OPTION_<KEY>` Umgebungsvariablen, daher sollte das Monitor-Script den Wert aus einer Konfigurationsdatei lesen, die es besitzt.

361 

362Wenn Sie ein Plugin während einer Session deaktivieren, stoppt Claude Code nicht die Monitore, die bereits laufen; sie stoppen, wenn die Session endet.

363 

364<h3 id="themes">

365 Themes

366</h3>

367 

368Plugins können Farbthemes bereitstellen, die in `/theme` neben den integrierten Voreinstellungen und den lokalen Themes des Benutzers erscheinen. Ein Theme ist eine JSON-Datei in `themes/` mit einer `base` Voreinstellung und einer sparsamen `overrides` Map von Farb-Tokens. Themes sind eine [experimentelle Komponente](#experimental-components).

369 

370```json theme={null}

371{

372 "name": "Dracula",

373 "base": "dark",

374 "overrides": {

375 "claude": "#bd93f9",

376 "error": "#ff5555",

377 "success": "#50fa7b"

378 }

379}

380```

381 

382Wenn ein Benutzer ein Plugin-Theme auswählt, speichert Claude Code `custom:<plugin-name>:<slug>` in seiner Konfiguration. Plugin-Themes sind schreibgeschützt: Wenn ein Benutzer `Ctrl+E` auf einem in `/theme` drückt, kopiert Claude Code es in `~/.claude/themes/`, damit er die Kopie bearbeiten kann.

383 

384***

385 

386<h2 id="plugin-installation-scopes">

387 Installationsbereiche für Plugins

388</h2>

389 

390Wenn Sie ein Plugin installieren, wählen Sie einen **Bereich** aus, der bestimmt, wo das Plugin verfügbar ist und wer es sonst noch verwenden kann:

391 

392| Bereich | Einstellungsdatei | Anwendungsfall |

393| :-------- | :--------------------------------------- | :---------------------------------------------------------------------------------------- |

394| `user` | `~/.claude/settings.json` | Persönliche Plugins, die in allen Projekten verfügbar sind (Standard) |

395| `project` | `.claude/settings.json` | Team-Plugins, die über Versionskontrolle freigegeben werden |

396| `local` | `.claude/settings.local.json` | Projektspezifische Plugins, gitignored, wenn Claude Code eine Einstellung darin speichert |

397| `managed` | [Managed settings](/docs/de/managed-settings) | Verwaltete Plugins (schreibgeschützt, nur Update) |

398 

399Plugins verwenden das gleiche Bereichssystem wie andere Claude Code-Konfigurationen. Installationsanweisungen und Bereichsflags finden Sie unter [Plugins installieren](/docs/de/discover-plugins#install-plugins). Eine vollständige Erklärung der Bereiche finden Sie unter [Konfigurationsbereiche](/docs/de/settings#where-settings-live).

400 

401***

402 

403<h2 id="skills-directory-plugins">

404 Plugins aus dem Skills-Verzeichnis

405</h2>

406 

407Jeder Ordner unter einem Skills-Verzeichnis, der ein `.claude-plugin/plugin.json`-Manifest enthält, wird in der nächsten Sitzung als Plugin mit dem Namen `<name>@skills-dir` geladen, ohne Marketplace und ohne Installationsschritt. Erstellen Sie eines mit [`plugin init`](#plugin-init). Im Gegensatz zu einer kopierten Marketplace-Installation wird das Plugin an Ort und Stelle erkannt, anstatt in den Plugin-Cache kopiert zu werden.

408 

409Eine Skills-Verzeichnisstruktur unterstützt drei verschiedene Dinge:

410 

411| Was Sie haben | Was es ist |

412| :-------------------------------------------- | :----------------------------------------------------------------------------------------- |

413| `<skills-dir>/foo/SKILL.md` ohne Manifest | Ein einfaches [Skill](/docs/de/skills) mit dem Namen `foo` |

414| `<skills-dir>/foo/.claude-plugin/plugin.json` | Ein Plugin `foo@skills-dir`, das seine eigenen Skills, Agents, Hooks und mehr bündeln kann |

415| `<plugin>/skills/bar/SKILL.md` | Ein Skill `bar`, das in einem Plugin verpackt ist |

416 

417<h3 id="choose-where-the-plugin-loads-from">

418 Wählen Sie, von wo aus das Plugin geladen wird

419</h3>

420 

421| Skills-Verzeichnis | Bereich | Lädt |

422| :---------------------- | :--------- | :--------------------------------------------------------------------------------------------------------------------------------------- |

423| `~/.claude/skills/` | persönlich | In jedem Projekt, da der Speicherort nur Ihnen gehört |

424| `<cwd>/.claude/skills/` | Projekt | Nur nachdem Sie den Workspace-[Vertrauensdialog](/docs/de/permissions#what-runs-before-you-trust-a-folder) für diesen Ordner akzeptiert haben |

425 

426Ein Plugin im Projektbereich wird in das Repository eingecheckt und erreicht jeden Mitarbeiter, der es klont. Da dieser Inhalt aus dem Repository und nicht von Ihnen stammt, wird er nur nach demselben Vertrauenstor geladen, das die Projekterlaubnisregeln in `.claude/settings.json` regelt. Das Vertrauen in einen übergeordneten Ordner oder das Ausführen mit `-p` ist daher nicht ausreichend, und Komponenten, die Code ausführen, sind weiter eingeschränkt:

427 

428* MCP-Server, die es deklariert, durchlaufen die [gleiche Pro-Server-Genehmigung](/docs/de/mcp) wie ein Projekt `.mcp.json`

429* LSP-Server starten nur, nachdem Sie den Workspace vertrauen

430* [Hintergrund-Monitore](#monitors) werden nicht geladen

431 

432Plugins im persönlichen Bereich haben keine dieser Einschränkungen.

433 

434<Warning>

435 Plugins im Projektbereich `@skills-dir` werden nur aus dem `.claude/skills/` des [primären Arbeitsverzeichnisses](/docs/de/permissions#working-directories) der Sitzung geladen. Sie [gehen nicht bis zur Repository-Root](/docs/de/skills#discovery-from-parent-and-nested-directories) wie einfache Skills und Befehle, daher wird ein Plugin, das sich im Repository-Root befindet, übersehen, wenn Sie von einem Unterverzeichnis aus starten. Starten Sie vom Repository-Root, oder [verschieben Sie die Sitzung mit `/cd`](/docs/de/permissions#move-the-session-to-another-directory) auf v2.1.246 oder später dorthin.

436</Warning>

437 

438<h3 id="edit-reload-and-disable-a-skills-directory-plugin">

439 Bearbeiten, neu laden und deaktivieren Sie ein Plugin aus dem Skills-Verzeichnis

440</h3>

441 

442Änderungen, die Sie an der `SKILL.md` eines Skills vornehmen, werden sofort in der aktuellen Sitzung wirksam. Änderungen an anderen Komponenten des Plugins, wie `hooks/`, `.mcp.json`, `agents/` und `output-styles/`, werden nicht wirksam. Führen Sie `/reload-plugins` aus oder starten Sie Claude Code neu, um diese zu übernehmen. Siehe [Live-Änderungserkennung](/docs/de/skills#live-change-detection).

443 

444Um das Laden eines Plugins aus dem Skills-Verzeichnis zu beenden, löschen Sie seinen Ordner oder deaktivieren Sie es nach Name. Es gibt keinen `uninstall`-Schritt, da nichts von einem Marketplace installiert wurde.

445 

446```bash theme={null}

447claude plugin disable my-tool@skills-dir

448```

449 

450***

451 

452<h2 id="synced-plugins">

453 Plugins synchronisiert von claude.ai

454</h2>

455 

456Claude Code lädt die für Ihr claude.ai-Konto aktivierten Plugins, einschließlich Plugins, die Ihre Organisation für ihre Mitglieder aktiviert, zusammen mit den Plugins, die Sie aus Marketplaces installieren. Es lädt jedes in `~/.claude/plugins/synced/` herunter und lädt es als `<name>@synced`, ohne Marketplace und ohne Installationsdatensatz. Ein synchronisiertes Plugin wird mit dem gleichen Vertrauen ausgeführt wie ein Marketplace-Plugin, das Sie installiert haben: seine Skills, Agents, Hooks, MCP-Server und LSP-Server werden alle geladen.

457 

458Wo Claude Code diese Plugins synchronisiert, hängt von der Sitzung ab:

459 

460* In [Cowork](https://claude.com/product/cowork) und [Cloud-Sitzungen](/docs/de/cloud-environments#what-carries-over-from-your-setup) lädt Claude Code sie in die eigene Umgebung der Sitzung herunter, wenn die Sitzung startet. Vor v2.1.239 lud Claude Code diese Plugins als `<name>@inline`, die Identität, die `--plugin-dir`-Plugins verwenden.

461* In Terminal-Sitzungen, in denen Sie sich mit Ihrem claude.ai-Konto anmelden, prüft Claude Code Ihr Konto einmal jedes Mal, wenn es startet, und lädt dann neue und aktualisierte Plugins herunter und entfernt die Plugins, die Sie oder Ihre Organisation ausgeschaltet haben, alles im Hintergrund. Die Synchronisierung in Terminal-Sitzungen erfordert Claude Code v2.1.273 oder später.

462 

463Die Startprüfung wird im Hintergrund ausgeführt, sodass sie nach dem Start Ihrer Sitzung abgeschlossen sein kann. Wenn sie ein synchronisiertes Plugin in einer interaktiven Sitzung hinzufügt, aktualisiert oder entfernt, zeigt Claude Code `Plugins changed. Run /reload-plugins to activate.` an. Führen Sie [`/reload-plugins`](/docs/de/discover-plugins#apply-plugin-changes-without-restarting) aus, um die Änderung in dieser Sitzung zu laden, oder lassen Sie sie für das nächste Mal, wenn Sie Claude Code starten. Wenn Sie ein Plugin auf claude.ai aktivieren, während eine Sitzung läuft, lädt Claude Code es beim nächsten Start herunter.

464 

465Die Plugin-Synchronisierung in Terminal-Sitzungen wird unter den gleichen Anmeldebedingungen ausgeführt wie [Skills, die von claude.ai synchronisiert werden](/docs/de/skills#where-synced-skills-load). Sie benötigt auch eine Anmeldung, die Claude Code Zugriff auf die Plugins Ihres Kontos gewährt.

466 

467Eine Anmeldung aus einer früheren Version von Claude Code erhält Plugin-Zugriff beim nächsten Mal, wenn Claude Code diese Anmeldung im Hintergrund erneuert, innerhalb weniger Stunden, oder sofort, wenn Sie `/login` erneut ausführen. Die Plugin-Synchronisierung startet beim nächsten Mal, wenn Sie Claude Code danach starten.

468 

469`claude plugin list` zeigt synchronisierte Plugins unter einer `Synced from claude.ai`-Überschrift an, und die `/plugin` **Installed**-Registerkarte listet sie mit `synced` als Quelle auf. Verwalten Sie ein synchronisiertes Plugin über die `<name>@synced`-ID, die `claude plugin list` ausgibt:

470 

471* **Eines ausschalten**: Führen Sie `claude plugin disable <name>@synced` aus, oder deaktivieren Sie es über die `/plugin` **Installed**-Registerkarte. Claude Code speichert die Auswahl als `"<name>@synced": false` in Ihren Benutzer-Level-[`enabledPlugins`](/docs/de/settings-reference#enabledplugins). Um das Plugin wieder einzuschalten, führen Sie `claude plugin enable <name>@synced` aus.

472* **Eines überall heraushalten**: [schalten Sie das Plugin für Ihr claude.ai-Konto aus](/docs/de/desktop#extend-claude-code). Um es aus einem Projekt in jeder Umgebung herauszuhalten, setzen Sie `"<name>@synced": false` unter `enabledPlugins` in der committed `.claude/settings.json` dieses Projekts.

473* **Verwalten Sie das Plugin selbst auf claude.ai**: `claude plugin install`, `update` und `uninstall` gelten nicht für ein synchronisiertes Plugin. Claude Code lädt die Updates eines Plugins bei der nächsten Synchronisierung herunter. Um eines zu entfernen, schalten Sie das Plugin für Ihr claude.ai-Konto aus, und Claude Code entfernt es bei der nächsten Synchronisierung.

474* **Synchronisierung auf einem Computer stoppen**: setzen Sie [`syncClaudeAiPlugins`](/docs/de/settings-reference#syncclaudeaiplugins) in Ihren Benutzereinstellungen auf `false`. Claude Code stoppt das Herunterladen, und beim nächsten Start verschiebt es die Plugins, die es bereits synchronisiert hat, in `~/.claude/plugins/.trash/` und lädt sie nicht mehr. Ihre Organisation kann denselben Schlüssel in [verwalteten Einstellungen](/docs/de/managed-settings) setzen oder Skills auf claude.ai ausschalten, was auch verhindert, dass Plugins synchronisiert werden.

475 

476Sie können ein Plugin nicht ausschalten, das Ihre Organisation auf claude.ai als erforderlich markiert. Claude Code lädt es auch dann, wenn Sie es zuvor deaktiviert haben, und `claude plugin disable` weigert sich mit `Plugin "<name>@synced" is required by your organization and can't be disabled here. Contact your admin to change it.` In `claude plugin list` sind diese Plugins mit `required by your org` gekennzeichnet.

477 

478Wenn ein aktiviertes Plugin aus einer anderen Quelle den Namen eines synchronisierten Plugins entspricht, lädt Claude Code dieses Plugin und meldet die synchronisierte Kopie als nicht geladen. Andere Quellen umfassen Marketplace-Installationen, [Skills-Directory-Plugins](#skills-directory-plugins), `--plugin-dir`-Plugins und in Claude Code integrierte Plugins. Um stattdessen die claude.ai-Kopie zu verwenden, deaktivieren Sie Ihre eigene Kopie. Vor v2.1.239 lud Claude Code die synchronisierte Kopie statt einer gleichnamigen Marketplace-Installation.

479 

480***

481 

482<h2 id="plugin-manifest-schema">

483 Plugin-Manifest-Schema

484</h2>

485 

486Die Datei `.claude-plugin/plugin.json` definiert die Metadaten und Konfiguration Ihres Plugins.

487 

488Das Manifest ist optional. Falls weggelassen, erkennt Claude Code Komponenten automatisch an [Standardorten](#file-locations-reference) und leitet den Plugin-Namen vom Verzeichnisnamen ab. Verwenden Sie ein Manifest, wenn Sie Metadaten oder benutzerdefinierte Komponentenpfade bereitstellen müssen.

489 

490<h3 id="complete-schema">

491 Vollständiges Schema

492</h3>

493 

494```json theme={null}

495{

496 "name": "plugin-name",

497 "displayName": "Plugin Name",

498 "version": "1.2.0",

499 "description": "Brief plugin description",

500 "author": {

501 "name": "Author Name",

502 "email": "author@example.com",

503 "url": "https://github.com/author"

504 },

505 "homepage": "https://docs.example.com/plugin",

506 "repository": "https://github.com/author/plugin",

507 "license": "MIT",

508 "keywords": ["keyword1", "keyword2"],

509 "metadata": { "catalogId": "cat-123", "tier": "pro" },

510 "skills": "./custom/skills/",

511 "commands": ["./custom/commands/special.md"],

512 "agents": ["./custom/agents/reviewer.md"],

513 "hooks": "./config/hooks.json",

514 "mcpServers": "./mcp-config.json",

515 "outputStyles": "./styles/",

516 "lspServers": "./.lsp.json",

517 "experimental": {

518 "themes": "./themes/",

519 "monitors": "./monitors.json",

520 "evals": "quality/evals"

521 },

522 "dependencies": [

523 "helper-lib",

524 { "name": "secrets-vault", "version": "~2.1.0" }

525 ]

526}

527```

528 

529<h3 id="required-fields">

530 Erforderliche Felder

531</h3>

532 

533Wenn Sie ein Manifest einbeziehen, ist `name` das einzige erforderliche Feld.

534 

535| Feld | Typ | Beschreibung | Beispiel |

536| :----- | :----- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------- |

537| `name` | string | Eindeutiger Bezeichner in Kebab-Case, ohne Leerzeichen, Steuerzeichen oder bidirektionale Formatierungszeichen. Wenn ein [Marketplace-Eintrag](/docs/de/plugin-marketplaces#plugin-entries) das Plugin unter einem anderen Namen auflistet, ist der Name des Marketplace-Eintrags das, was `enabledPlugins`-Schlüssel und `/plugin` verwenden | `"deployment-tools"` |

538 

539Dieser Name wird für die Namensgebung von Komponenten verwendet. Beispielsweise wird der Agent `agent-creator` für das Plugin mit dem Namen `plugin-dev` in der Benutzeroberfläche als `plugin-dev:agent-creator` angezeigt.

540 

541<h3 id="unrecognized-fields">

542 Nicht erkannte Felder

543</h3>

544 

545Claude Code ignoriert Felder auf oberster Ebene, die nicht erkannt werden. Sie können Metadaten aus einem anderen Ökosystem in `plugin.json` behalten und das Plugin wird trotzdem geladen. Dies macht es praktisch, ein Manifest zu verwalten, das gleichzeitig als VS Code- oder Cursor-Erweiterungsmanifest, eine npm-`package.json` oder ein MCPB/DXT-Bundle-Manifest dient.

546 

547`claude plugin validate` meldet nicht erkannte Felder als Warnungen, nicht als Fehler. Wenn ein Feld ein oder zwei Zeichen von einem erkannten Feld entfernt ist, schlägt die Warnung den wahrscheinlich beabsichtigten Namen vor. Ein Plugin mit nur Warnungen zu nicht erkannten Feldern besteht die Validierung und wird zur Laufzeit geladen.

548 

549Wie Claude Code ein erkanntes Feld behandelt, dessen Wert den falschen Typ hat, hängt vom Feld ab:

550 

551* **Die meisten Felder**: Das Plugin kann nicht geladen werden. Beispielsweise ist ein `keywords`-Wert, der ein String statt eines Arrays ist, ein Ladefehler, und `claude plugin validate` meldet ihn als solchen.

552* **`experimental` und `metadata`**: Claude Code ignoriert einen Nicht-Objekt-Wert, und `claude plugin validate` meldet eine Warnung.

553 

554Übergeben Sie `--strict`, um Warnungen als Fehler zu behandeln. Verwenden Sie es in CI, um einen falsch geschriebenen Feldnamen oder ein Feld, das von einem anderen Tool-Manifest übrig bleibt, vor der Veröffentlichung zu erfassen, obwohl das Plugin zur Laufzeit geladen würde.

555 

556```bash theme={null}

557claude plugin validate ./my-plugin --strict

558```

559 

560<h3 id="metadata-fields">

561 Metadatenfelder

562</h3>

563 

564| Feld | Typ | Beschreibung | Beispiel |

565| :--------------- | :------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------- |

566| `$schema` | string | JSON-Schema-URL für Editor-Autovervollständigung und Validierung. Claude Code ignoriert dieses Feld zur Ladezeit. | `"https://json.schemastore.org/claude-code-plugin-manifest.json"` |

567| `displayName` | string | Benutzerfreundlicher Name, der in der `/plugin`-Auswahl und anderen UI-Oberflächen angezeigt wird. Für ein auf dem Marketplace installiertes Plugin hat ein `displayName` im [Marketplace-Eintrag](/docs/de/plugin-marketplaces#optional-plugin-fields) Vorrang vor diesem Wert. Wenn an keiner Stelle ein Anzeigename festgelegt ist, sehen Benutzer `name`. Im Gegensatz zu `name` kann es Leerzeichen und beliebige Groß-/Kleinschreibung enthalten. Wird nicht für Namensgebung oder Suche verwendet. | `"Deployment Tools"` |

568| `version` | string | Optional. Semantische Version. Das Festlegen dieser Version bindet das Plugin an diese Versionsnummer, sodass Benutzer nur Updates erhalten, wenn Sie diese erhöhen, außer für eine [`command`-Quelle](/docs/de/plugin-marketplaces#command-sources) oder ein Plugin [das an Ort und Stelle geladen wird](#plugin-caching-and-file-resolution); siehe [Versionsverwaltung](#version-management). Falls auch im Marketplace-Eintrag festgelegt, gewinnt `plugin.json`. Falls weggelassen, kommt die Version aus der nächsten Quelle in [Versionsverwaltung](#version-management). | `"2.1.0"` |

569| `description` | string | Kurze Erklärung des Plugin-Zwecks | `"Deployment automation tools"` |

570| `author` | object | Autoreninformationen | `{"name": "Dev Team", "email": "dev@company.com"}` |

571| `homepage` | string | Dokumentations-URL | `"https://docs.example.com"` |

572| `repository` | string | Quellcode-URL | `"https://github.com/user/plugin"` |

573| `license` | string | Lizenzbezeichner | `"MIT"`, `"Apache-2.0"` |

574| `keywords` | array | Erkennungs-Tags | `["deployment", "ci-cd"]` |

575| `metadata` | object | Freiformes Objekt für Ihre eigenen Daten, wie Berechtigungs- oder Katalogfelder. Claude Code liest es nicht, daher beeinflussen die Werte niemals das Plugin-Verhalten. Claude Code ignoriert einen Nicht-Objekt-Wert, und `claude plugin validate` meldet ihn als Warnung. Vor v2.1.222 behandelte Claude Code den Schlüssel als [nicht erkanntes Feld](#unrecognized-fields). | `{"catalogId": "cat-123"}` |

576| `defaultEnabled` | boolean | Ob das Plugin in einem aktivierten Zustand startet, wenn der Benutzer keinen festgelegt hat. Standardmäßig `true`. Siehe [Standardaktivierung](#default-enablement). | `false` |

577 

578<h3 id="default-enablement">

579 Standardaktivierung

580</h3>

581 

582Setzen Sie `defaultEnabled: false` in `plugin.json`, um ein Plugin zu versenden, das deaktiviert installiert wird. Der Benutzer aktiviert es mit `claude plugin enable <plugin>` oder der `/plugin`-Schnittstelle. Verwenden Sie dies für Plugins, die Kosten hinzufügen oder einen Umfang haben, den ein Benutzer akzeptieren sollte, wie eines, das sich mit einem externen Service verbindet.

583 

584`defaultEnabled` ist der Fallback, wenn nichts anderes den Zustand des Plugins entschieden hat. Die Einstellung des Benutzers und eine Abhängigkeitsanforderung haben Vorrang vor ihr:

585 

586* **Die Einstellung des Benutzers**: ein Eintrag für das Plugin in `enabledPlugins` in jedem Einstellungsbereich. Nach dem Schreiben bleibt es über Plugin-Updates und Neuinstallationen hinweg bestehen, daher ändert das Ändern von `defaultEnabled` in einer späteren Version nicht den Zustand eines bestehenden Benutzers.

587* **Eine Abhängigkeitsanforderung**: Wenn ein Plugin von einem anderen erforderlich ist, das aktiv ist, schreibt Claude Code `true` dafür zur Installations- oder Aktivierungszeit. Das gibt ihm eine explizite Einstellung, daher gilt sein eigener Standard nicht mehr. Siehe [Plugin mit Abhängigkeiten aktivieren oder deaktivieren](/docs/de/plugin-dependencies#enable-or-disable-a-plugin-with-dependencies).

588 

589Das gleiche Feld kann im Marketplace-Eintrag eines Plugins erscheinen, wo es Vorrang vor dem Wert in `plugin.json` hat. Siehe [Optionale Plugin-Felder](/docs/de/plugin-marketplaces#optional-plugin-fields).

590 

591<h3 id="component-path-fields">

592 Komponentenpfad-Felder

593</h3>

594 

595| Feld | Typ | Beschreibung | Beispiel |

596| :---------------------- | :-------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------- |

597| `skills` | string\|array | Benutzerdefinierte Skill-Verzeichnisse mit `<name>/SKILL.md`. Ergänzt den Standard-`skills/`-Scan. Siehe [Pfadverhaltenregeln](#path-behavior-rules) für die Marketplace-Root-Ausnahme | `"./custom/skills/"` |

598| `commands` | string\|array | Benutzerdefinierte flache `.md`-Skill-Dateien oder Verzeichnisse (ersetzt Standard-`commands/`) | `"./custom/cmd.md"` oder `["./cmd1.md"]` |

599| `agents` | string\|array | Benutzerdefinierte Agent-Dateien (ersetzt Standard-`agents/`) | `"./custom/agents/reviewer.md"` |

600| `workflows` | string\|array | Benutzerdefinierte [Workflow](/docs/de/workflows)-Skriptdateien oder Verzeichnisse (ersetzt Standard-`workflows/`) | `"./custom/workflows/"` |

601| `hooks` | string\|array\|object | Hook-Konfigurationspfade oder Inline-Konfiguration | `"./my-extra-hooks.json"` |

602| `mcpServers` | string\|array\|object | MCP-Konfigurationspfade oder Inline-Konfiguration | `"./my-extra-mcp-config.json"` |

603| `outputStyles` | string\|array | Benutzerdefinierte Ausgabestil-Dateien/Verzeichnisse (ersetzt Standard-`output-styles/`) | `"./styles/"` |

604| `lspServers` | string\|array\|object | [Language Server Protocol](https://microsoft.github.io/language-server-protocol/)-Konfigurationen für Code-Intelligenz (Gehe zu Definition, Finde Referenzen usw.) | `"./.lsp.json"` |

605| `experimental.themes` | string\|array | Farbthema-Dateien/Verzeichnisse (ersetzt Standard-`themes/`). Siehe [Themes](#themes) | `"./themes/"` |

606| `experimental.monitors` | string\|array | Hintergrund-[Monitor](/docs/de/tools-reference#monitor-tool)-Konfigurationen, die automatisch starten, wenn das Plugin aktiv ist. Siehe [Monitors](#monitors) | `"./monitors.json"` |

607| `experimental.evals` | string\|array | Verzeichnis unterhalb des Plugin-Roots, das die [Eval-Fälle](/docs/de/plugin-evals#use-a-different-eval-directory) des Plugins enthält, wenn es nicht das Standard-`evals/` ist. `claude plugin eval --eval-dir` überschreibt es | `"quality/evals"` |

608| `userConfig` | object | Benutzerkonfigurierbare Werte, die zur Aktivierungszeit abgefragt werden. Siehe [Benutzerkonfiguration](#user-configuration) | |

609| `channels` | array | Kanal-Deklarationen für Nachrichteneinspeisung (Telegram, Slack, Discord-Stil). Siehe [Kanäle](#channels) | |

610| `dependencies` | array | Andere Plugins, die dieses Plugin benötigt, optional mit Semver-Versionsbeschränkungen. Siehe [Plugin-Abhängigkeitsversionen einschränken](/docs/de/plugin-dependencies) | `[{ "name": "secrets-vault", "version": "~2.1.0" }]` |

611 

612<h3 id="experimental-components">

613 Experimentelle Komponenten

614</h3>

615 

616Komponenten unter dem `experimental`-Schlüssel, `themes` und `monitors`, haben ein Manifest-Schema, das sich zwischen Releases ändern kann, während sie stabilisieren. Wo Sie sie deklarieren, ist eine separate Migration: Die oberste Ebene funktioniert immer noch, `claude plugin validate` warnt, und eine zukünftige Version wird `experimental.*` erfordern.

617 

618<h3 id="user-configuration">

619 Benutzerkonfiguration

620</h3>

621 

622Das Feld `userConfig` deklariert Werte, die Claude Code den Benutzer auffordert, wenn das Plugin aktiviert wird. Verwenden Sie dies, anstatt Benutzer zu zwingen, `settings.json` manuell zu bearbeiten.

623 

624```json theme={null}

625{

626 "userConfig": {

627 "api_endpoint": {

628 "type": "string",

629 "title": "API endpoint",

630 "description": "Your team's API endpoint"

631 },

632 "api_token": {

633 "type": "string",

634 "title": "API token",

635 "description": "API authentication token",

636 "sensitive": true

637 }

638 }

639}

640```

641 

642Schlüssel müssen gültige Bezeichner sein. Jede Option unterstützt diese Felder:

643 

644| Feld | Erforderlich | Beschreibung |

645| :------------ | :----------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

646| `type` | Ja | Einer von `string`, `number`, `boolean`, `directory` oder `file` |

647| `title` | Ja | Beschriftung, die im Konfigurationsdialog angezeigt wird |

648| `description` | Ja | Hilfetext, der unter dem Feld angezeigt wird |

649| `sensitive` | Nein | Falls `true`, maskiert die Eingabe und speichert den Wert im sicheren Speicher statt in `settings.json` |

650| `required` | Nein | Falls `true`, schlägt die Validierung fehl, wenn das Feld leer ist |

651| `default` | Nein | Wert, der verwendet wird, wenn der Benutzer nichts bereitstellt |

652| `options` | Nein | Für `string`-Typ die Werte, die das Feld akzeptiert, angezeigt in `/config` als Auswahl über ihnen. Siehe [Feld auf feste Optionen beschränken](#limit-a-field-to-fixed-options). Erfordert Claude Code v2.1.271 oder später |

653| `multiple` | Nein | Für `string`-Typ, erlauben Sie ein Array von Strings |

654| `min` / `max` | Nein | Grenzen für `number`-Typ |

655 

656Außer `sensitive`-Feldern und `multiple`-Listen erscheint jedes Feld jedes aktivierten Plugins auch als Zeile im `/config`-Panel. Die Zeilen erfordern Claude Code v2.1.269 oder später.

657 

658Jeder Wert ist für die Substitution als `${user_config.KEY}` in MCP- und LSP-Server-Konfigurationen und Hook-Befehlen verfügbar. Nicht-sensitive Werte können auch in Skill- und Agent-Inhalten ersetzt werden. Alle Werte werden an Hook-Prozesse als `CLAUDE_PLUGIN_OPTION_<KEY>`-Umgebungsvariablen exportiert, wobei `<KEY>` der Optionsschlüssel in Großbuchstaben ist.

659 

660Felder, die in einer Shell ausgeführt werden, lehnen `${user_config.*}` ab: Das Ersetzen eines konfigurierten Werts in einem Shell-Befehl würde der Shell ermöglichen, alles auszuführen, was dieser Wert enthält, daher schlägt die Komponente mit einem [Fehler](/docs/de/errors#plugin-command-references-user-config) fehl. Jedes abgelehnte Feld hat eine alternative Möglichkeit, den Wert zu übergeben:

661 

662| Abgelehntes Feld | Wie man den Wert übergibt |

663| :--------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------- |

664| Shell-Form-Hook-Befehle | Verwenden Sie [Exec-Form](/docs/de/hooks#exec-form-and-shell-form) mit `args` oder lesen Sie `CLAUDE_PLUGIN_OPTION_<KEY>` aus der Hook-Umgebung |

665| [Monitor](#monitors)-Befehle | Lesen Sie den Wert aus einer Konfigurationsdatei im Skript |

666| MCP [`headersHelper`](/docs/de/mcp#use-dynamic-headers-for-custom-authentication) | Lesen Sie den Wert aus einer Konfigurationsdatei im Skript |

667 

668Vor v2.1.207 ersetzten diese Felder `${user_config.KEY}`-Werte; aktualisieren Sie Plugins, die sich darauf verlassen haben.

669 

670Nicht-sensitive Werte werden unter dem [`pluginConfigs`](/docs/de/settings-reference#pluginconfigs)-Schlüssel in Ihrer Benutzer-`settings.json` als `pluginConfigs[<plugin-id>].options` gespeichert.

671 

672Auf macOS speichert Claude Code sensitive Werte in der macOS Keychain und fällt auf `~/.claude/.credentials.json` zurück, wenn die Keychain den Schreibvorgang ablehnt. Auf Plattformen ohne unterstützte Keychain speichert es sie in `~/.claude/.credentials.json`. Keychain-Speicher wird mit OAuth-Tokens geteilt und hat eine ungefähre Gesamtgrenze von 2 KB, daher halten Sie sensitive Werte klein.

673 

674Claude Code liest alle `pluginConfigs`-Werte nur aus drei Einstellungsquellen:

675 

676* **Benutzereinstellungen**: `~/.claude/settings.json`, die Datei, in die die Aktivierungsaufforderung schreibt

677* **`--settings`**: das CLI-Flag oder SDK-Inline-Einstellungen

678* **Verwaltete Einstellungen**: [organisationskontrollierte Richtlinie](/docs/de/permissions#managed-settings)

679 

680Wenn mehr als eine Quelle denselben Schlüssel setzt, haben verwaltete Einstellungen Vorrang, dann `--settings`, dann Benutzereinstellungen. Die einzige Quelle, die Sie aus dieser Liste entfernen können, sind Benutzereinstellungen: Übergeben Sie [`--setting-sources`](/docs/de/cli-reference#cli-flags) ohne `user` und Claude Code überspringt sie. Verwaltete Einstellungen und `--settings` bleiben, was Sie übergeben. Die SDK-Option [`settingSources`](/docs/de/agent-sdk/claude-code-features#what-settingsources-does-not-control) setzt die gleiche Liste.

681 

682Einträge in einer Projekt-`.claude/settings.json` oder `.claude/settings.local.json` werden ignoriert. Beide Dateien befinden sich im Workspace, daher könnte ein geklontes Repository Werte dort bereitstellen, und diese Werte würden in Plugin-Hook-Befehle, MCP-Server-Konfigurationen, LSP-Befehle und Monitor-Befehle fließen. Vor v2.1.207 wurden diese Einträge gelesen. Die Einschränkung ist spezifisch für `pluginConfigs`: [`enabledPlugins`](/docs/de/settings-reference#enabledplugins) berücksichtigt immer noch Projekt- und lokale Einstellungen.

683 

684<h4 id="limit-a-field-to-fixed-options">

685 Feld auf feste Optionen beschränken

686</h4>

687 

688Setzen Sie `options` auf ein `userConfig`-Feld, um Benutzer zu zwingen, seinen Wert aus einer festen Liste auszuwählen.

689 

690Um ein `tone`-Feld auf drei Optionen zu beschränken, listen Sie sie in `options` auf und setzen Sie `default` auf eine davon:

691 

692```json theme={null}

693{

694 "userConfig": {

695 "tone": {

696 "type": "string",

697 "title": "Tone",

698 "description": "Voice for generated replies",

699 "options": ["neutral", "warm", "formal"],

700 "default": "neutral"

701 }

702 }

703}

704```

705 

706Wenn Sie `options` auf ein beliebiges Feld deklarieren, können Benutzer auf Claude Code-Versionen vor v2.1.271 das Plugin nicht laden.

707 

708Wenn Sie `options` auf ein Feld setzen, befolgen Sie diese Regeln:

709 

710* Setzen Sie `type` auf `string`

711* Setzen Sie `multiple` oder `sensitive` nicht auf `true`

712* Setzen Sie `default` auf eine der Optionen

713* Wenn Sie `default` nicht setzen, setzen Sie `required` auf `true`

714* Listen Sie mindestens eine Option auf, jede 1 bis 64 Zeichen lang

715* Beginnen oder enden Sie eine Option nicht mit einem Leerzeichen

716* Verwenden Sie keine Steuerzeichen, unsichtbaren Zeichen, Zeichen, die die Textrichtung ändern, oder andere Leerzeichen als ein normales Leerzeichen in einer Option

717* Listen Sie nicht die gleiche Option zweimal auf, auch nicht in einer anderen Schreibweise

718 

719Wenn Sie eine dieser Regeln brechen, kann das Plugin nicht geladen werden. Führen Sie `claude plugin validate` aus, um zu sehen, welches Feld welche Regel bricht.

720 

721<h3 id="channels">

722 Kanäle

723</h3>

724 

725Das Feld `channels` ermöglicht es einem Plugin, einen oder mehrere Nachrichtenkanäle zu deklarieren, die Inhalte in die Konversation einspritzen. Jeder Kanal bindet sich an einen MCP-Server, den das Plugin bereitstellt.

726 

727```json theme={null}

728{

729 "channels": [

730 {

731 "server": "telegram",

732 "userConfig": {

733 "bot_token": {

734 "type": "string",

735 "title": "Bot token",

736 "description": "Telegram bot token",

737 "sensitive": true

738 },

739 "owner_id": {

740 "type": "string",

741 "title": "Owner ID",

742 "description": "Your Telegram user ID"

743 }

744 }

745 }

746 ]

747}

748```

749 

750Das Feld `server` ist erforderlich und muss einem Schlüssel in den `mcpServers` des Plugins entsprechen. Das optionale Pro-Kanal-`userConfig` verwendet das gleiche Schema wie das Feld auf oberster Ebene, wodurch das Plugin Bot-Tokens oder Owner-IDs abfragen kann, wenn das Plugin aktiviert wird.

751 

752<h3 id="path-behavior-rules">

753 Pfadverhaltenregeln

754</h3>

755 

756Ob ein benutzerdefinierter Pfad das Standard-Verzeichnis des Plugins ersetzt oder erweitert, hängt vom Feld ab:

757 

758* **Ersetzt den Standard**: `commands`, `agents`, `workflows`, `outputStyles`, `experimental.themes`, `experimental.monitors`. Beispielsweise wird das Standard-`commands/`-Verzeichnis nicht gescannt, wenn das Manifest `commands` angibt. Um den Standard zu behalten und mehr hinzuzufügen, listen Sie ihn explizit auf: `"commands": ["./commands/", "./extras/"]`

759* **Ergänzt den Standard**: `skills`. Das Standard-`skills/`-Verzeichnis wird immer gescannt, und Verzeichnisse, die in `skills` aufgelistet sind, werden zusammen mit ihm geladen. Ausnahme: Für einen [Marketplace-Eintrag, dessen `source` zum Marketplace-Root aufgelöst wird](/docs/de/plugin-marketplaces#advanced-plugin-entries), ersetzt das Deklarieren spezifischer Unterverzeichnisse den Standard-`skills/`-Scan

760* **Eigene Merge-Regeln**: [hooks](#hooks), [MCP-Server](#mcp-servers) und [LSP-Server](#lsp-servers). Siehe jeden Abschnitt, wie mehrere Quellen kombiniert werden

761 

762Wenn ein Plugin sowohl einen Standard-Ordner als auch den entsprechenden Manifest-Schlüssel hat, warnt Claude Code vor dem ignorierten Ordner in `claude plugin list` und der `/plugin`-Detailansicht. Das Plugin wird immer noch mit den Manifest-Pfaden geladen. Claude Code warnt nicht, wenn der Manifest-Schlüssel in den Standard-Ordner zeigt, beispielsweise `"commands": ["./commands/deploy.md"]`, da dieser Pfad den Ordner explizit benennt.

763 

764Für alle Pfadfelder:

765 

766* Alle Pfade müssen relativ zum Plugin-Root sein und mit `./` beginnen, außer dass das Feld `skills` auch `"."` akzeptiert

767 * Sowohl `"."` als auch `"./"` bezeichnen den Plugin-Root selbst

768 * Vor v2.1.221 schlug `"."` bei der Manifest-Validierung fehl und das Plugin wurde nicht geladen, daher verwenden Sie `"./"`, um frühere Versionen zu unterstützen

769* Komponenten aus benutzerdefinierten Pfaden verwenden die gleichen Benennungs- und Namensgebungsregeln, außer Agent-Dateien. Siehe [Agents](#agents), wie Agent-Namen funktionieren

770* Mehrere Pfade können als Arrays angegeben werden

771* Ein Skill-Pfad kann auf ein Verzeichnis zeigen, das direkt eine `SKILL.md` enthält, beispielsweise `"skills": ["."]` für den Plugin-Root

772 * Claude Code nimmt den Invokationsnamen des Skills aus dem Frontmatter-Feld `name` in `SKILL.md`, daher bleibt der Name stabil, egal wie das Installationsverzeichnis benannt ist

773 * Wenn `name` nicht im Frontmatter festgelegt ist, fällt Claude Code auf den Verzeichnis-Basename zurück

774 

775Ein Plugin, das eine `SKILL.md` an seinem Root hat, kein `skills/`-Unterverzeichnis und kein `skills`-Manifest-Feld hat, wird automatisch als Single-Skill-Plugin geladen. Sie müssen `"skills": ["./"]` in `plugin.json` für dieses Layout nicht setzen.

776 

777**Pfadbeispiele**:

778 

779```json theme={null}

780{

781 "commands": [

782 "./specialized/deploy.md",

783 "./utilities/batch-process.md"

784 ],

785 "agents": [

786 "./custom-agents/reviewer.md",

787 "./custom-agents/tester.md"

788 ]

789}

790```

791 

792<h3 id="environment-variables">

793 Umgebungsvariablen

794</h3>

795 

796Claude Code stellt drei Variablen zum Referenzieren von Pfaden bereit:

797 

798| Variable | Wird aufgelöst zu | Verwenden Sie es für |

799| :---------------------- | :---------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------- |

800| `${CLAUDE_PLUGIN_ROOT}` | Absoluter Pfad zum Installationsverzeichnis des Plugins | Skripte, Binärdateien und Konfigurationsdateien, die mit dem Plugin gebündelt sind |

801| `${CLAUDE_PLUGIN_DATA}` | [Persistentes Verzeichnis](#persistent-data-directory), das Plugin-Updates überlebt, beim ersten Zugriff erstellt | Installierte Abhängigkeiten wie `node_modules` oder Python-Virtualumgebungen, generierter Code und Caches |

802| `${CLAUDE_PROJECT_DIR}` | Das Projekt-Root | Projektlokale Skripte und Konfigurationsdateien |

803 

804Alle drei werden als Umgebungsvariablen an Hook-Prozesse und an MCP- und LSP-Server-Subprozesse exportiert. Sie sind nicht in der Umgebung von Befehlen vorhanden, die Claude durch das Bash-Tool ausführt, in der Hauptsitzung oder in einem Sub-Agent. Schreiben Sie in Plugin-Inhalten stattdessen den Platzhalter, und Claude Code ersetzt den Pfad inline, wenn es den Inhalt lädt. Welche Felder sie inline ersetzen, hängt von der Plugin-Komponente ab:

805 

806| Plugin-Komponente | Felder, in denen Platzhalter aufgelöst werden |

807| :----------------------------- | :-------------------------------------------- |

808| Skill- und Agent-Inhalte | Überall dort, wo der Platzhalter erscheint |

809| Hook- und Monitor-Befehle | Überall dort, wo der Platzhalter erscheint |

810| MCP `stdio`-Server | `command`, `args`, `env` |

811| MCP `http`, `sse`, `ws`-Server | `url`, `headers`, `headersHelper` |

812| LSP-Server | `command`, `args`, `env`, `workspaceFolder` |

813 

814Verwenden Sie in Hook-Befehlen [Exec-Form](/docs/de/hooks#exec-form-and-shell-form) mit `args`, damit jeder Pfad als ein Argument ohne Anführungszeichen übergeben wird. Wickeln Sie in Shell-Form-Hooks und Monitor-Befehlen die Variablen in doppelte Anführungszeichen ein, wie in `"${CLAUDE_PROJECT_DIR}/scripts/server.sh"`. Dieser Shell-Form-Hook führt ein mit einem Plugin gebündeltes Skript aus:

815 

816```json theme={null}

817{

818 "hooks": {

819 "PostToolUse": [

820 {

821 "hooks": [

822 {

823 "type": "command",

824 "command": "\"${CLAUDE_PLUGIN_ROOT}\"/scripts/process.sh"

825 }

826 ]

827 }

828 ]

829 }

830}

831```

832 

833Für ein kopiertes Plugin ändert sich `${CLAUDE_PLUGIN_ROOT}`, wenn das Plugin aktualisiert wird. Das Verzeichnis der vorherigen Version bleibt nach einem Update für einen Übergangszeitraum auf der Festplatte, aber behandeln Sie es als kurzlebig und schreiben Sie keinen Zustand dort. Für ein Plugin, das an Ort und Stelle aus einem lokalen Verzeichnis-Marketplace geladen wird, zeigt die Variable auf das stabile Quellverzeichnis. Siehe [Plugin-Caching](#plugin-caching-and-file-resolution), welche Plugins kopiert werden und für Cleanup-Semantik.

834 

835Wenn ein kopiertes Plugin während einer Sitzung aktualisiert wird, verwenden Hook-Befehle, Monitors, MCP-Server und LSP-Server weiterhin den Pfad der vorherigen Version. Führen Sie `/reload-plugins` aus, um Hooks, MCP-Server und LSP-Server zum neuen Pfad zu wechseln; Monitors erfordern einen Sitzungsneustart. In einer Sitzung ohne interaktives Terminal lässt das Reload Plugin-MCP-Server auf dem alten Pfad, bis die nächste Sitzung.

836 

837Für ein Plugin mit einer `command`-Quelle kann Claude Code [das Plugin selbst neu laden](/docs/de/plugin-marketplaces#when-claude-code-re-runs-the-command).

838 

839MCP-Server können auch die `roots/list`-Anfrage aufrufen, um die Arbeitsverzeichnisse der Sitzung zur Laufzeit zu lesen. Siehe [was `roots/list` zurückgibt und wann Claude Code den Server über Änderungen benachrichtigt](/docs/de/mcp#option-3-add-a-local-stdio-server).

840 

841<h4 id="persistent-data-directory">

842 Persistentes Datenverzeichnis

843</h4>

844 

845Das Verzeichnis `${CLAUDE_PLUGIN_DATA}` wird zu `~/.claude/plugins/data/{id}/` aufgelöst, wobei `{id}` der Plugin-Bezeichner mit Zeichen außerhalb von `a-z`, `A-Z`, `0-9`, `_` und `-` ist, die durch `-` ersetzt werden. Für ein Plugin, das als `formatter@my-marketplace` installiert ist, ist das Verzeichnis `~/.claude/plugins/data/formatter-my-marketplace/`.

846 

847Eine häufige Verwendung ist die einmalige Installation von Sprachabhängigkeiten und deren Wiederverwendung über Sitzungen und Plugin-Updates hinweg. Verwenden Sie es für Python-Abhängigkeiten, Abhängigkeiten, die mit Yarn oder pnpm gesperrt sind, und Pakete, deren Lifecycle-Skripte ausgeführt werden müssen. Für ein auf dem Marketplace installiertes Plugin benötigen Sie es möglicherweise überhaupt nicht: Claude Code installiert automatisch berechtigte [Node.js-Paketabhängigkeiten](#node-js-package-dependencies), wenn es das Plugin zwischenspeichert.

848 

849Da das Datenverzeichnis länger lebt als jede einzelne Plugin-Version, kann eine Überprüfung auf Verzeichnisexistenz allein nicht erkennen, wenn ein Update die Abhängigkeitsmanifest des Plugins ändert. Das empfohlene Muster vergleicht das gebündelte Manifest mit einer Kopie im Datenverzeichnis und installiert neu, wenn sie sich unterscheiden.

850 

851Dieser `SessionStart`-Hook installiert `node_modules` beim ersten Lauf und erneut, wenn ein Plugin-Update eine geänderte `package.json` enthält:

852 

853```json theme={null}

854{

855 "hooks": {

856 "SessionStart": [

857 {

858 "hooks": [

859 {

860 "type": "command",

861 "command": "diff -q \"${CLAUDE_PLUGIN_ROOT}/package.json\" \"${CLAUDE_PLUGIN_DATA}/package.json\" >/dev/null 2>&1 || (cd \"${CLAUDE_PLUGIN_DATA}\" && cp \"${CLAUDE_PLUGIN_ROOT}/package.json\" . && npm install) || rm -f \"${CLAUDE_PLUGIN_DATA}/package.json\""

862 }

863 ]

864 }

865 ]

866 }

867}

868```

869 

870Der `diff` beendet sich mit Nonzero, wenn die gespeicherte Kopie fehlt oder sich von der gebündelten unterscheidet, was sowohl den ersten Lauf als auch abhängigkeitsändernde Updates abdeckt. Wenn `npm install` fehlschlägt, entfernt das nachfolgende `rm` das kopierte Manifest, damit die nächste Sitzung erneut versucht.

871 

872Skripte, die in `${CLAUDE_PLUGIN_ROOT}` gebündelt sind, können dann gegen die persistierten `node_modules` ausgeführt werden:

873 

874```json theme={null}

875{

876 "mcpServers": {

877 "routines": {

878 "command": "node",

879 "args": ["${CLAUDE_PLUGIN_ROOT}/server.js"],

880 "env": {

881 "NODE_PATH": "${CLAUDE_PLUGIN_DATA}/node_modules"

882 }

883 }

884 }

885}

886```

887 

888Das Datenverzeichnis wird automatisch gelöscht, wenn Sie das Plugin aus dem letzten Bereich deinstallieren, in dem es installiert ist. Die `/plugin`-Schnittstelle zeigt die Verzeichnisgröße an und fordert vor dem Löschen auf. Die CLI löscht standardmäßig; übergeben Sie [`--keep-data`](#plugin-uninstall), um es zu behalten.

889 

890***

891 

892<h2 id="plugin-caching-and-file-resolution">

893 Plugin-Caching und Dateiauflösung

894</h2>

895 

896Plugins werden auf eine von drei Arten angegeben:

897 

898* Über `claude --plugin-dir` oder `claude --plugin-url` für die Dauer einer Sitzung.

899* Über einen Marketplace, installiert für zukünftige Sitzungen.

900* Über Ihr claude.ai-Konto, [synchronisiert](#synced-plugins) in `~/.claude/plugins/synced/`.

901 

902Aus Sicherheits- und Verifizierungsgründen kopiert Claude Code *Marketplace*-Plugins in den lokalen **Plugin-Cache** des Benutzers (`~/.claude/plugins/cache`), anstatt sie an Ort und Stelle zu verwenden, es sei denn, das Plugin wird an Ort und Stelle geladen. Eine [`command`-Quelle im Link-Modus](/docs/de/plugin-marketplaces#copy-mode-and-link-mode) wird an Ort und Stelle über Links im Cache-Eintrag geladen. Eine [Quelle mit relativem Pfad](/docs/de/plugin-marketplaces#relative-paths) in einem Marketplace, der aus einem lokalen Verzeichnis hinzugefügt wurde, wird an Ort und Stelle aus dem Marketplace-Ordner geladen.

903 

904Für ein Plugin, das an Ort und Stelle aus einem lokalen Verzeichnis-Marketplace geladen wird, werden Ihre Änderungen am Quellverzeichnis beim nächsten Sitzungsstart oder `/reload-plugins` wirksam. Sie benötigen keine Versionsbumps. Der Hook-Prozess des Plugins und die MCP- und LSP-Server erhalten ein `CLAUDE_PLUGIN_ROOT`, das auf das Quellverzeichnis verweist. Claude Code installiert die [Node.js-Paketabhängigkeiten](#node-js-package-dependencies) des Plugins nicht in das Quellverzeichnis. Installieren Sie diese selbst dort oder von einem Hook aus in das [persistente Datenverzeichnis](#persistent-data-directory).

905 

906Für kopierte Plugins ist jede installierte Version ein separates Verzeichnis im Cache, gruppiert nach Marketplace und Plugin und benannt nach der aufgelösten Version, mit einer eigenen Kopie der Plugin-Dateien und [Node.js-Paketabhängigkeiten](#node-js-package-dependencies). Eine Abhängigkeit, die von einem [Release-Tag](/docs/de/plugin-dependencies#tag-plugin-releases-for-version-resolution) aufgelöst wird, erhält einen Verzeichnisnamen mit einem Commit-SHA-Suffix.

907 

908Wenn Sie ein Plugin aktualisieren oder deinstallieren, markiert Claude Code das vorherige Versionsverzeichnis als verwaist und entfernt es in einem Hintergrund-Sweep ungefähr 14 Tage später. Die Kulanzfrist ermöglicht es gleichzeitigen Claude Code-Sitzungen, die bereits die alte Version geladen haben, ohne Fehler weiter zu laufen. Claude Code führt den Sweep nur aus, wenn mindestens ein Plugin installiert ist; nachdem Sie Ihr letztes Plugin deinstalliert haben, bleiben verwaiste Verzeichnisse auf der Festplatte, bis Sie ein Plugin erneut installieren.

909 

910Claude Code entfernt einen Plugin- oder Marketplace-Ordner aus dem Cache nur, wenn er kein Verzeichnis oder Symlink mehr enthält. Wenn Sie einen Entwicklungs-Checkout als Versionseinträge eines Plugins in den Cache symlinken, markiert Claude Code den Link niemals als verwaist und entfernt ihn oder die Ordner, die ihn enthalten, niemals. Claude Code schreibt auch niemals seine Versions-Tracking-Dateien in den verlinkten Checkout.

911 

912Die Glob- und Grep-Tools von Claude überspringen verwaiste Versionsverzeichnisse während Suchen, sodass Dateiergebnisse keinen veralteten Plugin-Code enthalten.

913 

914<h3 id="node-js-package-dependencies">

915 Node.js-Paketabhängigkeiten

916</h3>

917 

918Wenn Claude Code ein Plugin in den Cache kopiert, installiert es auch die Node.js-Paketabhängigkeiten des Plugins dort, damit die Hooks und MCP-Server des Plugins diese laden können. Dieser Abschnitt behandelt die npm- und Bun-Pakete, die ein Plugin in seiner eigenen `package.json` deklariert. Für Plugins, die von anderen Plugins abhängen, siehe [Plugin-Abhängigkeitsversionen](/docs/de/plugin-dependencies).

919 

920Claude Code führt die Installation im kopierten Versionsverzeichnis jedes Mal aus, wenn es eines erstellt: wenn Sie ein Plugin installieren, wenn Claude Code ein Plugin auf eine neue Version aktualisiert, und beim Sitzungsstart, wenn ein aktiviertes Plugin noch nicht zwischengespeichert ist, z. B. auf einem neuen Computer. Die Installation wird nur ausgeführt, wenn das Plugin-Stammverzeichnis sowohl eine `package.json` als auch eine unterstützte Sperrdatei enthält:

921 

922| Sperrdatei | Befehl |

923| :--------------------------------------------- | :----------------------------------------------- |

924| `bun.lock` oder `bun.lockb` | `bun install --frozen-lockfile --ignore-scripts` |

925| `npm-shrinkwrap.json` oder `package-lock.json` | `npm ci --ignore-scripts` |

926 

927Wenn ein Plugin mehr als eine dieser Sperrdateien enthält, verwendet Claude Code die erste Übereinstimmung und prüft in dieser Reihenfolge: `bun.lock`, `bun.lockb`, `npm-shrinkwrap.json`, `package-lock.json`.

928 

929Claude Code überspringt die Installation in zwei Fällen, jeweils mit einer eigenen Lösung:

930 

931* Wenn Ihr Plugin nur eine `yarn.lock` oder `pnpm-lock.yaml` enthält, ersetzen Sie diese durch eine npm-Sperrdatei.

932* Wenn eine `bunfig.toml` neben der Bun-Sperrdatei liegt, entfernen Sie die `bunfig.toml`, oder ersetzen Sie die Bun-Sperrdatei durch eine npm-Sperrdatei.

933 

934Versenden Sie eine npm-Sperrdatei für die größtmögliche Reichweite. Claude Code führt den Paketmanager der übereinstimmenden Sperrdatei aus dem PATH des Benutzers aus und fällt nicht auf die andere Sperrdatei zurück, wenn sie fehlt. Verwenden Sie für ein Plugin, das über eine npm-Quelle verteilt wird, `npm-shrinkwrap.json`; npm schließt `package-lock.json` aus veröffentlichten Paketen aus.

935 

936Claude Code beschränkt diese Abhängigkeitsinstallation so, dass während der Installation kein Code aus dem Plugin oder seinen Paketen ausgeführt wird, und begrenzt, wie lange sie ausgeführt werden kann:

937 

938* **Gefrorene Auflösung:** Bun und npm installieren genau das, was die Sperrdatei festlegt, und schlagen fehl, anstatt Versionen erneut aufzulösen, wenn `package.json` und die Sperrdatei nicht übereinstimmen.

939* **Keine Lifecycle-Skripte:** `--ignore-scripts` verhindert, dass `preinstall`-, `install`- und `postinstall`-Skripte ausgeführt werden, sodass Abhängigkeiten, die native Module in diesen Skripten erstellen, heruntergeladen, aber während dieser Installation nicht kompiliert werden.

940* **60-Sekunden-Timeout:** Claude Code stoppt eine Installation, die länger läuft, und behandelt sie als fehlgeschlagen.

941 

942Claude Code ruft ein npm-Quellen-Plugin vor dieser Abhängigkeitsinstallation ab, und keines der eigenen Installationsskripte des Pakets wird während des Abrufs ausgeführt. Siehe [npm-Pakete](/docs/de/plugin-marketplaces#npm-packages).

943 

944Eine fehlgeschlagene oder übersprungene Installation blockiert das Plugin niemals. Wenn die Installation fehlschlägt oder Claude Code sie überspringt, weil eine yarn- oder pnpm-Sperrdatei vorhanden ist oder eine `bunfig.toml` daneben liegt, wird der Grund als Warnung in der [Debug-Ausgabe](#debugging-commands) aufgezeichnet. Ein Plugin mit einer `package.json` und ohne Sperrdatei wird ohne Logeintrag übersprungen. Eine Timeout-Installation kann einen partiellen `node_modules`-Baum in der zwischengespeicherten Kopie hinterlassen.

945 

946Sie können die automatische Installation nicht ausschalten; keine Einstellung oder Umgebungsvariable deaktiviert sie. In eingeschränkten Netzwerken siehe die [Netzwerkzugriffsanforderungen](/docs/de/network-config#network-access-requirements) für die Hosts, die Sie zulassen müssen.

947 

948Für Abhängigkeiten, die die automatische Installation nicht bereitstellen kann, z. B. Pakete, die ihre Lifecycle-Skripte zum Erstellen benötigen, Python-Abhängigkeiten oder ein Plugin, das mit Yarn oder pnpm gesperrt ist, installieren Sie diese von einem Hook in das [persistente Datenverzeichnis](#persistent-data-directory).

949 

950<h3 id="path-traversal-limitations">

951 Einschränkungen bei der Pfadtraversierung

952</h3>

953 

954Claude Code erlaubt einem Plugin nicht, auf Dateien außerhalb seines eigenen Verzeichnisses zu verweisen. Es lehnt einen Komponentenpfad ab, der außerhalb des Plugin-Stammverzeichnisses aufgelöst wird, unabhängig davon, ob der Pfad in `plugin.json` oder in einem [Marketplace-Eintrag](/docs/de/plugin-marketplaces#plugin-entries) deklariert ist. Dies umfasst einen Pfad, der außerhalb des Plugins verweist, wie geschrieben, z. B. `../shared-utils`, und einen Symlink, der außerhalb des Plugins führt, mit Ausnahme von [Links innerhalb eines Marketplace](#share-files-within-a-marketplace-with-symlinks).

955 

956Auf macOS und Linux lehnt Claude Code auch einen Komponentenpfad ab, der an irgendeiner Stelle einen Backslash enthält, auch wenn der Pfad innerhalb des Plugins bleibt. Komponenten, die mit Backslash-Pfaden deklariert sind, werden daher nur unter Windows geladen. Schreiben Sie Komponentenpfade mit Schrägstrichen, z. B. `./commands/deploy.md`.

957 

958Wenn Claude Code einen Pfad ablehnt, meldet es einen [`path escapes plugin directory`](/docs/de/errors#path-escapes-plugin-directory)-Fehler und lädt das Plugin ohne diese Komponente.

959 

960Claude Code kopiert auch keine Dateien außerhalb des Plugin-Verzeichnisses in den Cache, wenn es das Plugin installiert. Wenn also ein Skript in einem kopierten Plugin einen Pfad über dem Plugin-Stammverzeichnis liest, findet es diese Dateien auch nicht.

961 

962<h3 id="share-files-within-a-marketplace-with-symlinks">

963 Dateien innerhalb eines Marketplace mit Symlinks freigeben

964</h3>

965 

966Wenn Ihr Plugin Dateien mit anderen Teilen desselben Marketplace freigeben muss, können Sie symbolische Links in Ihrem Plugin-Verzeichnis erstellen. Wie ein Symlink behandelt wird, wenn das Plugin in den Cache kopiert wird, hängt davon ab, wo sein Ziel aufgelöst wird:

967 

968* **Innerhalb des eigenen Verzeichnisses des Plugins:** Der Symlink wird als relativer Symlink im Cache beibehalten, sodass er zur Laufzeit weiterhin zum kopierten Ziel aufgelöst wird.

969* **Anderswo innerhalb desselben Marketplace:** Der Symlink wird dereferenziert. Der Inhalt des Ziels wird an seiner Stelle in den Cache kopiert. Dies ermöglicht es dem `skills/`-Verzeichnis eines Meta-Plugins, auf Skills zu verlinken, die von anderen Plugins im Marketplace definiert werden.

970* **Außerhalb des Marketplace:** Der Symlink wird aus Sicherheitsgründen übersprungen. Dies verhindert, dass Plugins beliebige Host-Dateien wie Systempfade in den Cache ziehen.

971 

972Für Plugins, die mit `--plugin-dir` installiert sind, von einem lokalen Pfad oder von einer [`command`-Quelle](/docs/de/plugin-marketplaces#copy-mode-and-link-mode) im Copy-Modus, werden nur Symlinks beibehalten, die innerhalb des eigenen Verzeichnisses des Plugins aufgelöst werden. Alle anderen werden übersprungen.

973 

974Der folgende Befehl erstellt einen Link von innerhalb eines Marketplace-Plugins zu einem gemeinsamen Skill, der von einem Sibling-Plugin definiert wird. Verwenden Sie unter Windows `mklink /D` von einer erhöhten Eingabeaufforderung oder aktivieren Sie den Entwicklermodus:

975 

976```bash theme={null}

977ln -s ../../shared-plugin/skills/foo ./skills/foo

978```

979 

980***

981 

982<h2 id="plugin-directory-structure">

983 Verzeichnisstruktur von Plugins

984</h2>

985 

986<h3 id="standard-plugin-layout">

987 Standard-Plugin-Layout

988</h3>

989 

990Ein vollständiges Plugin folgt dieser Struktur:

991 

992```text theme={null}

993enterprise-plugin/

994├── .claude-plugin/ # Metadaten-Verzeichnis (optional)

995│ └── plugin.json # Plugin-Manifest

996├── skills/ # Skills

997│ ├── code-reviewer/

998│ │ └── SKILL.md

999│ └── pdf-processor/

1000│ ├── SKILL.md

1001│ └── scripts/

1002├── commands/ # Skills als flache .md-Dateien

1003│ ├── status.md

1004│ └── logs.md

1005├── agents/ # Subagent-Definitionen

1006│ ├── security-reviewer.md

1007│ ├── performance-tester.md

1008│ ├── compliance-checker.md

1009│ └── review/ # Agents hier werden als enterprise-plugin:review:<name> geladen

1010│ └── accessibility.md

1011├── workflows/ # Workflow-Skripte

1012│ └── release-audit.js

1013├── output-styles/ # Ausgabestil-Definitionen

1014│ └── terse.md

1015├── themes/ # Farbschema-Definitionen

1016│ └── dracula.json

1017├── monitors/ # Hintergrund-Monitor-Konfigurationen

1018│ └── monitors.json

1019├── hooks/ # Hook-Konfigurationen

1020│ ├── hooks.json # Haupt-Hook-Konfiguration

1021│ └── security-hooks.json # Zusätzliche Hooks

1022├── bin/ # Plugin-Ausführbare Dateien, die zu PATH hinzugefügt werden

1023│ └── my-tool # Aufrufbar als einfacher Befehl im Bash-Tool

1024├── settings.json # Standardeinstellungen für das Plugin

1025├── .mcp.json # MCP-Server-Definitionen

1026├── .lsp.json # LSP-Server-Konfigurationen

1027├── scripts/ # Hook- und Utility-Skripte

1028│ ├── security-scan.sh

1029│ ├── format-code.py

1030│ └── deploy.js

1031├── LICENSE # Lizenzdatei

1032└── CHANGELOG.md # Versionsverlauf

1033```

1034 

1035<Warning>

1036 Das `.claude-plugin/`-Verzeichnis enthält die `plugin.json`-Datei. Alle anderen Verzeichnisse (commands/, agents/, skills/, workflows/, output-styles/, themes/, monitors/, hooks/) müssen sich im Plugin-Stammverzeichnis befinden, nicht innerhalb von `.claude-plugin/`.

1037</Warning>

1038 

1039Eine `CLAUDE.md`-Datei im Plugin-Stammverzeichnis wird nicht als Projektkontext geladen. Plugins tragen Kontext durch Skills, Agents und Hooks bei, nicht durch CLAUDE.md. Um Anweisungen bereitzustellen, die in Claudes Kontext geladen werden, platzieren Sie diese in einem [Skill](#skills).

1040 

1041<h3 id="file-locations-reference">

1042 Dateistandorte-Referenz

1043</h3>

1044 

1045| Komponente | Standardort | Zweck |

1046| :---------------------- | :--------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

1047| **Manifest** | `.claude-plugin/plugin.json` | Plugin-Metadaten und Konfiguration (optional) |

1048| **Skills** | `skills/` | Skills mit `<name>/SKILL.md`-Struktur |

1049| **Befehle** | `commands/` | Skills als flache Markdown-Dateien. Verwenden Sie `skills/` für neue Plugins |

1050| **Agents** | `agents/` | Subagent-Markdown-Dateien. Unterordner sind Teil des [Agent-Namens](#agents) |

1051| **Workflows** | `workflows/` | [Workflow](/docs/de/workflows)-Skriptdateien |

1052| **Ausgabestile** | `output-styles/` | Ausgabestil-Definitionen |

1053| **Designs** | `themes/` | Farbschema-Definitionen |

1054| **Hooks** | `hooks/hooks.json` | Hook-Konfiguration |

1055| **MCP-Server** | `.mcp.json` | MCP-Server-Definitionen |

1056| **LSP-Server** | `.lsp.json` | Language-Server-Konfigurationen |

1057| **Monitore** | `monitors/monitors.json` | Hintergrund-Monitor-Konfigurationen |

1058| **Ausführbare Dateien** | `bin/` | Ausführbare Dateien, die zum `PATH` des Bash-Tools hinzugefügt werden und als einfache Befehle aufrufbar sind, während das Plugin aktiviert ist. Sie können dieses Verzeichnis nicht in ein Plugin einbeziehen, das Sie [über die Organisationseinstellungen von claude.ai verteilen](/docs/de/plugin-marketplaces#keep-executables-out-of-the-top-level-bin-directory) |

1059| **Einstellungen** | `settings.json` | Standardkonfiguration, die angewendet wird, wenn das Plugin aktiviert ist. Nur die [`agent`](/docs/de/sub-agents)- und [`subagentStatusLine`](/docs/de/statusline#subagent-status-lines)-Schlüssel werden unterstützt |

1060 

1061***

1062 

1063<h2 id="cli-commands-reference">

1064 CLI-Befehle – Referenz

1065</h2>

1066 

1067Claude Code bietet CLI-Befehle für nicht-interaktive Plugin-Verwaltung, nützlich für Skripte und Automatisierung.

1068 

1069<h3 id="plugin-init">

1070 plugin init

1071</h3>

1072 

1073Gerüst für ein neues Plugin unter `~/.claude/skills/<name>/` erstellen. In der nächsten Claude Code-Sitzung wird es automatisch als `<name>@skills-dir` geladen und erscheint in `/plugin` und `claude plugin list` ohne Installationsschritt.

1074 

1075Siehe [Skills-directory plugins](#skills-directory-plugins) für Umfang und Vertrauensanforderungen.

1076 

1077```bash theme={null}

1078claude plugin init <name> [options]

1079```

1080 

1081Der Befehl nimmt diese Argumente an:

1082 

1083* `<name>`: Plugin-Name. Wird zum Skill-Namespace und zum Verzeichnisnamen unter `~/.claude/skills/`, daher darf er keine Leerzeichen oder Pfad-Trennzeichen enthalten.

1084 

1085Der Befehl akzeptiert diese Optionen:

1086 

1087| Option | Beschreibung | Standard |

1088| :----------------------- | :------------------------------------------------------------------------------------------------------------------- | :---------------------- |

1089| `--description <text>` | Manifest-Beschreibung | |

1090| `--author <name>` | Autorname | `git config user.name` |

1091| `--author-email <email>` | Autor-E-Mail | `git config user.email` |

1092| `--with <components...>` | Auch Komponentenordner gerüsten. Gültige Werte: `skills`, `agents`, `hooks`, `mcp`, `lsp`, `output-style`, `channel` | |

1093| `-f, --force` | Vorhandenes `.claude-plugin/` am Ziel überschreiben | |

1094| `-h, --help` | Hilfe für Befehl anzeigen | |

1095 

1096`claude plugin new` ist ein Alias für diesen Befehl.

1097 

1098Jeder `--with`-Wert fügt eine Starter-Datei für diese Komponente hinzu, bereit zum Bearbeiten:

1099 

1100| Komponente | Was es gerüstet |

1101| :------------- | :------------------------------------------------------------------------------------------------------------------- |

1102| `skills` | Ein zusätzlicher Namespace-Skill `<name>:example` neben dem Standard-Skill |

1103| `agents` | Eine `agents/`-Subagent-Definition |

1104| `hooks` | Eine `hooks/hooks.json` mit einem Beispiel-Event-Handler |

1105| `mcp` | Eine `.mcp.json` mit HTTP- und Stdio-Server-Beispielen |

1106| `lsp` | Ein `.lsp.json`-Language-Server-Beispiel |

1107| `output-style` | Ein `output-styles/<name>.md`, das automatisch angewendet wird, während das Plugin aktiviert ist |

1108| `channel` | Ein MCP-basierter [channel](/docs/de/channels): ein Stdio-Server (`server.ts`), seine `.mcp.json` und eine `package.json` |

1109 

1110Das gerüstete Plugin verwendet die `@skills-dir`-Quelle statt eines Marketplace. Administratoren können diese Quelle mit `strictKnownMarketplaces` blockieren oder indem sie `{"source": "skills-dir"}` zu `blockedMarketplaces` in [managed settings](/docs/de/plugin-marketplaces#managed-marketplace-restrictions) hinzufügen. Wenn blockiert, schlägt `plugin init` fehl, bevor etwas geschrieben wird.

1111 

1112Diese Beispiele zeigen häufige Aufrufe:

1113 

1114```bash theme={null}

1115# Minimales Plugin gerüsten

1116claude plugin init my-helper

1117 

1118# Mit Skill- und Hook-Ordnern gerüsten

1119claude plugin init my-helper --with skills hooks

1120 

1121# Vorhandenes Gerüst überschreiben

1122claude plugin init my-helper --force

1123```

1124 

1125<h3 id="plugin-install">

1126 plugin install

1127</h3>

1128 

1129Ein Plugin aus verfügbaren Marketplaces installieren.

1130 

1131```bash theme={null}

1132claude plugin install <plugin> [options]

1133```

1134 

1135Der Befehl nimmt diese Argumente an:

1136 

1137* `<plugin>`: Plugin-Name oder `plugin-name@marketplace-name` für einen bestimmten Marketplace

1138 

1139Der Befehl akzeptiert diese Optionen:

1140 

1141| Option | Beschreibung | Standard |

1142| :-------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------- |

1143| `-s, --scope <scope>` | Installationsumfang: `user`, `project` oder `local` | `user` |

1144| `--config <key=value>` | Setzen Sie eine [`userConfig`](#user-configuration)-Option, die im Plugin-Manifest deklariert ist. Wiederholen Sie das Flag, um mehrere Optionen zu setzen | |

1145| `-y, --yes` | Akzeptieren Sie einen Befehl, den der Marketplace des Plugins deklariert, ohne die Bestätigungsaufforderung: den Befehl, der ein Plugin mit einer [`command`-Quelle](/docs/de/plugin-marketplaces#command-sources) erzeugt, oder den [`headersHelper`](/docs/de/plugin-marketplaces#authenticate-archive-downloads), der einen Archiv-Download authentifiziert. Das Akzeptieren eines `headersHelper` erfordert Claude Code v2.1.238 oder später. Claude Code druckt den Befehl trotzdem zuerst. Erforderlich, wenn stdin oder stdout kein TTY ist, es sei denn, Sie übergeben `--accept-command`. Hat keine Auswirkung innerhalb einer Claude Code-Sitzung, daher führen Sie den Befehl von Ihrem eigenen Terminal aus | |

1146| `--accept-command <sha256>` | Akzeptieren Sie den vom Marketplace deklarierten Befehl, dessen `sha256` ein vorheriger [`--json`-Lauf](#plugin-json-result) in `shownCommand` gemeldet hat, anstelle von `-y`. Die Akzeptanz zählt für genau diesen Befehl, dieses Plugin und diesen Marketplace-Katalog. Wenn sich einer von ihnen seit der Anzeige des Befehls geändert hat, einschließlich durch den eigenen Marketplace-Refresh des Laufs, akzeptiert Claude Code den Digest nicht und zeigt den Befehl erneut an. Kann nicht mit `-y` kombiniert werden. Hat keine Auswirkung innerhalb einer Claude Code-Sitzung, daher führen Sie den Befehl von Ihrem eigenen Terminal aus. Erfordert Claude Code v2.1.271 oder später | |

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

1148| `-h, --help` | Hilfe für Befehl anzeigen | |

1149 

1150Der Umfang bestimmt, welche Einstellungsdatei das installierte Plugin hinzugefügt wird. Beispielsweise schreibt `--scope project` zu `enabledPlugins` in .claude/settings.json, wodurch das Plugin für alle verfügbar wird, die das Projekt-Repository klonen.

1151 

1152<span id="plugin-json-result" />Mit `--json` ist die letzte Zeile von stdout ein JSON-Objekt. Analysieren Sie nur diese Zeile, da Claude Code jeden Befehl, den der Marketplace deklariert, davor druckt. Drei Felder sind immer vorhanden:

1153 

1154* `command`: der Unterbefehl, der ausgeführt wurde, wie `install`

1155* `outcome`: `ok` oder `failed`

1156* `message`: eine benutzerfreundliche Beschreibung des Ergebnisses

1157 

1158Andere Felder, wie `pluginId`, `scope` und `failureCode`, erscheinen nur, wenn sie zutreffen. Die `--json`-Option auf `plugin uninstall`, `plugin update`, `plugin enable` und `plugin disable` druckt das gleiche Objekt mit den eigenen Feldern dieses Unterbefehls. Ein Nutzungsfehler, wie ein ungültiger `--scope`, druckt keine Ergebniszeile und beendet sich mit 1 mit dem Grund auf stderr.

1159 

1160Wenn ein Lauf einen vom Marketplace deklarierten Befehl anzeigt und ihn nicht ausführt, trägt das `failed`-Ergebnis auch ein `shownCommand`-Objekt, dessen Felder den angezeigten Befehl, das Plugin, zu dem er gehört, und den `sha256` des Befehls enthalten. Um genau diesen Befehl zu akzeptieren, führen Sie ihn erneut mit diesem `sha256` als `--accept-command` aus. Erfordert Claude Code v2.1.271 oder später.

1161 

1162Wenn `shownCommand.acceptCommandMatched` `false` ist, stimmt der übergebene Digest nicht mit dem jetzt angezeigten Befehl überein. Zeigen Sie diesen Befehl einer Person, bevor Sie seinen `sha256` übergeben.

1163 

1164Diese Beispiele zeigen häufige Aufrufe:

1165 

1166```bash theme={null}

1167# Im Benutzerumfang installieren (Standard)

1168claude plugin install formatter@my-marketplace

1169 

1170# Im Projektumfang installieren (mit Team geteilt)

1171claude plugin install formatter@my-marketplace --scope project

1172 

1173# Im lokalen Umfang installieren (nicht mit Team geteilt)

1174claude plugin install formatter@my-marketplace --scope local

1175```

1176 

1177<h3 id="plugin-uninstall">

1178 plugin uninstall

1179</h3>

1180 

1181Ein installiertes Plugin entfernen.

1182 

1183```bash theme={null}

1184claude plugin uninstall <plugin> [options]

1185```

1186 

1187Der Befehl nimmt diese Argumente an:

1188 

1189* `<plugin>`: Plugin-Name oder `plugin-name@marketplace-name`

1190 

1191Der Befehl akzeptiert diese Optionen:

1192 

1193| Option | Beschreibung | Standard |

1194| :-------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------- |

1195| `-s, --scope <scope>` | Aus Umfang deinstallieren: `user`, `project` oder `local` | `user` |

1196| `--keep-data` | Das [persistent data directory](#persistent-data-directory) des Plugins beibehalten | |

1197| `--prune` | Auch automatisch installierte Abhängigkeiten entfernen, die kein anderes Plugin benötigt. Siehe [plugin prune](#plugin-prune) | |

1198| `-y, --yes` | Bestätigungsaufforderung für `--prune` überspringen. Erforderlich, wenn stdin oder stdout kein TTY ist | |

1199| `--json` | Geben Sie das Ergebnis als ein JSON-Objekt in der letzten Zeile von stdout aus, im [gleichen Format wie `plugin install --json`](#plugin-json-result). Kann nicht mit `--prune` kombiniert werden. Erfordert Claude Code v2.1.268 oder später | |

1200| `-h, --help` | Hilfe für Befehl anzeigen | |

1201 

1202`claude plugin remove` und `claude plugin rm` sind Aliase für diesen Befehl.

1203 

1204Standardmäßig werden beim Deinstallieren aus dem letzten verbleibenden Umfang auch das `${CLAUDE_PLUGIN_DATA}`-Verzeichnis des Plugins gelöscht. Verwenden Sie `--keep-data`, um es zu bewahren, beispielsweise beim Neuinstallieren nach dem Testen einer neuen Version.

1205 

1206<Note>

1207 Wenn installierte Plugins aus verschiedenen Marketplaces einen Namen teilen, deinstalliert die `plugin-name@marketplace-name`-Form nur das Plugin aus dem benannten Marketplace. Vor v2.1.212 konnte die qualifizierte Form das gleichnamige Plugin aus einem anderen Marketplace abgleichen und deinstallieren.

1208</Note>

1209 

1210<h3 id="plugin-prune">

1211 plugin prune

1212</h3>

1213 

1214Automatisch installierte Plugin-Abhängigkeiten entfernen, die nicht mehr von einem installierten Plugin benötigt werden. Abhängigkeiten, die Claude Code eingezogen hat, um das [`dependencies`](/docs/de/plugin-dependencies)-Feld eines anderen Plugins zu erfüllen, werden entfernt; Plugins, die Sie direkt installiert haben, werden nie berührt.

1215 

1216```bash theme={null}

1217claude plugin prune [options]

1218```

1219 

1220Der Befehl akzeptiert diese Optionen:

1221 

1222| Option | Beschreibung | Standard |

1223| :-------------------- | :--------------------------------------------------------------------------------------- | :------- |

1224| `-s, --scope <scope>` | Im Umfang bereinigen: `user`, `project` oder `local` | `user` |

1225| `--dry-run` | Auflisten, was entfernt würde, ohne etwas zu entfernen | |

1226| `-y, --yes` | Bestätigungsaufforderung überspringen. Erforderlich, wenn stdin oder stdout kein TTY ist | |

1227| `-h, --help` | Hilfe für Befehl anzeigen | |

1228 

1229`claude plugin autoremove` ist ein Alias für diesen Befehl.

1230 

1231Der Befehl listet verwaiste Abhängigkeiten auf und fragt vor dem Entfernen um Bestätigung. Um ein Plugin zu entfernen und seine Abhängigkeiten in einem Schritt zu bereinigen, führen Sie `claude plugin uninstall <plugin> --prune` aus.

1232 

1233<h3 id="plugin-enable">

1234 plugin enable

1235</h3>

1236 

1237Ein deaktiviertes Plugin aktivieren. Wenn das Ziel aus einem Marketplace installiert ist und [Abhängigkeiten](/docs/de/plugin-dependencies) deklariert, aktiviert Claude Code diese transitiv im gleichen Umfang. Der Befehl schlägt unter den Bedingungen fehl, die [Enable or disable a plugin with dependencies](/docs/de/plugin-dependencies#enable-or-disable-a-plugin-with-dependencies) auflistet.

1238 

1239```bash theme={null}

1240claude plugin enable <plugin> [options]

1241```

1242 

1243Der Befehl nimmt diese Argumente an:

1244 

1245* `<plugin>`: Plugin-Name, `plugin-name@marketplace-name` oder `plugin-name@synced` für ein [Plugin, das von claude.ai synchronisiert wird](#synced-plugins)

1246 

1247Der Befehl akzeptiert diese Optionen:

1248 

1249| Option | Beschreibung | Standard |

1250| :-------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :--------------------- |

1251| `-s, --scope <scope>` | Umfang zum Aktivieren: `user`, `project` oder `local`. Wenn weggelassen, erkennt Claude Code den Umfang, in dem das Plugin installiert ist | Automatische Erkennung |

1252| `--json` | Geben Sie das Ergebnis als ein JSON-Objekt in der letzten Zeile von stdout aus, im [gleichen Format wie `plugin install --json`](#plugin-json-result). Erfordert Claude Code v2.1.268 oder später | |

1253| `-h, --help` | Hilfe für Befehl anzeigen | |

1254 

1255<h3 id="plugin-disable">

1256 plugin disable

1257</h3>

1258 

1259Ein Plugin deaktivieren, ohne es zu deinstallieren.

1260 

1261Wenn das Ziel aus einem Marketplace installiert ist, schlägt der Befehl fehl, wenn ein anderes aktiviertes Plugin [davon abhängt](/docs/de/plugin-dependencies#enable-or-disable-a-plugin-with-dependencies). Die Fehlermeldung enthält einen verketteten Befehl, der zuerst alle abhängigen Plugins deaktiviert.

1262 

1263Für ein [synced plugin](#synced-plugins), das Ihre Organisation benötigt, schlägt der Befehl fehl und speichert nichts.

1264 

1265```bash theme={null}

1266claude plugin disable [plugin] [options]

1267```

1268 

1269Der Befehl nimmt diese Argumente an:

1270 

1271* `[plugin]`: Plugin-Name, `plugin-name@marketplace-name` oder `plugin-name@synced` für ein [Plugin, das von claude.ai synchronisiert wird](#synced-plugins). Optional bei Verwendung von `--all`

1272 

1273Der Befehl akzeptiert diese Optionen:

1274 

1275| Option | Beschreibung | Standard |

1276| :-------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :--------------------- |

1277| `-a, --all` | Alle aktivierten Plugins deaktivieren. Kann nicht mit `--scope` kombiniert werden | |

1278| `-s, --scope <scope>` | Umfang zum Deaktivieren: `user`, `project` oder `local`. Wenn weggelassen, erkennt Claude Code den Umfang, in dem das Plugin installiert ist | Automatische Erkennung |

1279| `--json` | Geben Sie das Ergebnis als ein JSON-Objekt in der letzten Zeile von stdout aus, im [gleichen Format wie `plugin install --json`](#plugin-json-result). Erfordert Claude Code v2.1.268 oder später | |

1280| `-h, --help` | Hilfe für Befehl anzeigen | |

1281 

1282<h3 id="plugin-update">

1283 plugin update

1284</h3>

1285 

1286Ein Plugin auf die neueste Version aktualisieren.

1287 

1288```bash theme={null}

1289claude plugin update <plugin> [options]

1290```

1291 

1292Der Befehl nimmt diese Argumente an:

1293 

1294* `<plugin>`: Plugin-Name oder `plugin-name@marketplace-name`

1295 

1296Der Befehl akzeptiert diese Optionen:

1297 

1298| Option | Beschreibung | Standard |

1299| :-------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------- |

1300| `-s, --scope <scope>` | Umfang zum Aktualisieren: `user`, `project`, `local` oder `managed` | `user` |

1301| `-y, --yes` | Akzeptieren Sie einen Befehl, den der Marketplace des Plugins deklariert, ohne die Bestätigungsaufforderung: den Befehl, der ein Plugin mit einer [`command`-Quelle](/docs/de/plugin-marketplaces#command-sources) erzeugt, oder den [`headersHelper`](/docs/de/plugin-marketplaces#authenticate-archive-downloads), der einen Archiv-Download authentifiziert. Das Akzeptieren eines `headersHelper` erfordert Claude Code v2.1.238 oder später. Claude Code druckt den Befehl trotzdem zuerst. Erforderlich, wenn stdin oder stdout kein TTY ist, es sei denn, Sie übergeben `--accept-command`. Hat keine Auswirkung innerhalb einer Claude Code-Sitzung, daher führen Sie den Befehl von Ihrem eigenen Terminal aus | |

1302| `--accept-command <sha256>` | Akzeptieren Sie den vom Marketplace deklarierten Befehl, dessen `sha256` ein vorheriger [`--json`-Lauf](#plugin-json-result) in `shownCommand` gemeldet hat, anstelle von `-y`. Die Akzeptanz zählt für genau diesen Befehl, dieses Plugin und diesen Marketplace-Katalog. Wenn sich einer von ihnen seit der Anzeige des Befehls geändert hat, einschließlich durch den eigenen Marketplace-Refresh des Laufs, akzeptiert Claude Code den Digest nicht und zeigt den Befehl erneut an. Kann nicht mit `-y` kombiniert werden. Hat keine Auswirkung innerhalb einer Claude Code-Sitzung, daher führen Sie den Befehl von Ihrem eigenen Terminal aus. Erfordert Claude Code v2.1.271 oder später | |

1303| `--json` | Geben Sie das Ergebnis als ein JSON-Objekt in der letzten Zeile von stdout aus, im [gleichen Format wie `plugin install --json`](#plugin-json-result). Erfordert Claude Code v2.1.268 oder später | |

1304| `-h, --help` | Hilfe für Befehl anzeigen | |

1305 

1306<Note>

1307 Claude Code löst einen einfachen Plugin-Namen gegen Ihre installierten Plugins auf. Wenn installierte Plugins aus verschiedenen Marketplaces den Namen teilen, weigert sich Claude Code zu aktualisieren und listet stattdessen die qualifizierten `plugin-name@marketplace-name`-Befehle auf, die ausgeführt werden sollen. Vor v2.1.246 akzeptierte Claude Code nur die qualifizierte Form und lehnte einen einfachen Namen als nicht gefunden ab.

1308</Note>

1309 

1310***

1311 

1312<h3 id="plugin-list">

1313 plugin list

1314</h3>

1315 

1316Installierte Plugins mit ihrer Version, Quell-Marketplace und Aktivierungsstatus auflisten.

1317 

1318```bash theme={null}

1319claude plugin list [options]

1320```

1321 

1322Der Befehl akzeptiert diese Optionen:

1323 

1324| Option | Beschreibung | Standard |

1325| :------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------- |

1326| `--json` | Ausgabe als JSON. Eine Plugin-Zeile mit Ladeproblemen oder Authoring-Warnungen trägt `errors`- oder `notes`-String-Arrays. Auf Claude Code v2.1.268 oder später geben parallele `errorDetails`- und `noteDetails`-Arrays jedem Eintrag seinen diagnostischen `type` und die Namen, auf die er sich bezieht, wie das Plugin, den Marketplace, den Server oder die Datei | |

1327| `--available` | Verfügbare Plugins aus Marketplaces einschließen. Erfordert `--json` | |

1328| `-h, --help` | Hilfe für Befehl anzeigen | |

1329 

1330Innerhalb einer interaktiven Sitzung druckt `/plugin list` eine ähnliche Auflistung inline, aber sie umfasst nur Marketplace-installierte Plugins:

1331 

1332* Plugins, die aus Skills-Verzeichnissen geladen werden, erscheinen in der `/plugin`-Schnittstelle und in `claude plugin list`, aber nicht in der Inline-Ausgabe `/plugin list`.

1333* [Plugins, die von claude.ai synchronisiert werden](#synced-plugins) erscheinen in `claude plugin list` auf Claude Code v2.1.239 oder später und in der `/plugin`-Schnittstelle, aber nicht in der Inline-Ausgabe `/plugin list`.

1334* Plugins, die für die Sitzung mit `--plugin-dir` oder `--plugin-url` geladen werden, erscheinen in der `/plugin`-Schnittstelle und in `claude plugin list` nur, wenn das gleiche Flag dem Unterbefehl vorangeht, wie in `claude --plugin-dir <dir> plugin list`. Nur das Flag benennt ihren Standort, daher kann ein einfaches `claude plugin list` sie nicht finden, anders als synchronisierte Plugins und Skills-Directory-Plugins, deren feste Verzeichnisse Claude Code scannt.

1335 

1336Die interaktive Form akzeptiert `--enabled` oder `--disabled`, um nur Plugins in diesem Zustand anzuzeigen, und `ls` als Kurzform für `list`.

1337 

1338<h3 id="plugin-details">

1339 plugin details

1340</h3>

1341 

1342Zeigen Sie das Komponenten-Inventar eines Plugins und die geschätzte Token-Kosten an. Die Ausgabe listet alle Komponenten auf, die das Plugin beiträgt, gruppiert als Skills, Agents, Hooks, MCP-Server und LSP-Server, zusammen mit einer Schätzung, wie viele Token es jeder Sitzung hinzufügt. Die Skills-Gruppe umfasst sowohl `skills/`- als auch `commands/`-Einträge.

1343 

1344```bash theme={null}

1345claude plugin details <name>

1346```

1347 

1348Der Befehl nimmt diese Argumente an:

1349 

1350* `<name>`: Plugin-Name oder `plugin-name@marketplace-name`

1351 

1352Der Befehl akzeptiert diese Optionen:

1353 

1354| Option | Beschreibung | Standard |

1355| :----------- | :------------------------ | :------- |

1356| `-h, --help` | Hilfe für Befehl anzeigen | |

1357 

1358Die Ausgabe zeigt zwei Kostenzahlen für jede Komponente:

1359 

1360* **Always-on:** Token, die jeder Sitzung durch den Auflistungstext des Plugins hinzugefügt werden, wie Skill-Beschreibungen, Agent-Beschreibungen und Befehlsnamen, unabhängig davon, ob eine Komponente ausgelöst wird.

1361* **On-invoke:** Token, die eine Komponente kostet, wenn sie ausgelöst wird. Wird pro Komponente angezeigt, nicht als Plugin-Gesamtsumme, da eine typische Sitzung nur eine Teilmenge von Komponenten aufruft.

1362 

1363Dieses Beispiel zeigt, wie die Ausgabe für ein Plugin mit zwei Skills aussieht:

1364 

1365```

1366dependency-guard 1.2.0

1367 Dependency analysis for Claude Code sessions

1368 Source: dependency-guard@example-marketplace

1369 

1370Component inventory

1371 Skills (2) scan-dependencies, review-changes

1372 Agents (0)

1373 Hooks (1) SessionStart (harness-only — no model context cost)

1374 MCP servers (0)

1375 LSP servers (0)

1376 

1377Projected token cost

1378 Always-on: ~180 tok added to every session

1379 

1380Per-component (rounded)

1381 component always-on on-invoke

1382 scan-dependencies ~100 ~2400

1383 review-changes ~80 ~1800

1384 

1385 On-invoke cost is paid each time a skill or agent fires.

1386 Token counts are estimates and may differ from actual usage.

1387```

1388 

1389Die Always-on-Gesamtsumme wird über die `count_tokens`-API für Ihr aktives Modell berechnet. Pro-Komponenten-Zahlen werden proportional von dieser Gesamtsumme skaliert. Wenn die API nicht erreichbar ist, greift der Befehl auf eine zeichenbasierte Schätzung zurück.

1390 

1391<h3 id="plugin-validate">

1392 plugin validate

1393</h3>

1394 

1395Überprüfen Sie ein Plugin oder einen Marketplace auf Syntax- und Schema-Fehler, bevor Sie veröffentlichen.

1396 

1397Der Befehl beendet sich mit 0, wenn die Validierung erfolgreich ist, mit 1, wenn sie fehlschlägt, und mit 2, wenn der Validierungslauf selbst fehlschlägt, z. B. wenn der übergebene Pfad nicht lesbar ist.

1398 

1399```bash theme={null}

1400claude plugin validate <path> [options]

1401```

1402 

1403Der Befehl nimmt diese Argumente an:

1404 

1405* `<path>`: Pfad zu einem Plugin-Verzeichnis oder einem Marketplace-Verzeichnis. Siehe [Validate a plugin or a directory without a manifest](/docs/de/plugin-marketplaces#validate-a-plugin-or-a-directory-without-a-manifest) für die Dateien, die ein Plugin-Lauf abdeckt.

1406 

1407Der Befehl akzeptiert diese Optionen:

1408 

1409| Option | Beschreibung | Standard |

1410| :----------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------- |

1411| `--strict` | Warnungen als Fehler behandeln und mit 1 beenden. Verwenden Sie in CI, um Probleme zu erfassen, die die Laufzeit toleriert, wie [unrecognized fields](#unrecognized-fields) | |

1412| `--json` | Geben Sie den Validierungsbericht als ein JSON-Objekt aus mit den gleichen Exit-Codes. Erfordert Claude Code v2.1.259 oder später | |

1413| `-h, --help` | Hilfe für Befehl anzeigen | |

1414 

1415Mit `--json` schreibt Claude Code den Bericht auf stdout als ein JSON-Objekt mit diesen Top-Level-Feldern:

1416 

1417* `success`: das gleiche Urteil, das der Exit-Code gibt

1418* `strict`: ob der Lauf Warnungen als Fehler behandelt hat

1419* `target`: der aufgelöste Pfad, den Claude Code validiert hat

1420* `manifest`: das eigene Ergebnis des Manifests oder `null` für einen [Lauf ohne Manifest](/docs/de/plugin-marketplaces#validate-a-plugin-or-a-directory-without-a-manifest)

1421* `contents`: Pro-Datei-Ergebnisse, jede benannt nach ihrer `file` und mit `errors`-, `warnings`- und `notes`-Arrays

1422 

1423Bei Exit 2 schreibt der Befehl nichts auf stdout; die Fehlermeldung geht auf stderr.

1424 

1425Innerhalb einer interaktiven Sitzung führt `/plugin validate <path>` die gleichen Überprüfungen inline aus.

1426 

1427<h3 id="plugin-eval">

1428 plugin eval

1429</h3>

1430 

1431Führen Sie die [eval cases](/docs/de/plugin-evals) eines Plugins aus und melden Sie bewertete Ergebnisse. Erfordert Claude Code v2.1.269 oder später. Jeder Fall ist ein Prompt plus Bewerter; Claude Code führt ihn mehrmals in einer isolierten Sitzung aus, in der nur das Ziel-Plugin geladen ist, und standardmäßig auch ohne das Plugin, damit der Bericht den Unterschied zeigt. Siehe [Test plugins with evals](/docs/de/plugin-evals) für das Case-Format, Bewerter, Ergebnisse und CI-Nutzung.

1432 

1433```bash theme={null}

1434claude plugin eval [target] [options]

1435```

1436 

1437Das optionale `target` ist ein Plugin-Verzeichnis, eine einzelne `prompt.md`- oder `case.yaml`-Datei, ein installiertes Plugin als `name` oder `name@marketplace`, oder `name@skills-dir`, und standardmäßig das aktuelle Verzeichnis. Platzieren Sie es vor `--tag`, `--allow-tools` und `--json`.

1438 

1439Diese Tabelle listet die Optionen auf, die die meisten Läufe verwenden. Führen Sie `claude plugin eval --help` aus, um den vollständigen Satz zu sehen, einschließlich `--case`, `--tag`, `--output-dir`, `--report`, `--allow-real-servers`, `--keep-temp` und `--verbose`.

1440 

1441| Option | Beschreibung | Standard |

1442| :------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------- |

1443| `--runs <n>` | Läufe pro Fall pro Arm | Jedes Case's `runs`, sonst 3 |

1444| `-j, --concurrency <n>` | Agent-Sitzungen, die gleichzeitig ausgeführt werden, 1 bis 8. Sie teilen Ihr Rate Limit | `1` |

1445| `--model <model>` | Modell für den getesteten Agent | Jedes Case's `model`, sonst `ANTHROPIC_MODEL` falls gesetzt, sonst Claude Code's Standard |

1446| `--judge-model <model>` | Modell für `llm`- und `baseline`-Bewerter | Ein kleines schnelles Modell |

1447| `--ablation <mode>` | `none` oder `with-without`. Siehe [Compare against a no-plugin baseline](/docs/de/plugin-evals#compare-against-a-no-plugin-baseline) | `with-without` wenn ein Plugin aufgelöst wird, sonst `none` |

1448| `--threshold <0..1>` | Beenden Sie mit 1, wenn ein Case unter diesem Wert bewertet wird | `1.0` |

1449| `--max-cost-usd <usd>` | Stoppen Sie vor dem nächsten Lauf, sobald die Ausgaben diesen Betrag erreichen, beenden Sie mit 2 und melden Sie Teilergebnisse | Keine Obergrenze |

1450| `--allow-tools <tools...>` | Gewähren Sie Tools über den schreibgeschützten Satz hinaus, wie `Bash`, `Write`, `Edit` oder `"mcp__plugin_<plugin>_<server>__*"`. Siehe [Grant tools](/docs/de/plugin-evals#grant-tools) | |

1451| `--scaffold` | Führen Sie das [`scaffold_script`](/docs/de/plugin-evals#add-setup-or-history-with-case-yaml) jedes Cases aus | Aus |

1452| `--trust-plugin` | Überspringen Sie die Vertrauensaufforderung beim ersten Lauf, für CI. Siehe [What a run can access](/docs/de/plugin-evals#security) | Aus |

1453| `--mocks <mode>` | `record` oder `off`. Siehe [Mock MCP servers](/docs/de/plugin-evals#mock-mcp-servers) | `record` |

1454| `--eval-dir <dir>` | Verzeichnis unter dem Plugin, das die Cases enthält | Das Manifest's `experimental.evals`, sonst `evals` |

1455| `--json [path]` | Drucken Sie das [result document](/docs/de/plugin-evals#json-result) auf stdout, oder schreiben Sie es in einen `.json`-Pfad | |

1456| `--no-publish` | Halten Sie den HTML-Bericht lokal | |

1457| `-h, --help` | Hilfe für Befehl anzeigen | |

1458 

1459Der Befehl beendet sich mit 0, wenn jeder Fall den Schwellenwert erfüllt, mit 1 bei einem fehlgeschlagenen Fall, einem Ladefehler oder einem nicht vertrauenswürdigen Plugin-Verzeichnis, mit 2 bei einem Teillauf, mit 130 bei Unterbrechung und mit 143 bei Beendigung. Siehe [Run evals in CI](/docs/de/plugin-evals#run-evals-in-ci).

1460 

1461<h3 id="plugin-eval-init">

1462 plugin eval init

1463</h3>

1464 

1465Erstellen Sie eine Eval-Suite für das Plugin im aktuellen Verzeichnis. Erfordert Claude Code v2.1.269 oder später. In einem Terminal startet dies ein Authoring-Interview, das das Plugin liest, Cases und Bewerter vorschlägt, sie pilotiert und die Dateien schreibt. Mit `--bare` oder ohne Terminal schreibt es stattdessen eine leere Single-Case-Vorlage. Wenn Sie von einer interaktiven Claude Code-Sitzung aus ausgeführt werden, druckt es die Interview-Anweisungen für diese Sitzung, um sie zu befolgen, anstatt eine Vorlage zu schreiben. Siehe [Create your first eval suite](/docs/de/plugin-evals#create-your-first-eval-suite).

1466 

1467```bash theme={null}

1468claude plugin eval init [name] [options]

1469```

1470 

1471Das optionale `name` ist ein Case-Name: Das Interview benötigt keinen, während `--bare` und die No-Terminal-Vorlagenpfad ihn benötigen. Es akzeptiert diese Optionen:

1472 

1473| Option | Beschreibung | Standard |

1474| :------------------ | :----------------------------------------------------------------------------------------- | :------------------------------------------------- |

1475| `--bare` | Schreiben Sie stattdessen ein leeres `prompt.md` und `graders/criteria.md` für `<name>` | |

1476| `-i, --interactive` | Erfordern Sie das Interview. Schlägt ohne Terminal fehl, anstatt eine Vorlage zu schreiben | |

1477| `--eval-dir <dir>` | Verzeichnis unter dem aktuellen Verzeichnis, um Cases hineinzuschreiben | Das Manifest's `experimental.evals`, sonst `evals` |

1478| `-h, --help` | Hilfe für Befehl anzeigen | |

1479 

1480<h3 id="plugin-tag">

1481 plugin tag

1482</h3>

1483 

1484Erstellen Sie ein Release-Git-Tag für ein Plugin. Standardmäßig taggt der Befehl das Plugin im aktuellen Verzeichnis; übergeben Sie einen Pfad, um ein Plugin an anderer Stelle zu taggen. Siehe [Tag plugin releases](/docs/de/plugin-dependencies#tag-plugin-releases-for-version-resolution).

1485 

1486```bash theme={null}

1487claude plugin tag [path] [options]

1488```

1489 

1490Der Befehl nimmt diese Argumente an:

1491 

1492* `[path]`: Pfad zum Plugin-Verzeichnis. Standardmäßig das aktuelle Verzeichnis.

1493 

1494Der Befehl akzeptiert diese Optionen:

1495 

1496| Option | Beschreibung | Standard |

1497| :-------------------- | :----------------------------------------------------------------------------------------- | :------- |

1498| `--push` | Das Tag nach dem Erstellen zum Remote pushen | |

1499| `--dry-run` | Drucken Sie, was getaggt würde, ohne das Tag zu erstellen | |

1500| `-f, --force` | Das Tag erstellen, auch wenn der Working Tree schmutzig ist oder das Tag bereits existiert | |

1501| `-m, --message <msg>` | Tag-Anmerkungsnachricht. Verwenden Sie `%s` als Platzhalter für die Version | |

1502| `--remote <name>` | Remote zum Pushen mit `--push` | `origin` |

1503| `-h, --help` | Hilfe für Befehl anzeigen | |

1504 

1505***

1506 

1507<h2 id="debugging-and-development-tools">

1508 Debugging- und Entwicklungstools

1509</h2>

1510 

1511<h3 id="debugging-commands">

1512 Debugging-Befehle

1513</h3>

1514 

1515Verwenden Sie `claude --debug`, um Details zum Laden von Plugins anzuzeigen:

1516 

1517Dies zeigt:

1518 

1519* Welche Plugins geladen werden

1520* Alle Fehler in Plugin-Manifesten

1521* Registrierung von Skills, Agents und Hooks

1522* MCP-Server-Initialisierung

1523 

1524<h3 id="common-issues">

1525 Häufige Probleme

1526</h3>

1527 

1528| Problem | Ursache | Lösung |

1529| :---------------------------------- | :-------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

1530| Plugin wird nicht geladen | Ungültige `plugin.json` | Führen Sie `claude plugin validate ./my-plugin` oder `/plugin validate ./my-plugin` aus, wobei `./my-plugin` Ihr Plugin-Verzeichnis ist, um `plugin.json`, `hooks/hooks.json` und die Frontmatter der Skills, Agents und Commands in den Standard-Verzeichnissen des Plugins auf Syntax- und Schema-Fehler zu überprüfen. Siehe [Plugin oder Verzeichnis ohne Manifest validieren](/docs/de/plugin-marketplaces#validate-a-plugin-or-a-directory-without-a-manifest), um zu erfahren, was eine Ausführung abdeckt |

1531| Skills werden nicht angezeigt | Falsche Verzeichnisstruktur | Stellen Sie sicher, dass `skills/` oder `commands/` sich im Plugin-Root befindet, nicht in `.claude-plugin/` |

1532| Hooks werden nicht ausgelöst | Skript ist nicht ausführbar | Führen Sie `chmod +x script.sh` aus |

1533| MCP-Server schlägt fehl | Fehlende `${CLAUDE_PLUGIN_ROOT}` | Verwenden Sie Variable für alle Plugin-Pfade |

1534| Pfadfehler | Absolute Pfade verwendet | Machen Sie Pfade relativ, beginnend mit `./`; siehe [Pfad-Verhaltensregeln](#path-behavior-rules), die die `"."` Ausnahme des `skills`-Feldes abdecken |

1535| LSP `Executable not found in $PATH` | Language Server nicht installiert | Installieren Sie die Binärdatei (z. B. `npm install -g typescript-language-server typescript`) |

1536 

1537<h3 id="example-error-messages">

1538 Beispiel-Fehlermeldungen

1539</h3>

1540 

1541**Manifest-Validierungsfehler**:

1542 

1543* `Invalid JSON syntax: Unexpected token } in JSON at position 142`: Überprüfen Sie auf fehlende Kommas, zusätzliche Kommas oder nicht in Anführungszeichen gesetzte Strings

1544* `Plugin <name> has an invalid manifest file at .claude-plugin/plugin.json. Validation errors: name: Invalid input: expected string, received undefined`: Ein erforderliches Feld fehlt

1545* `Plugin <name> has a corrupt manifest file at .claude-plugin/plugin.json. JSON parse error: ...`: JSON-Syntaxfehler. Vor v2.1.246 erzeugte Claude Code diesen Fehler auch für eine `plugin.json`, die als UTF-8 mit einer führenden Byte-Order-Mark (BOM) gespeichert wurde, selbst wenn das JSON ansonsten gültig war.

1546 

1547**Plugin-Ladefehler**:

1548 

1549* `Warning: No commands found in plugin my-plugin custom directory: ./cmds. Expected .md files or SKILL.md in subdirectories.`: Befehlspfad existiert, enthält aber keine gültigen Befehlsdateien

1550* `Plugin directory not found at path: ./plugins/my-plugin. Check that the marketplace entry has the correct path.`: Der `source`-Pfad in marketplace.json verweist auf ein nicht vorhandenes Verzeichnis

1551* `Plugin my-plugin has conflicting manifests: both plugin.json and marketplace entry specify components.`: Entfernen Sie doppelte Komponentendefinitionen oder entfernen Sie `strict: false` im Marketplace-Eintrag

1552 

1553<h3 id="hook-troubleshooting">

1554 Hook-Fehlerbehebung

1555</h3>

1556 

1557**Hook-Skript wird nicht ausgeführt**:

1558 

15591. Überprüfen Sie, dass das Skript ausführbar ist: `chmod +x ./scripts/your-script.sh`

15602. Überprüfen Sie die Shebang-Zeile: Die erste Zeile sollte `#!/bin/bash` oder `#!/usr/bin/env bash` sein

15613. Überprüfen Sie, dass der Pfad `${CLAUDE_PLUGIN_ROOT}` verwendet: `"command": "\"${CLAUDE_PLUGIN_ROOT}\"/scripts/your-script.sh"`

15624. Testen Sie das Skript manuell: `./scripts/your-script.sh`

1563 

1564**Hook wird bei erwarteten Ereignissen nicht ausgelöst**:

1565 

15661. Überprüfen Sie, dass der Ereignisname korrekt ist (Groß-/Kleinschreibung beachten): `PostToolUse`, nicht `postToolUse`

15672. Überprüfen Sie, dass das Matcher-Muster Ihre Tools entspricht: `"matcher": "Write|Edit"` für Dateivorgänge

15683. Bestätigen Sie, dass der Hook-Typ gültig ist: `command`, `http`, `mcp_tool`, `prompt` oder `agent`

1569 

1570<h3 id="mcp-server-troubleshooting">

1571 MCP-Server-Fehlerbehebung

1572</h3>

1573 

1574**Server startet nicht**:

1575 

15761. Überprüfen Sie, dass der Befehl existiert und ausführbar ist

15772. Überprüfen Sie, dass alle Pfade die `${CLAUDE_PLUGIN_ROOT}` Variable verwenden

15783. Überprüfen Sie die MCP-Server-Protokolle: `claude --debug` zeigt Initialisierungsfehler

15794. Testen Sie den Server manuell außerhalb von Claude Code

1580 

1581**Server-Tools werden nicht angezeigt**:

1582 

15831. Stellen Sie sicher, dass der Server ordnungsgemäß in `.mcp.json` oder `plugin.json` konfiguriert ist

15842. Überprüfen Sie, dass der Server das MCP-Protokoll korrekt implementiert

15853. Überprüfen Sie auf Verbindungs-Timeouts in der Debug-Ausgabe

1586 

1587<h3 id="directory-structure-mistakes">

1588 Fehler in der Verzeichnisstruktur

1589</h3>

1590 

1591**Symptome**: Plugin wird geladen, aber Komponenten (Skills, Agents, Hooks) fehlen.

1592 

1593**Korrekte Struktur**: Komponenten müssen sich im Plugin-Root befinden, nicht in `.claude-plugin/`. Nur `plugin.json` gehört in `.claude-plugin/`.

1594 

1595**Debug-Checkliste**:

1596 

15971. Führen Sie `claude --debug` aus und suchen Sie nach „loading plugin"-Meldungen

15982. Überprüfen Sie, dass jedes Komponenten-Verzeichnis in der Debug-Ausgabe aufgelistet ist

15993. Überprüfen Sie, dass Dateiberechtigungen das Lesen der Plugin-Dateien ermöglichen

1600 

1601***

1602 

1603<h2 id="distribution-and-versioning-reference">

1604 Verteilungs- und Versionierungsreferenz

1605</h2>

1606 

1607<h3 id="version-management">

1608 Versionsverwaltung

1609</h3>

1610 

1611Claude Code verwendet die Version des Plugins als Cache-Schlüssel, der bestimmt, ob ein Update verfügbar ist. Wenn Sie `/plugin update` ausführen oder Auto-Update aktiviert ist, berechnet Claude Code die aktuelle Version und überspringt das Update, wenn sie mit der bereits installierten Version übereinstimmt. Ein Plugin, das [an Ort und Stelle geladen](#plugin-caching-and-file-resolution) wird, aus einem lokalen Marketplace-Verzeichnis lädt seine aktuellen Quelldateien bei jedem Sitzungsstart, unabhängig davon, was die Versionsnummer sagt.

1612 

1613Für jeden Quellentyp außer `command` löst Claude Code die Version aus dem ersten dieser Punkte auf, der gesetzt ist:

1614 

16151. Das Feld `version` in der `plugin.json` des Plugins

16162. Das Feld `version` im Marketplace-Eintrag des Plugins in `marketplace.json`

16173. Der Git-Commit-SHA des Plugin-Quellcodes für `github`, `url`, `git-subdir` und relative-path-Quellen in einem Git-gehosteten Marketplace

16184. Der SHA-256-Digest für [`archive`-Quellen](/docs/de/plugin-marketplaces#zip-archives): der `sha256`-Pin im Marketplace-Eintrag oder der Digest der heruntergeladenen Datei, wenn Sie keinen Pin setzen. Claude Code kürzt ihn auf die ersten 12 Zeichen

16195. `unknown` für `npm`-Quellen oder lokale Verzeichnisse, die sich nicht in einem Git-Repository befinden. Claude Code nimmt die Version nicht aus einem Repository, das den Installationspfad umschließt, wie ein Git-verwaltetes `~/.claude`

1620 

1621Für eine [`command`-Quelle](/docs/de/plugin-marketplaces#command-sources) leitet Claude Code die Version immer aus dem ab, was der Befehl produziert: einen 12-stelligen Content-Hash allein oder an die `plugin.json`-Version als `<version>-<hash>` angehängt, wenn einer gesetzt ist. Claude Code ignoriert das Feld `version` des Marketplace-Eintrags für Command-Quellen. Ein Befehl, dessen gehashte Ausgabe sich ändert, produziert daher eine neue Version, auch wenn die verfasste Versionsnummer gleich bleibt. Im [Link-Modus](/docs/de/plugin-marketplaces#copy-mode-and-link-mode) deckt der Hash den echten Pfad des gedruckten Verzeichnisses und seine Einträge auf oberster Ebene ab, anstatt der Dateiinhalte.

1622 

1623Für diese Quellentypen gibt es drei Möglichkeiten, ein Plugin zu versionieren:

1624 

1625| Ansatz | Wie | Update-Verhalten | Am besten für |

1626| :--------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------- |

1627| **Explizite Version** | Setzen Sie `"version": "2.1.0"` in `plugin.json` | Benutzer erhalten Updates nur, wenn Sie dieses Feld erhöhen. Das Pushen neuer Commits ohne Erhöhung hat keine Auswirkung, und `/plugin update` meldet „bereits auf der neuesten Version". Für ein Plugin, das [an Ort und Stelle geladen](#plugin-caching-and-file-resolution) wird, wird der neue Inhalt trotzdem geladen. | Veröffentlichte Plugins mit stabilen Release-Zyklen |

1628| **Commit-SHA-Version** | Lassen Sie `version` sowohl in `plugin.json` als auch im Marketplace-Eintrag weg | Benutzer erhalten Updates, wenn sich der aufgelöste Commit der Quelle ändert | Interne oder Team-Plugins unter aktiver Entwicklung |

1629| **Digest-Version** | Verwenden Sie eine [`archive`-Quelle](/docs/de/plugin-marketplaces#zip-archives) und lassen Sie `version` sowohl in `plugin.json` als auch im Marketplace-Eintrag weg | Mit einem `sha256`-Pin erhalten Benutzer Updates, wenn Sie den Pin ändern. Ohne einen erhalten Benutzer Updates, wenn sich die Bytes der gehosteten ZIP-Datei ändern | Plugins, die als ZIP-Dateien auf einem statischen Server oder in einem Artefakt-Repository veröffentlicht werden |

1630 

1631Wenn Sie explizite Versionen verwenden, folgen Sie [semantischer Versionierung](https://semver.org) (`MAJOR.MINOR.PATCH`): erhöhen Sie MAJOR für Breaking Changes, MINOR für neue Funktionen, PATCH für Bugfixes. Dokumentieren Sie Änderungen in einer `CHANGELOG.md`.

1632 

1633***

1634 

1635<h2 id="see-also">

1636 Siehe auch

1637</h2>

1638 

1639* [Plugins](/docs/de/plugins) - Tutorials und praktische Verwendung

1640* [Plugin-Marktplätze](/docs/de/plugin-marketplaces) - Erstellen und Verwalten von Marktplätzen

1641* [Skills](/docs/de/skills) - Skill-Entwicklungsdetails

1642* [Subagents](/docs/de/sub-agents) - Agent-Konfiguration und Fähigkeiten

1643* [Hooks](/docs/de/hooks) - Event-Handling und Automatisierung

1644* [MCP](/docs/de/mcp) - Integration externer Tools

1645* [Einstellungen](/docs/de/settings) - Konfigurationsoptionen für Plugins

plugins/cli-hints.md +136 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Empfehlen Sie Ihr Plugin über Ihre CLI

6 

7> Fordern Sie Claude Code-Benutzer auf, Ihr offizielles Marketplace-Plugin zu installieren, indem Sie ein claude-code-hint-Tag von Ihrer CLI oder SDK ausgeben.

8 

9Wenn Sie eine CLI oder SDK verwalten, kann Ihr Tool Claude Code-Benutzer auffordern, Ihr Plugin zu installieren. Wenn Ihre CLI erkennt, dass sie in Claude Code ausgeführt wird, schreiben Sie ein einzeiliges `<claude-code-hint />`-Tag auf stderr. Claude Code entfernt die Zeile aus der Bash- und PowerShell-Tool-Ausgabe, bevor das Modell die Ausgabe sieht, und zeigt dem Benutzer dann eine einmalige Installationsaufforderung an.

10 

11Diese Seite gilt nur, wenn Ihr Plugin in `claude-plugins-official` oder einem anderen Marketplace mit einem der [offiziellen Marketplace-Namen](/docs/de/plugins/security#official-marketplace-names) von Anthropic aufgelistet ist. Der Community-Marketplace `claude-community` ist nicht einer davon.

12 

13<Note>

14 Informationen zum Veröffentlichen eines Plugins finden Sie unter [Plugin veröffentlichen und verteilen](/docs/de/plugins/publish).

15</Note>

16 

17<h2 id="emit-the-hint">

18 Geben Sie den Hinweis aus

19</h2>

20 

21Geben Sie das Tag nur aus, wenn `CLAUDECODE` oder `CLAUDE_CODE_CHILD_SESSION` gesetzt ist, damit es nicht angezeigt wird, wenn eine Person Ihre CLI direkt ausführt.

22 

23Claude Code setzt `CLAUDECODE=1` in den Befehlen, die es über die Bash- und PowerShell-Tools ausführt, und in Hook-Befehlen. Ab v2.1.172 setzt es dort auch `CLAUDE_CODE_CHILD_SESSION=1`. Die Variablen unterscheiden sich darin, welche Prozesse sie tragen:

24 

25* **`CLAUDECODE`**: wird von jeder Claude Code-Version gesetzt. IDE-Erweiterungen setzen es auch in ihren integrierten Terminals, sodass ein Gate nur auf `CLAUDECODE` das Tag auch ausgibt, wenn eine Person Ihre CLI selbst in einem dieser Terminals ausführt

26* **`CLAUDE_CODE_CHILD_SESSION`**: wird nur in Subprozessen gesetzt, die Claude Code selbst startet. Verwenden Sie es, wenn Sie v2.1.172 oder später benötigen

27 

28Die [Referenz für Umgebungsvariablen](/docs/de/env-vars) enthält die Details.

29 

30Die folgenden Beispiele gaten auf `CLAUDECODE` für die größtmögliche Reichweite und geben einen Hinweis für ein Plugin namens `example-cli` im offiziellen Marketplace aus:

31 

32<CodeGroup>

33 ```javascript Node.js theme={null}

34 if (process.env.CLAUDECODE) {

35 process.stderr.write(

36 '<claude-code-hint v="1" type="plugin" value="example-cli@claude-plugins-official" />\n',

37 )

38 }

39 ```

40 

41 ```python Python theme={null}

42 import os, sys

43 

44 if os.environ.get("CLAUDECODE"):

45 print(

46 '<claude-code-hint v="1" type="plugin" value="example-cli@claude-plugins-official" />',

47 file=sys.stderr,

48 )

49 ```

50 

51 ```go Go theme={null}

52 if os.Getenv("CLAUDECODE") != "" {

53 fmt.Fprintln(os.Stderr,

54 `<claude-code-hint v="1" type="plugin" value="example-cli@claude-plugins-official" />`)

55 }

56 ```

57 

58 ```shell Shell theme={null}

59 if [ -n "$CLAUDECODE" ]; then

60 printf '%s\n' '<claude-code-hint v="1" type="plugin" value="example-cli@claude-plugins-official" />' >&2

61 fi

62 ```

63</CodeGroup>

64 

65Ersetzen Sie `example-cli` durch den Namen Ihres Plugins im offiziellen Marketplace.

66 

67Sie können den Hinweis bei jeder Ausführung ausgeben, da Claude Code für jedes Plugin einmal auffordert.

68 

69Um den Emitter zu überprüfen, führen Sie `CLAUDECODE=1 example-cli` in einem Terminal aus und bestätigen Sie, dass die Tag-Zeile auf stderr angezeigt wird. Führen Sie dann `example-cli` ohne die Variable aus und bestätigen Sie, dass nichts Zusätzliches gedruckt wird.

70 

71<h2 id="hint-format">

72 Hinweisformat

73</h2>

74 

75Das Tag muss auf seiner eigenen Zeile stehen; Claude Code ignoriert ein Tag, das in der Mitte einer Zeile eingebettet ist.

76 

77Das Tag benötigt drei Attribute, alle erforderlich:

78 

79| Attribut | Beschreibung |

80| :------- | :------------------------------------------------------ |

81| `v` | Protokollversion. `1` ist der einzige unterstützte Wert |

82| `type` | Hinweistyp. `plugin` ist der einzige unterstützte Wert |

83| `value` | Plugin-Identifier in der Form `name@marketplace` |

84 

85Werte können in Anführungszeichen oder ohne Anführungszeichen stehen; ein Wert ohne Anführungszeichen kann keine Leerzeichen enthalten.

86 

87Claude Code entfernt die Zeile aus der Ausgabe, auch wenn `v` oder `type` nicht erkannt wird.

88 

89<h2 id="check-when-the-prompt-appears">

90 Überprüfen Sie, wann die Aufforderung angezeigt wird

91</h2>

92 

93Die Aufforderung wird nur in interaktiven Terminal-Sitzungen angezeigt. In `claude -p`-Ausführungen, in Subagent-Ausführungen und in Hook-Befehlsausgaben wird das Tag entfernt und es wird keine Aufforderung angezeigt. Alle diese Überprüfungen müssen auch bestanden werden:

94 

95* **Offiziell und installierbar**: `value` benennt ein Plugin, das Claude Code in seiner lokalen Kopie eines offiziellen Marketplace findet, das noch nicht installiert ist und das keine Richtlinie blockiert

96* **Analytik aktiviert**: eine Sitzung, in der Claude Code-Analytik deaktiviert sind, wird nie aufgefordert, z. B. eine mit `DISABLE_TELEMETRY`, `DO_NOT_TRACK` oder `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` gesetzt, oder eine bei einem Drittanbieter wie Amazon Bedrock, wo die [automatische Telemetrie-Abmeldung](/docs/de/data-usage#default-behaviors-by-api-provider) gilt

97* **Häufigkeitsgrenzen**: eine Aufforderung pro Sitzung, eine Aufforderung insgesamt pro Plugin unabhängig von der Antwort des Benutzers, und keine, sobald 100 Plugins auf diesem Computer aufgefordert wurden

98* **Nicht deaktiviert**: der Benutzer hat nicht **Nein, und zeige mir keine Plugin-Installationshinweise mehr** gewählt

99* **Lokale, betreute Sitzung**: der Arbeitsbereich der Sitzung ist lokal und nicht auf einem Cloud- oder Remote-Computer, und die Sitzung wird nicht unbeaufsichtigt ausgeführt. Beispielsweise wird eine Sitzung, die mit `--cloud` gestartet wurde, eine Sitzung, die Remote Control bereitstellt, oder ein Agent-Team-Teamkollege nie aufgefordert

100 

101<h2 id="preview-what-the-user-sees">

102 Vorschau auf das, was der Benutzer sieht

103</h2>

104 

105Wenn die Überprüfungen in [Überprüfen Sie, wann die Aufforderung angezeigt wird](#check-when-the-prompt-appears) bestanden werden, zeigt Claude Code einen **Plugin-Empfehlungs**-Dialog wie folgt an:

106 

107```text theme={null}

108─────────────────────────────────────────────────────────────

109 Plugin-Empfehlung

110 

111 Der Befehl example-cli schlägt vor, ein Plugin zu installieren.

112 

113 Plugin: example-cli

114 Marketplace: claude-plugins-official

115 Beschreibung: Offizielle Integration für example-cli-Bereitstellungen

116 

117 Möchten Sie es installieren?

118 ❯ 1. Ja, installieren

119 2. Nein

120 3. Nein, und zeige mir keine Plugin-Installationshinweise mehr

121 

122─────────────────────────────────────────────────────────────

123```

124 

125Der Dialog benennt das erste Wort des Shell-Befehls, den Claude ausgeführt hat, damit Benutzer eine Nichtübereinstimmung erkennen können. Jede Antwort hat eine Auswirkung:

126 

127* **Ja, installieren**: installiert das Plugin im [Benutzerbereich](/docs/de/plugins/install)

128* **Nein, und zeige mir keine Plugin-Installationshinweise mehr**: deaktiviert zukünftige Hinweisaufforderungen für diesen Benutzer

129* **Keine Antwort für 30 Sekunden**: zählt als **Nein**

130 

131<h2 id="next-steps">

132 Nächste Schritte

133</h2>

134 

135* [Plugin veröffentlichen und verteilen](/docs/de/plugins/publish): die Routen in jeden Marketplace, einschließlich des offiziellen Marketplace, den der Hinweis benötigt

136* [Plugin-Befehle-Referenz](/docs/de/plugins/cli-reference#plugin-install): der Shell-Befehl, der das gleiche Plugin außerhalb einer Sitzung installiert

plugins/code-intelligence.md +156 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Code-Intelligence-Plugins

6 

7> Installieren Sie ein Language-Server-Plugin, damit Claude nach Änderungen Typfehler sieht und Code nach Symbol navigiert, und beantworten Sie den LSP-Plugin-Empfehlungsdialog.

8 

9Ein Code-Intelligence-Plugin gibt Claude die Live-Diagnose und Go-to-Definition, die Ihr Editor hat, damit Claude Typfehler und fehlende Importe erkennt, die seine eigenen Änderungen einführen, bevor Sie Ihren Build ausführen, und findet Definitionen und Referenzen nach Symbol statt nach Textsuche.

10 

11Jedes Plugin verbindet Claude Code mit einem Language Server für eine Sprache über das Language Server Protocol (LSP). Sie installieren das Plugin aus Anthropics offiziellem Marketplace und die Language-Server-Binärdatei auf Ihrem Computer.

12 

13<Note>

14 Code-Intelligence-Plugins funktionieren in Terminal-Sitzungen. In [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) startet Claude Code keine Plugin-Language-Server, daher erhält Claude dort keine Diagnose oder Code-Navigation. Um Ihren eigenen Language-Server-Plugin zu schreiben oder einen Language Server ohne Plugin zu verbinden, siehe [LSP-Server in Plugin-Komponenten](/docs/de/plugins/components#lsp-servers).

15</Note>

16 

17Um zu beginnen, finden Sie Ihre Sprache in der Tabelle unter [Code-Intelligence-Plugin installieren](#install-a-code-intelligence-plugin). Die Plugins in dieser Tabelle stammen aus Anthropics [offiziellem Plugin-Marketplace](/docs/de/plugins/anthropic-marketplaces).

18 

19Wenn Sie bereits einen **LSP-Plugin-Empfehlungsdialog** gesehen haben, siehe [Empfehlungsdialog akzeptieren oder verwerfen](#accept-or-dismiss-the-recommendation-dialog), um zu sehen, was jede Wahl bewirkt.

20 

21<h2 id="install-a-code-intelligence-plugin">

22 Code-Intelligence-Plugin installieren

23</h2>

24 

25Ein Code-Intelligence-Plugin teilt Claude Code mit, welcher Befehl den Language Server startet und welche Dateierweiterungen er verarbeitet. Es enthält nicht den Language Server. Installieren Sie zuerst die Language-Server-Binärdatei, dann das Plugin, dann bestätigen Sie, dass der Server startet.

26 

27<Steps>

28 <Step title="Language-Server-Binärdatei installieren">

29 Finden Sie Ihre Sprache in der Tabelle unten und installieren Sie die Binärdatei in ihrer Zeile. Wenn Ihre Sprache nicht aufgelistet ist, siehe [Sprache ohne offizielles Plugin hinzufügen](#add-a-language-without-an-official-plugin).

30 

31 | Sprache | Plugin | Binärdatei |

32 | :------------------------ | :--------------------------------------------------------------------------------------------------------------- | :----------------------------- |

33 | C/C++ | [`clangd-lsp`](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/clangd-lsp) | `clangd` |

34 | C# | [`csharp-lsp`](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/csharp-lsp) | `csharp-ls` |

35 | Go | [`gopls-lsp`](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/gopls-lsp) | `gopls` |

36 | Java | [`jdtls-lsp`](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/jdtls-lsp) | `jdtls` |

37 | Kotlin | [`kotlin-lsp`](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/kotlin-lsp) | `kotlin-lsp` |

38 | Liquid | [`liquid-lsp`](https://github.com/Shopify/liquid-skills/tree/main/plugins/liquid-lsp) | `shopify`, aus der Shopify CLI |

39 | Lua | [`lua-lsp`](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/lua-lsp) | `lua-language-server` |

40 | PHP | [`php-lsp`](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/php-lsp) | `intelephense` |

41 | Python | [`pyright-lsp`](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/pyright-lsp) | `pyright-langserver` |

42 | Ruby | [`ruby-lsp`](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/ruby-lsp) | `ruby-lsp` |

43 | Rust | [`rust-analyzer-lsp`](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/rust-analyzer-lsp) | `rust-analyzer` |

44 | Swift | [`swift-lsp`](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/swift-lsp) | `sourcekit-lsp` |

45 | TypeScript und JavaScript | [`typescript-lsp`](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/typescript-lsp) | `typescript-language-server` |

46 

47 Anthropic verwaltet jedes Plugin in der Tabelle außer `liquid-lsp`, das Shopify verwaltet und der offizielle Marketplace auflistet.

48 

49 Um den Befehl zu finden, der die Binärdatei installiert, folgen Sie dem Plugin-Link in der Tabelle zu seiner README. Für TypeScript ist dieser Befehl `npm install -g typescript-language-server typescript`.

50 

51 Nachdem Sie die Binärdatei installiert haben, bestätigen Sie, dass sie sich auf dem `PATH` der Shell befindet, von der aus Sie `claude` starten, zum Beispiel mit `which typescript-language-server` oder `Get-Command typescript-language-server` in PowerShell.

52 </Step>

53 

54 <Step title="Plugin installieren">

55 Um das Plugin zu installieren, das für Ihre Sprache in der Tabelle von Schritt 1 aufgelistet ist, führen Sie `/plugin install` in einer Claude-Code-Sitzung aus und ersetzen Sie `typescript-lsp` durch den Namen dieses Plugins:

56 

57 ```

58 /plugin install typescript-lsp@claude-plugins-official

59 ```

60 

61 Eine Bestätigungsmeldung gibt an, ob das Plugin jetzt aktiv ist oder `/reload-plugins` benötigt. Wenn die Installation mit `Marketplace "claude-plugins-official" not found` fehlschlägt, siehe den [Troubleshooting-Eintrag für diesen Fehler](/docs/de/plugins/troubleshooting#marketplace-claude-plugins-official-not-found). Um zu kontrollieren, wo das Plugin installiert wird, oder um die Installation von Ihrer Shell aus statt in Claude Code auszuführen, siehe [Plugins installieren](/docs/de/plugins/install).

62 </Step>

63 

64 <Step title="Bestätigen Sie, dass der Server startet">

65 Der Language Server startet das erste Mal, wenn Claude eine Datei mit einer der Plugin-Erweiterungen bearbeitet. Um es in Aktion zu sehen, bitten Sie Claude, einen Typfehler in einer Datei dieser Sprache einzuführen und ihn dann zu beheben. Überprüfen Sie dann das Gespräch auf eine Diagnosezeile:

66 

67 * **Eine Diagnosezeile erscheint**: `Found N new diagnostic issues in M files (ctrl+o to expand)` unter der Änderung, die den Fehler eingeführt hat, bedeutet, dass der Server gestartet ist.

68 * **Keine Diagnosezeile erscheint**: Führen Sie `/plugin` aus und öffnen Sie die Registerkarte **Errors**. Eine Zeile, die `Executable not found in $PATH: "<binary>"` liest, nennt die zu installierende Binärdatei. Wenn die Registerkarte keine solche Zeile hat, siehe [Code-Intelligence troubleshooten](#troubleshoot-code-intelligence).

69 

70 Nachdem Sie eine fehlende Binärdatei installiert haben, versucht Claude Code es erneut, wenn Claude das nächste Mal eine entsprechende Datei bearbeitet. Wenn Sie die Binärdatei in ein Verzeichnis installiert haben, das sich nicht auf dem `PATH` der Shell befindet, von der aus Sie `claude` gestartet haben, starten Sie eine neue Sitzung von einer Shell aus, in der es sich befindet.

71 </Step>

72</Steps>

73 

74<h2 id="see-what-claude-gains">

75 Sehen Sie, was Claude gewinnt

76</h2>

77 

78Mit einem laufenden Language Server erhält Claude Diagnose und Code-Navigation:

79 

80* **Diagnose nach Änderungen**: Jedes Mal, wenn Claude eine Datei bearbeitet oder schreibt, die der Server verarbeitet, erhält Claude die Fehler und Warnungen, die der Server meldet. Es sieht einen Typfehler, fehlenden Import oder Syntaxfehler, den es eingeführt hat, ohne einen Compiler auszuführen.

81* **Code-Navigation**: Claude erhält ein `LSP`-Tool, das Symbole über den Server nachschlägt, anstatt sie durch Textsuche zu finden. Das Tool ist schreibgeschützt. Für das, was Claude mit dem Tool nachschlagen kann und wie Berechtigungen darauf angewendet werden, siehe [LSP-Tool-Verhalten](/docs/de/tools-reference#lsp-tool-behavior).

82 

83<h3 id="read-the-diagnostics-yourself">

84 Lesen Sie die Diagnose selbst

85</h3>

86 

87Nachdem Claude eine Datei bearbeitet hat, die der Server verarbeitet, zeigt das Gespräch nur die `Found N new diagnostic issues`-Zusammenfassung. Um die Probleme selbst zu lesen, drücken Sie **Ctrl+O**.

88 

89<h2 id="accept-or-dismiss-the-recommendation-dialog">

90 Empfehlungsdialog akzeptieren oder ablehnen

91</h2>

92 

93Wenn eine Language-Server-Binärdatei bereits auf Ihrem `PATH` ist und das Plugin, das sie verwendet, nicht installiert ist, bietet Claude Code an, das Plugin für Sie in einem Dialog mit dem Titel **LSP plugin recommendation** zu installieren.

94 

95<h3 id="when-the-recommendation-dialog-appears">

96 Wenn der Empfehlungsdialog erscheint

97</h3>

98 

99Der Dialog **LSP plugin recommendation** kann nach einer Änderung durch Claude erscheinen. Diese Bedingungen entscheiden, ob er erscheint und welches Plugin er anbietet:

100 

101* **Ein Plugin passt zur Datei**: Einer der Marketplaces, die Sie hinzugefügt haben, oder der offizielle Marketplace, den Claude Code für Sie registriert hat, listet ein Code-Intelligence-Plugin für die Erweiterung dieser Datei auf, und die Binärdatei des Plugins ist installiert.

102* **Offiziell zuerst**: Wenn mehr als ein Marketplace ein Plugin für die Erweiterung anbietet, bietet der Dialog das Plugin des offiziellen Marketplace an.

103* **Einmal pro Sitzung**: Der Dialog erscheint höchstens einmal in einer Sitzung, für die erste entsprechende Datei, die Claude bearbeitet.

104* **Nicht für Cloud-Sitzungen**: Der Dialog erscheint nie, wenn Ihr Terminal an eine Cloud-Sitzung angehängt ist, z. B. eine, die Sie mit [`claude --cloud`](/docs/de/claude-code-on-the-web#from-terminal-to-cloud) gestartet haben.

105 

106<h3 id="respond-to-the-recommendation-dialog">

107 Antworten Sie auf den Empfehlungsdialog

108</h3>

109 

110Der Dialog **LSP plugin recommendation** nennt das Plugin und bietet diese Optionen:

111 

112* **Yes, install**: Claude Code installiert das Plugin für Ihr Benutzerkonto und gibt `<plugin> installed · restart to apply` aus. Starten Sie eine neue Sitzung, um den Server zu laden.

113* **No, not now**: Der Dialog schließt sich, und eine spätere Sitzung kann das Plugin erneut anbieten. Das Drücken von **Esc** hat die gleiche Wirkung.

114* **Never for this plugin**: Der Dialog hört auf, für dieses Plugin zu erscheinen, und erscheint weiterhin für andere.

115* **Disable all LSP recommendations**: Der Dialog hört auf, für jede Sprache zu erscheinen.

116 

117Wenn Sie keine Option wählen, schließt Claude Code sie nach 30 Sekunden und zählt das als ignoriert. Die Anzahl wird über Sitzungen hinweg beibehalten. Nach fünf ignorierten Dialogen hört Claude Code auf, Plugins zu empfehlen, genauso wie wenn Sie **Disable all LSP recommendations** gewählt hätten.

118 

119<h3 id="turn-recommendations-back-on">

120 Empfehlungen wieder aktivieren

121</h3>

122 

123Der Dialog **LSP plugin recommendation** hört auf zu erscheinen, nachdem Sie **Disable all LSP recommendations** wählen oder ihn fünfmal ignorieren.

124 

125* **Deaktiviert oder fünfmal ignoriert**: Um ihn in beiden Fällen wieder zu aktivieren, entfernen Sie die Schlüssel `lspRecommendationDisabled` und `lspRecommendationIgnoredCount` aus `~/.claude.json`, Claude Codes eigener Konfigurationsdatei.

126* **Never for this plugin**: Wenn Sie **Never for this plugin** gewählt haben und möchten, dass dieses Plugin erneut angeboten wird, entfernen Sie seine `name@marketplace`-ID aus der Liste `lspRecommendationNeverPlugins` in derselben Datei.

127 

128<h2 id="troubleshoot-code-intelligence">

129 Code-Intelligence troubleshooten

130</h2>

131 

132Die Seite zur Fehlerbehebung von Plugins behandelt die Symptome, die spezifisch für Code-Intelligence-Plugins sind, unter [Language Server startet nicht, verbraucht zu viel Speicher oder meldet falsche Diagnose](/docs/de/plugins/troubleshooting#language-server-doesnt-start):

133 

134* **Der Language Server startet nicht**: Sie sehen `Executable not found in $PATH` in der Registerkarte **Errors** von `/plugin`, oder Claude meldet nie Diagnose für die Sprache.

135* **Hohe Speichernutzung**: Die Speichernutzung nimmt zu, während der Server das Projekt indiziert.

136* **Falsch positive Diagnose in einem Monorepo**: Diagnose meldet Importe als ungelöst, wenn sie es nicht sind.

137 

138<h2 id="add-a-language-without-an-official-plugin">

139 Sprache ohne offizielles Plugin hinzufügen

140</h2>

141 

142Wenn Ihre Sprache nicht in der [Tabelle der offiziellen Plugins](#install-a-code-intelligence-plugin) aufgelistet ist, können Sie dennoch einen Language Server verbinden.

143 

1441. Schreiben Sie ein Plugin mit einer `.lsp.json`-Datei, die den Server-Befehl und die Dateierweiterungen nennt, die er verarbeitet.

1452. Laden Sie dann das Plugin mit [`--plugin-dir`](/docs/de/plugins/cli-reference#flags-that-load-a-plugin-for-one-session) oder veröffentlichen Sie es in einem Marketplace.

146 

147Für die Felder der Datei und ein durchgearbeitetes Beispiel, siehe [LSP-Server in Plugin-Komponenten](/docs/de/plugins/components#lsp-servers).

148 

149<h2 id="next-steps">

150 Nächste Schritte

151</h2>

152 

153* [LSP-Server in Plugin-Komponenten](/docs/de/plugins/components#lsp-servers): Schreiben Sie die `.lsp.json` für einen Language Server, der kein offizielles Plugin hat

154* [Plugins installieren und verwalten](/docs/de/plugins/install): Bereiche, Updates und Deinstallation

155* [Plugins troubleshooten](/docs/de/plugins/troubleshooting): Ladefehler über die Language-Server-Fehler auf dieser Seite hinaus

156* [Plugins im offiziellen Marketplace finden](/docs/de/plugins/anthropic-marketplaces#find-plugins-in-the-official-marketplace): Wo Sie den Rest des offiziellen Marketplace durchsuchen können

plugins/components.md +1130 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Komponenten zu einem Plugin hinzufügen

6 

7> Fügen Sie Skills, Hooks, MCP-Server und alle anderen Komponententypen zu einem Claude Code-Plugin hinzu, mit einem Beispiel, das für jeden validiert.

8 

9export const Piece = ({id, children}) => <div className="pe-piece" data-piece={id}>{children}</div>;

10 

11export const PluginExplorer = ({children}) => {

12 const PIECES = [{

13 id: 'manifest',

14 name: 'Manifest',

15 path: '.claude-plugin/plugin.json',

16 required: "Required by Anthropic's directory",

17 lines: [{

18 depth: 0,

19 kind: 'folder',

20 text: '.claude-plugin/'

21 }, {

22 depth: 1,

23 kind: 'file',

24 text: 'plugin.json'

25 }],

26 href: '/en/plugins/manifest-reference#manifest-file',

27 linkText: 'Go to the manifest reference'

28 }, {

29 id: 'skills',

30 name: 'Skills',

31 path: 'skills/review/SKILL.md',

32 lines: [{

33 depth: 0,

34 kind: 'folder',

35 text: 'skills/'

36 }, {

37 depth: 1,

38 kind: 'folder',

39 text: 'review/'

40 }, {

41 depth: 2,

42 kind: 'file',

43 text: 'SKILL.md'

44 }],

45 href: '/en/plugins/components#skills',

46 linkText: 'Go to the Skills section'

47 }, {

48 id: 'commands',

49 name: 'Commands',

50 path: 'commands/about.md',

51 lines: [{

52 depth: 0,

53 kind: 'folder',

54 text: 'commands/'

55 }, {

56 depth: 1,

57 kind: 'file',

58 text: 'about.md'

59 }],

60 href: '/en/plugins/components#commands',

61 linkText: 'Go to the Commands section'

62 }, {

63 id: 'agents',

64 name: 'Agents',

65 path: 'agents/security-reviewer.md',

66 lines: [{

67 depth: 0,

68 kind: 'folder',

69 text: 'agents/'

70 }, {

71 depth: 1,

72 kind: 'file',

73 text: 'security-reviewer.md'

74 }],

75 href: '/en/plugins/components#agents',

76 linkText: 'Go to the Agents section'

77 }, {

78 id: 'hooks',

79 name: 'Hooks',

80 path: 'hooks/hooks.json',

81 lines: [{

82 depth: 0,

83 kind: 'folder',

84 text: 'hooks/'

85 }, {

86 depth: 1,

87 kind: 'file',

88 text: 'hooks.json'

89 }],

90 href: '/en/plugins/components#hooks',

91 linkText: 'Go to the Hooks section'

92 }, {

93 id: 'monitors',

94 name: 'Monitors',

95 path: 'monitors/monitors.json',

96 lines: [{

97 depth: 0,

98 kind: 'folder',

99 text: 'monitors/'

100 }, {

101 depth: 1,

102 kind: 'file',

103 text: 'monitors.json'

104 }],

105 href: '/en/plugins/components#monitors',

106 linkText: 'Go to the Monitors section'

107 }, {

108 id: 'output-styles',

109 name: 'Output styles',

110 path: 'output-styles/terse.md',

111 lines: [{

112 depth: 0,

113 kind: 'folder',

114 text: 'output-styles/'

115 }, {

116 depth: 1,

117 kind: 'file',

118 text: 'terse.md'

119 }],

120 href: '/en/plugins/components#themes-and-output-styles',

121 linkText: 'Go to the Themes and output styles section'

122 }, {

123 id: 'themes',

124 name: 'Themes',

125 path: 'themes/dracula.json',

126 lines: [{

127 depth: 0,

128 kind: 'folder',

129 text: 'themes/'

130 }, {

131 depth: 1,

132 kind: 'file',

133 text: 'dracula.json'

134 }],

135 href: '/en/plugins/components#themes-and-output-styles',

136 linkText: 'Go to the Themes and output styles section'

137 }, {

138 id: 'workflows',

139 name: 'Workflows',

140 path: 'workflows/audit-routes.js',

141 lines: [{

142 depth: 0,

143 kind: 'folder',

144 text: 'workflows/'

145 }, {

146 depth: 1,

147 kind: 'file',

148 text: 'audit-routes.js'

149 }],

150 href: '/en/workflows#distribute-a-workflow-in-a-plugin',

151 linkText: 'Go to Distribute a workflow in a plugin'

152 }, {

153 id: 'bin',

154 name: 'Executables',

155 path: 'bin/hello-plugin',

156 lines: [{

157 depth: 0,

158 kind: 'folder',

159 text: 'bin/'

160 }, {

161 depth: 1,

162 kind: 'file',

163 text: 'hello-plugin'

164 }],

165 href: '/en/plugins/components#executables',

166 linkText: 'Go to the Executables section'

167 }, {

168 id: 'scripts',

169 name: 'Scripts',

170 path: 'scripts/format.sh',

171 lines: [{

172 depth: 0,

173 kind: 'folder',

174 text: 'scripts/'

175 }, {

176 depth: 1,

177 kind: 'file',

178 text: 'format.sh'

179 }],

180 href: '/en/plugins/components#hooks',

181 linkText: 'Go to the Hooks section'

182 }, {

183 id: 'settings',

184 name: 'Default settings',

185 path: 'settings.json',

186 lines: [{

187 depth: 0,

188 kind: 'file',

189 text: 'settings.json'

190 }],

191 href: '/en/plugins/components#default-settings',

192 linkText: 'Go to the Default settings section'

193 }, {

194 id: 'mcp',

195 name: 'MCP servers',

196 path: '.mcp.json',

197 lines: [{

198 depth: 0,

199 kind: 'file',

200 text: '.mcp.json'

201 }],

202 href: '/en/plugins/components#mcp-servers',

203 linkText: 'Go to the MCP servers section'

204 }, {

205 id: 'lsp',

206 name: 'LSP servers',

207 path: '.lsp.json',

208 lines: [{

209 depth: 0,

210 kind: 'file',

211 text: '.lsp.json'

212 }],

213 href: '/en/plugins/components#lsp-servers',

214 linkText: 'Go to the LSP servers section'

215 }];

216 const [selectedId, setSelectedId] = useState('manifest');

217 const [isFullscreen, setIsFullscreen] = useState(false);

218 const rootRef = useRef(null);

219 useEffect(() => {

220 const onFsChange = () => setIsFullscreen(!!document.fullscreenElement);

221 document.addEventListener('fullscreenchange', onFsChange);

222 return () => document.removeEventListener('fullscreenchange', onFsChange);

223 }, []);

224 const toggleFullscreen = () => {

225 if (!rootRef.current) return;

226 if (document.fullscreenElement) document.exitFullscreen(); else rootRef.current.requestFullscreen().catch(() => {});

227 };

228 const selected = PIECES.find(p => p.id === selectedId) || PIECES[0];

229 const onTreeKeyDown = e => {

230 const keys = ['ArrowDown', 'ArrowUp', 'Home', 'End'];

231 if (keys.indexOf(e.key) === -1) return;

232 const i = PIECES.findIndex(p => p.id === selectedId);

233 let next = i;

234 if (e.key === 'ArrowDown') next = Math.min(PIECES.length - 1, i + 1);

235 if (e.key === 'ArrowUp') next = Math.max(0, i - 1);

236 if (e.key === 'Home') next = 0;

237 if (e.key === 'End') next = PIECES.length - 1;

238 e.preventDefault();

239 if (next === i) return;

240 const id = PIECES[next].id;

241 setSelectedId(id);

242 const el = document.getElementById('pe-node-' + id);

243 if (el) el.focus();

244 };

245 const FolderIcon = () => <svg className="pe-icon" width="15" height="15" viewBox="0 0 16 16" fill="none" stroke="currentColor" strokeWidth="1.3" strokeLinejoin="round" aria-hidden="true">

246 <path d="M1.5 4.5a1 1 0 0 1 1-1h3.2l1.3 1.5h6a1 1 0 0 1 1 1V12a1 1 0 0 1-1 1h-10.5a1 1 0 0 1-1-1z" />

247 </svg>;

248 const FileIcon = () => <svg className="pe-icon" width="15" height="15" viewBox="0 0 16 16" fill="none" stroke="currentColor" strokeWidth="1.3" strokeLinejoin="round" aria-hidden="true">

249 <path d="M4 1.5h5.5L13 5v9.5H4z" />

250 <path d="M9.5 1.5V5H13" />

251 </svg>;

252 return <div ref={rootRef} className={isFullscreen ? 'pe-root pe-fullscreen not-prose' : 'pe-root not-prose'} data-selected={selected.id}>

253 <style>{`

254 .pe-root {

255 --pe-mono: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);

256 --pe-accent: #D97757;

257 --pe-accent-text: #A8502F;

258 --pe-accent-bg: rgba(217,119,87,0.10);

259 --pe-bg: #FFFFFF;

260 --pe-surface: #FAFAF7;

261 --pe-hover: #F0EEE6;

262 --pe-border: #E8E6DC;

263 --pe-text: #141413;

264 --pe-text-2: #3D3D3A;

265 --pe-text-3: #5E5D59;

266 font-family: inherit;

267 background: var(--pe-bg);

268 color: var(--pe-text);

269 border: 1px solid var(--pe-border);

270 border-radius: 12px;

271 margin: 1.5rem 0;

272 overflow: hidden;

273 box-sizing: border-box;

274 }

275 .dark .pe-root {

276 --pe-accent-text: #EBA98F;

277 --pe-accent-bg: rgba(217,119,87,0.18);

278 --pe-bg: #1A1918;

279 --pe-surface: #232221;

280 --pe-hover: #2E2D2B;

281 --pe-border: #3A3936;

282 --pe-text: #F1EFE9;

283 --pe-text-2: #D6D4CA;

284 --pe-text-3: #B8B5AD;

285 }

286 .pe-root *, .pe-root *::before, .pe-root *::after { box-sizing: border-box; }

287 .pe-head { display: flex; align-items: flex-start; gap: 12px; padding: 18px 24px 16px; border-bottom: 1px solid var(--pe-border); }

288 .pe-head-text { flex: 1; min-width: 0; }

289 .pe-fs-btn { flex-shrink: 0; width: 32px; height: 32px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--pe-border); border-radius: 6px; background: var(--pe-surface); color: var(--pe-text-2); font-size: 15px; line-height: 1; cursor: pointer; }

290 .pe-fs-btn:hover { background: var(--pe-hover); }

291 .pe-fs-btn:focus-visible { outline: 2px solid var(--pe-accent); outline-offset: 2px; }

292 .pe-fullscreen { border-radius: 0; height: 100vh; display: flex; flex-direction: column; overflow: auto; }

293 .pe-fullscreen .pe-body { flex: 1; }

294 .pe-title { font-size: 19px; font-weight: 600; line-height: 1.3; color: var(--pe-text); margin: 0; }

295 .pe-sub { font-size: 15px; line-height: 1.5; color: var(--pe-text-3); margin: 4px 0 0; }

296 .pe-sub code { font-family: var(--pe-mono); font-size: 0.88em; padding: 1px 5px; border-radius: 4px; background: var(--pe-surface); border: 1px solid var(--pe-border); }

297 .pe-body { display: flex; align-items: stretch; }

298 .pe-tree-pane { width: 270px; flex-shrink: 0; background: var(--pe-surface); border-right: 1px solid var(--pe-border); padding: 16px 0 12px; }

299 .pe-panel { flex: 1; min-width: 0; padding: 16px 24px 24px; }

300 .pe-caption { font-size: 13px; font-weight: 600; color: var(--pe-text-3); margin: 0 0 10px; }

301 .pe-tree-pane .pe-caption { padding: 0 16px; }

302 .pe-rootline { display: flex; align-items: center; gap: 7px; padding: 3px 16px; font-family: var(--pe-mono); font-size: 13.5px; color: var(--pe-text-3); }

303 .pe-node {

304 display: block; width: 100%; margin: 0; padding: 3px 16px 3px 30px; text-align: left; cursor: pointer;

305 background: transparent; color: var(--pe-text-2);

306 border: none; border-left: 3px solid transparent;

307 font-family: var(--pe-mono); font-size: 13.5px; line-height: 1.4;

308 }

309 .pe-node:hover { background: var(--pe-hover); }

310 .pe-node:focus-visible { outline: 2px solid var(--pe-accent); outline-offset: -2px; }

311 .pe-node[aria-pressed="true"] { background: var(--pe-accent-bg); border-left-color: var(--pe-accent); color: var(--pe-accent-text); font-weight: 600; }

312 .pe-line { display: flex; align-items: center; gap: 7px; padding: 2px 0; }

313 .pe-line-tree { flex-wrap: wrap; }

314 .pe-line-tree .pe-req { flex-basis: 100%; margin: 2px 0 0 22px; white-space: normal; width: fit-content; max-width: calc(100% - 22px); }

315 .pe-line span { overflow-wrap: anywhere; }

316 .pe-piece { display: none; font-size: 16px; line-height: 1.6; color: var(--pe-text-2); }

317 .pe-root[data-selected="manifest"] .pe-piece[data-piece="manifest"],

318 .pe-root[data-selected="skills"] .pe-piece[data-piece="skills"],

319 .pe-root[data-selected="commands"] .pe-piece[data-piece="commands"],

320 .pe-root[data-selected="agents"] .pe-piece[data-piece="agents"],

321 .pe-root[data-selected="hooks"] .pe-piece[data-piece="hooks"],

322 .pe-root[data-selected="monitors"] .pe-piece[data-piece="monitors"],

323 .pe-root[data-selected="output-styles"] .pe-piece[data-piece="output-styles"],

324 .pe-root[data-selected="themes"] .pe-piece[data-piece="themes"],

325 .pe-root[data-selected="workflows"] .pe-piece[data-piece="workflows"],

326 .pe-root[data-selected="bin"] .pe-piece[data-piece="bin"],

327 .pe-root[data-selected="scripts"] .pe-piece[data-piece="scripts"],

328 .pe-root[data-selected="settings"] .pe-piece[data-piece="settings"],

329 .pe-root[data-selected="mcp"] .pe-piece[data-piece="mcp"],

330 .pe-root[data-selected="lsp"] .pe-piece[data-piece="lsp"] { display: block; }

331 .pe-piece p { margin: 0 0 10px; }

332 .pe-piece p:last-child { margin-bottom: 0; }

333 .pe-piece code { font-family: var(--pe-mono); font-size: 0.88em; padding: 1px 5px; border-radius: 4px; background: var(--pe-surface); border: 1px solid var(--pe-border); }

334 .pe-piece .code-block { margin: 12px 0 0; }

335 .pe-piece pre code { padding: 0; border: none; background: none; }

336 .pe-piece a { color: var(--pe-accent-text); }

337 .pe-line-compact { display: none; }

338 .pe-icon { flex-shrink: 0; }

339 .pe-req { margin-left: 8px; padding: 0 6px; border-radius: 999px; font-size: 11px; line-height: 18px; letter-spacing: .02em; color: var(--pe-accent-text); border: 1px solid var(--pe-border); background: var(--pe-surface); white-space: nowrap; font-weight: 500; vertical-align: middle; }

340 .pe-name { font-size: 22px; font-weight: 600; line-height: 1.25; letter-spacing: -0.2px; color: var(--pe-text); margin: 0; }

341 .pe-path { font-family: var(--pe-mono); font-size: 13.5px; color: var(--pe-accent-text); margin: 4px 0 0; overflow-wrap: anywhere; }

342 .pe-block { margin: 20px 0 0; }

343 .pe-link {

344 display: inline-block; margin: 24px 0 0; padding: 8px 14px; border-radius: 8px;

345 font-size: 14.5px; font-weight: 600; text-decoration: none;

346 color: var(--pe-accent-text); background: var(--pe-accent-bg); border: 1px solid var(--pe-accent);

347 }

348 .pe-link:hover { filter: brightness(0.97); }

349 .pe-link:focus-visible { outline: 2px solid var(--pe-accent); outline-offset: 2px; }

350 @media (max-width: 700px) {

351 .pe-head { padding: 16px 16px 14px; }

352 .pe-body { flex-direction: column; }

353 .pe-tree-pane { width: 100%; border-right: none; border-bottom: 1px solid var(--pe-border); }

354 .pe-line-tree { display: none; }

355 .pe-line-compact { display: flex; }

356 .pe-panel { padding: 16px 16px 20px; }

357 }

358 `}</style>

359 

360 <div className="pe-head">

361 <div className="pe-head-text">

362 <div className="pe-title">What goes in a plugin</div>

363 <div className="pe-sub">This example plugin, <code>my-plugin</code>, has one of every kind of component, each in its default location. Select a file or folder to read what it’s for and see what goes in it.</div>

364 </div>

365 <button type="button" className="pe-fs-btn" onClick={toggleFullscreen} aria-label={isFullscreen ? 'Exit fullscreen' : 'Fullscreen'} title={isFullscreen ? 'Exit fullscreen' : 'Fullscreen'}>

366 {isFullscreen ? '⤡' : '⛶'}

367 </button>

368 </div>

369 

370 <div className="pe-body">

371 <div className="pe-tree-pane">

372 <div className="pe-caption" id="pe-tree-caption">Plugin directory</div>

373 <div role="group" aria-labelledby="pe-tree-caption" onKeyDown={onTreeKeyDown}>

374 <div className="pe-rootline"><FolderIcon /><span>my-plugin/</span></div>

375 {PIECES.map(p => <button key={p.id} id={'pe-node-' + p.id} type="button" className="pe-node" aria-pressed={p.id === selected.id} aria-label={p.name + ', ' + p.path} onClick={() => setSelectedId(p.id)}>

376 {p.lines.map((line, i) => <span key={i} className="pe-line pe-line-tree" style={{

377 paddingLeft: line.depth * 18 + 'px'

378 }}>

379 {line.kind === 'folder' ? <FolderIcon /> : <FileIcon />}

380 <span>{line.text}</span>

381 {p.required && i === p.lines.length - 1 ? <span className="pe-req">{p.required}</span> : null}

382 </span>)}

383 <span className="pe-line pe-line-compact">

384 <FileIcon />

385 <span>{p.path}</span>

386 {p.required ? <span className="pe-req">{p.required}</span> : null}

387 </span>

388 </button>)}

389 </div>

390 </div>

391 

392 <div className="pe-panel" role="region" aria-labelledby="pe-panel-caption" aria-live="polite" aria-atomic="true">

393 <div className="pe-caption" id="pe-panel-caption">Selected piece</div>

394 <div className="pe-name">{selected.name}{selected.required ? <span className="pe-req">{selected.required}</span> : null}</div>

395 <div className="pe-path">{selected.path}</div>

396 

397 <div className="pe-block">{children}</div>

398 

399 <a className="pe-link" href={selected.href}>{selected.linkText}</a>

400 </div>

401 </div>

402 </div>;

403};

404 

405Ein Claude Code-Plugin wird aus Komponenten erstellt, wie Skills, Agents, Hooks und MCP-Servern. Jede Komponente hat einen Standard-Ordner im Plugin, einen optionalen Manifest-Schlüssel in `.claude-plugin/plugin.json`, der diesen Ordner ersetzt oder ergänzt, und einen Namen, den der Benutzer sieht. Für jede Schlüssels vollständige Feldtabelle siehe die [Manifest-Referenz](/docs/de/plugins/manifest-reference#fields).

406 

407Verwenden Sie diese Seite, um eine Komponente zu einem Plugin hinzuzufügen, das bereits geladen wird.

408 

409Nachdem Sie eine Komponente hinzugefügt haben, führen Sie `/reload-plugins` in einer laufenden Sitzung aus oder starten Sie eine neue, damit Claude Code sie lädt. Um die Datei der Komponente vor dem Laden zu überprüfen, führen Sie [`claude plugin validate .`](/docs/de/plugins/cli-reference#plugin-validate) in Ihrer Shell aus dem Plugin-Verzeichnis aus.

410 

411<Note>

412 Diese Fälle werden auf anderen Seiten behandelt:

413 

414 * **Ihr erstes Plugin erstellen**: Beginnen Sie mit [Plugin erstellen](/docs/de/plugins/create)

415 * **Plugin von jemand anderem installieren**: Siehe [Plugins installieren](/docs/de/plugins/install)

416 * **Ihre Plugin-Benutzer sind auf claude.ai oder in Cowork**: Ein anderer Satz von Komponenten wird dort geladen. Siehe [Plugins auf claude.ai und in Cowork](https://claude.com/docs/plugins/overview)

417</Note>

418 

419<h2 id="explore-the-plugin-directory">

420 Plugin-Verzeichnis erkunden

421</h2>

422 

423Der Explorer zeigt ein Beispiel-Plugin, `my-plugin`, das an seinem Standard-Speicherort eine von jeder Art von Komponente hat:

424 

425* Ein Review-Skill und einen `about`-Befehl

426* Einen Security-Review-Subagenten

427* Einen Hook, der Dateien nach Claude-Bearbeitungen formatiert, und den `scripts/`-Ordner, den er aufruft

428* Einen Log-Monitor

429* Einen Output-Stil und ein Farbschema

430* Einen Route-Audit-Workflow

431* Eine `hello-plugin`-Ausführungsdatei

432* Standard-Einstellungen

433* Einen lokalen MCP-Server und einen Go-Sprachserver

434 

435Jede Datei ist das kleinste gültige Beispiel ihres Formats, um die Form zu zeigen, nicht um nützlich zu sein: Ein echter Skill oder Agent trägt vollständige Anweisungen und oft unterstützende Dateien, und ein echter Hook oder Monitor führt echte Arbeit aus. Die Abschnitte nach dem Explorer verwenden die gleichen Dateien als ihre Beispiele und verlinken auf vollständigere. Wählen Sie eine Datei oder einen Ordner aus, um zu lesen, wofür sie gedacht ist, zu sehen, was darin geht, und den Abschnitt zu finden, der sie behandelt.

436 

437<PluginExplorer>

438 <Piece id="manifest">

439 Das [Manifest](/docs/de/plugins/manifest-reference) ist die `plugin.json`-Datei im `.claude-plugin/`-Verzeichnis eines Plugins. Sie enthält die Metadaten des Plugins und die `userConfig`-Werte, die Claude Code den Benutzer fragt. Nur `name` ist erforderlich. In diesem Fall ist `description` der Text, den Benutzer für das Plugin in `/plugin` sehen, und `version` hält Benutzer auf dieser Version, bis Sie sie ändern:

440 

441 ```json theme={null}

442 {

443 "name": "my-plugin",

444 "version": "1.0.0",

445 "description": "Review, formatting, and database tools for this team"

446 }

447 ```

448 </Piece>

449 

450 <Piece id="skills">

451 Ein [Skill](/docs/de/skills) ist eine `SKILL.md`-Datei. Speichern Sie jeden Skill in seinem eigenen Verzeichnis unter `skills/`. Claude liest die `description` jedes Skills, und wenn das, was der Benutzer fragt, damit übereinstimmt, wie zum Beispiel Claude zu bitten, einen Pull Request zu überprüfen, lädt Claude die Anweisungen des Skills und folgt ihnen. Der Benutzer kann ihn auch direkt als `/my-plugin:review` ausführen:

452 

453 ```markdown theme={null}

454 ---

455 description: Reviews a pull request for style and test coverage. Use when asked to review code.

456 ---

457 

458 Review the changed files. Report style problems first, then missing tests.

459 ```

460 </Piece>

461 

462 <Piece id="commands">

463 Ein Befehl ist eine einzelne Markdown-Datei, die der Benutzer nach Name ausführt. Befehle sind das ältere Format: Ein Skill wird auf die gleiche Weise nach Name ausgeführt und kann auch unterstützende Dateien in seinem eigenen Verzeichnis tragen, daher schreiben Sie neue als Skills und behalten Sie `commands/` für Dateien, die Sie bereits haben. Diese Datei wird zu `/my-plugin:about` und nimmt die gleiche Frontmatter wie ein Skill:

464 

465 ```markdown theme={null}

466 ---

467 description: Summarize the repository

468 ---

469 

470 Summarize what this repository does in three sentences.

471 ```

472 </Piece>

473 

474 <Piece id="agents">

475 Ein [Subagent](/docs/de/sub-agents) ist ein separater Assistent mit seinen eigenen Anweisungen und seinem eigenen Kontextfenster, dem Claude eine Aufgabe delegieren und ein Ergebnis zurückbekommen kann. Jede Markdown-Datei unter `agents/` definiert einen: Die Frontmatter benennt ihn und sagt, wann er zu verwenden ist, und der Text ist sein System-Prompt. Dieser wird `my-plugin:security-reviewer` genannt, und der Benutzer kann ihn mit `@agent-my-plugin:security-reviewer` aufrufen:

476 

477 ```markdown theme={null}

478 ---

479 name: security-reviewer

480 description: Reviews code changes for security issues. Use after edits to authentication or input handling.

481 model: sonnet

482 ---

483 

484 You are a security reviewer. Read the changed files and report injection, authentication, and secrets-handling risks.

485 ```

486 </Piece>

487 

488 <Piece id="hooks">

489 Ein [Hook](/docs/de/hooks-guide) führt etwas automatisch an einem Punkt im Lebenszyklus von Claude Code aus, wie zum Beispiel nach jeder Dateibearbeitung: ein Shell-Befehl, eine HTTP-Anfrage, ein MCP-Tool-Aufruf, ein Prompt an ein Modell oder ein Subagent. Speichern Sie die Hooks des Plugins in `hooks/hooks.json` im Plugin-Root. Dieser führt das `scripts/format.sh` des Plugins nach jedem Write oder Edit aus:

490 

491 ```json theme={null}

492 {

493 "hooks": {

494 "PostToolUse": [

495 {

496 "matcher": "Write|Edit",

497 "hooks": [

498 {

499 "type": "command",

500 "command": "\"${CLAUDE_PLUGIN_ROOT}/scripts/format.sh\""

501 }

502 ]

503 }

504 ]

505 }

506 }

507 ```

508 </Piece>

509 

510 <Piece id="monitors">

511 Ein Monitor ist ein Shell-Befehl, den Claude Code im Hintergrund startet, wenn die Sitzung startet, und der läuft, bis sie endet, unter Verwendung des [Monitor-Tools](/docs/de/tools-reference#monitor-tool). Was er ausgibt, erreicht Claude als Benachrichtigungen. Ein `when`-Feld kann ihn stattdessen starten, wenn ein benannter Skill zum ersten Mal ausgeführt wird. Dieser verfolgt ein Fehlerprotokoll:

512 

513 ```json theme={null}

514 [

515 {

516 "name": "error-log",

517 "command": "tail -F ./logs/error.log",

518 "description": "Application error log"

519 }

520 ]

521 ```

522 </Piece>

523 

524 <Piece id="output-styles">

525 Ein Plugin kann [Output-Stile](/docs/de/output-styles) enthalten, die ändern, wie Claude seine Antworten formatiert und formuliert. Speichern Sie jeden Output-Stil als `output-styles/<name>.md`. Dieser erscheint in `/output-style` als `my-plugin:terse`:

526 

527 ```markdown theme={null}

528 ---

529 name: terse

530 description: Answer in as few words as possible

531 keep-coding-instructions: true

532 ---

533 

534 Keep every reply short. Skip preambles and summaries.

535 ```

536 </Piece>

537 

538 <Piece id="themes">

539 Ein Plugin kann [Farbschemas](/docs/de/terminal-config#create-a-custom-theme) für die Claude Code-Schnittstelle enthalten. Speichern Sie jedes Schema als `themes/<slug>.json`. Dieses erscheint in `/theme` als `Dracula`, markiert als von `my-plugin`:

540 

541 ```json theme={null}

542 {

543 "name": "Dracula",

544 "base": "dark",

545 "overrides": {

546 "claude": "#bd93f9",

547 "error": "#ff5555"

548 }

549 }

550 ```

551 </Piece>

552 

553 <Piece id="workflows">

554 Der `workflows/`-Ordner enthält [Workflow](/docs/de/workflows) `.js`-Dateien: einen `meta`-Block, dann einen Script-Text, der mehrere Subagenten orchestriert. Dieser läuft als `/my-plugin:audit-routes`:

555 

556 ```javascript theme={null}

557 export const meta = {

558 name: 'audit-routes',

559 description: 'Audit every route handler for missing auth checks',

560 }

561 

562 const found = await agent('List every .ts file under src/routes/.', {

563 schema: { type: 'object', required: ['files'], properties: { files: { type: 'array', items: { type: 'string' } } } },

564 })

565 

566 const audits = await pipeline(found.files, file =>

567 agent(`Audit ${file} for missing authentication checks.`, { label: file }),

568 )

569 

570 return audits.filter(Boolean)

571 ```

572 </Piece>

573 

574 <Piece id="bin">

575 `bin/` ist, wie ein Plugin ein Befehlszeilentool versendet. Während das Plugin aktiviert ist, setzt Claude Code diesen Ordner auf den `PATH` der Shell, in der es Befehle ausführt, damit Claude oder die Anweisungen eines Skills das Tool nach Name ausführen können, ohne dass der Benutzer etwas installieren muss. Mit dieser [ausführbaren Datei](#executables) an Ort und Stelle ist `hello-plugin` ein Befehl, den Claude ausführen kann:

576 

577 ```bash theme={null}

578 #!/bin/bash

579 echo "hello from my-plugin"

580 ```

581 </Piece>

582 

583 <Piece id="scripts">

584 Der Hook in `hooks/hooks.json` führt ein Script aus, und dieser Ordner ist, wo das Beispiel es behält. Der Name `scripts/` ist eine Konvention, nicht etwas, das Claude Code sucht: Der Hook zeigt auf die Datei nach ihrem Pfad, `${CLAUDE_PLUGIN_ROOT}/scripts/format.sh`. Ein Formatter-Script könnte so aussehen:

585 

586 ```bash theme={null}

587 #!/bin/bash

588 npx prettier --write .

589 ```

590 </Piece>

591 

592 <Piece id="settings">

593 Eine `settings.json` im Plugin-Root hält [Einstellungen](/docs/de/settings-reference), die gelten, während das Plugin aktiviert ist, damit ein Plugin ändern kann, wie sich die Sitzung verhält, und nicht nur Komponenten hinzufügt. Nur zwei Schlüssel wirken sich von einem Plugin aus, [`agent`](/docs/de/settings-reference#agent) und [`subagentStatusLine`](/docs/de/settings-reference#subagentstatusline); jeder andere Schlüssel wird gelöscht. Siehe [Standard-Einstellungen](#default-settings).

594 

595 Dieser setzt `agent`, der die Haupt-Thread-Sitzung als den eigenen `security-reviewer`-Agent des Plugins ausführt, damit der System-Prompt, die Tool-Einschränkungen und das Modell dieses Agenten auf die ganze Sitzung angewendet werden:

596 

597 ```json theme={null}

598 {

599 "agent": "security-reviewer"

600 }

601 ```

602 </Piece>

603 

604 <Piece id="mcp">

605 Ein [MCP-Server](/docs/de/mcp) gibt Claude Tools von einem externen System. Deklarieren Sie ihn in `.mcp.json` im Plugin-Root. Dieser startet einen lokalen Server aus einem Script im Plugin und erscheint in `/mcp` als `plugin:my-plugin:db`:

606 

607 ```json theme={null}

608 {

609 "mcpServers": {

610 "db": {

611 "command": "node",

612 "args": ["${CLAUDE_PLUGIN_ROOT}/server.js"]

613 }

614 }

615 }

616 ```

617 </Piece>

618 

619 <Piece id="lsp">

620 Ein LSP-Server gibt Claude [Diagnostik und Code-Navigation](/docs/de/plugins/code-intelligence) für eine Sprache. Deklarieren Sie den Server in `.lsp.json` im Plugin-Root. Dieser verbindet den Go-Sprachserver für `.go`-Dateien:

621 

622 ```json theme={null}

623 {

624 "gopls": {

625 "command": "gopls",

626 "args": ["serve"],

627 "extensionToLanguage": {

628 ".go": "go"

629 }

630 }

631 }

632 ```

633 </Piece>

634</PluginExplorer>

635 

636<h2 id="add-each-kind-of-component">

637 Fügen Sie jede Art von Komponente hinzu

638</h2>

639 

640Jeder Abschnitt unten behandelt eine Art von Komponente: wo ihre Dateien im Plugin gehen, ein Beispiel, das validiert, was der Benutzer sieht, sobald das Plugin geladen wird, und der Manifest-Schlüssel, der den Standard-Speicherort ändert. Fügen Sie die hinzu, die Ihr Plugin benötigt; keine ist erforderlich.

641 

642<h3 id="skills">

643 Skills

644</h3>

645 

646Ein [Skill](/docs/de/skills) ist eine `SKILL.md`-Datei, die Claude laden kann, wenn ihre Beschreibung der Aufgabe entspricht. Der Benutzer kann ihn auch als Befehl ausführen. Speichern Sie jeden Skill in seinem eigenen Verzeichnis unter `skills/`:

647 

648```text theme={null}

649my-plugin/

650├── .claude-plugin/

651│ └── plugin.json

652└── skills/

653 └── review/

654 └── SKILL.md

655```

656 

657Geben Sie der `SKILL.md` eine `description`, damit Claude weiß, wann er sie verwenden soll:

658 

659```markdown skills/review/SKILL.md theme={null}

660---

661description: Reviews a pull request for style and test coverage. Use when asked to review code.

662---

663 

664Review the changed files. Report style problems first, then missing tests.

665```

666 

667Nachdem Sie das Plugin geladen haben, führt `/my-plugin:review` den Skill aus. Der Befehlsname und wer ihn aufrufen kann, folgen diesen Regeln:

668 

669* **Befehlsname**: `/<plugin>:<directory>`, also `skills/review/SKILL.md` in `my-plugin` ist `/my-plugin:review`. Wenn Sie `name` in der Frontmatter setzen, ersetzt es das letzte Segment und das Plugin-Präfix bleibt. Siehe [wie ein Skill seinen Befehlsnamen erhält](/docs/de/skills#how-a-skill-gets-its-command-name)

670* **Wer ruft ihn auf**: Claude, der Benutzer oder beide, gesteuert durch Frontmatter. Siehe [Kontrollieren Sie, wer einen Skill aufruft](/docs/de/skills#control-who-invokes-a-skill)

671 

672Sie können auch Skills außerhalb des Standard-`skills/`-Verzeichnisses platzieren:

673 

674* **Zusätzliche Verzeichnisse**: Listen Sie sie im `skills`-Manifest-Schlüssel auf. Sie ergänzen den Standard-`skills/`-Scan, anstatt ihn zu ersetzen, anders als `commands` und `agents`

675* **Ein einzelner Skill im Plugin-Root**: Ohne `skills/`-Verzeichnis und ohne `skills`-Manifest-Schlüssel lädt eine `SKILL.md` im Plugin-Root als ein Skill. Setzen Sie `name` in seiner Frontmatter, da sonst eine Marketplace-Installation den Skill nach seinem [Cache-Verzeichnis](/docs/de/plugins/loading#find-plugins-on-disk) benennt, anstatt nach Ihrem Plugin

676 

677Um Anweisungen in ein Plugin einzubeziehen, schreiben Sie sie als Skill. Claude Code lädt keine `CLAUDE.md` im Plugin-Root, und `claude plugin validate` warnt `CLAUDE.md at the plugin root is not loaded as project context`.

678 

679Für Frontmatter-Felder und unterstützende Dateien siehe [Skills](/docs/de/skills).

680 

681<h3 id="commands">

682 Befehle

683</h3>

684 

685Ein Befehl ist eine einzelne Markdown-Datei, die der Benutzer nach Name ausführt, wie `/my-plugin:about`.

686 

687<Note>

688 Befehle sind das ältere Format, und [Skills](#skills) ersetzen sie für neue Arbeiten. Ein Skill wird auf die gleiche Weise nach Name ausgeführt, und er kann auch unterstützende Dateien in seinem Verzeichnis tragen. Behalten Sie `commands/` für Dateien, die Sie von `.claude/commands/` verschieben.

689</Note>

690 

691Speichern Sie einen Befehl unter `commands/<file>.md` und er wird zu `/<plugin>:<file>`. Ein Unterverzeichnis fügt ein Segment hinzu, also ist `commands/db/migrate.md` `/my-plugin:db:migrate`.

692 

693Befehlsdateien nehmen die gleiche Frontmatter wie Skills.

694 

695<h4 id="define-commands-in-the-manifest">

696 Definieren Sie Befehle im Manifest

697</h4>

698 

699Sie brauchen dies nur, wenn Sie Befehlsdateien irgendwo anders als `commands/` behalten möchten, oder um einen kurzen Befehl in `plugin.json` ohne separate Markdown-Datei zu definieren. Setzen Sie den `commands`-Manifest-Schlüssel, und Claude Code liest ihn statt `commands/` zu scannen. Der Schlüssel nimmt einen Pfad, ein Array von Pfaden oder ein Objekt, das jeden Befehlsnamen entweder auf eine `source`-Datei oder inline `content` abbildet.

700 

701Dieses Manifest definiert `/my-plugin:about` inline, ohne Markdown-Datei:

702 

703```json .claude-plugin/plugin.json theme={null}

704{

705 "name": "my-plugin",

706 "commands": {

707 "about": {

708 "content": "Summarize what this repository does in three sentences.",

709 "description": "Summarize the repository"

710 }

711 }

712}

713```

714 

715Laden Sie das Plugin und führen Sie `/my-plugin:about` in der Sitzung aus, um zu bestätigen, dass es geladen wurde.

716 

717Für die vollständige Schlüsselsyntax siehe [`commands`](/docs/de/plugins/manifest-reference#commands).

718 

719<h3 id="agents">

720 Agents

721</h3>

722 

723Ein [Subagent](/docs/de/sub-agents) ist ein separater Assistent mit seinen eigenen Anweisungen und Kontextfenster, dem Claude eine Aufgabe delegieren kann. Jede Markdown-Datei unter `agents/` definiert einen:

724 

725```markdown agents/security-reviewer.md theme={null}

726---

727name: security-reviewer

728description: Reviews code changes for security issues. Use after edits to authentication or input handling.

729model: sonnet

730---

731 

732You are a security reviewer. Read the changed files and report injection, authentication, and secrets-handling risks.

733```

734 

735Dieser Agent wird `my-plugin:security-reviewer` genannt, und der Benutzer kann ihn [explizit aufrufen](/docs/de/sub-agents#invoke-subagents-explicitly) mit `@agent-my-plugin:security-reviewer`. Die Namensform ist `<plugin>:<name>`, wobei `<name>` aus der Frontmatter kommt, oder aus dem Dateinamen, wenn es keine gibt.

736 

737Der `agents`-Manifest-Schlüssel ersetzt den `agents/`-Scan.

738 

739<h4 id="organize-agents-in-subfolders">

740 Organisieren Sie Agents in Unterordnern

741</h4>

742 

743Sie können Plugin-Agent-Dateien in Unterordnern von `agents/` platzieren. Claude Code [lädt sie rekursiv](/docs/de/sub-agents#choose-the-subagent-scope) und verbindet den Plugin-Namen, jeden Unterordnernamen und den Dateinamen mit Doppelpunkten, um den scoped Namen des Agenten zu bilden. Zum Beispiel lädt `agents/review/security.md` in einem Plugin namens `my-plugin` als `my-plugin:review:security`. Zwei Einstellungen ändern diesen Namen:

744 

745* Frontmatter `name`: Sie ersetzt nur den Dateinamen, also `name: audit` in `agents/review/security.md` lädt als `my-plugin:review:audit`

746* Manifest [`agents`](/docs/de/plugins/manifest-reference#fields)-Feld: Eine Datei, die Sie dort auflisten, lädt ohne Unterordnernamen, also `"agents": "./custom/review/security.md"` lädt als `my-plugin:security`

747 

748<h4 id="frontmatter-fields-in-plugin-agents">

749 Frontmatter-Felder in Plugin-Agents

750</h4>

751 

752Die Frontmatter eines Plugin-Agenten folgt diesen Regeln:

753 

754* **Unterstützte Felder**: `name`, `description`, `model`, `effort`, `maxTurns`, `tools`, `disallowedTools`, `skills`, `memory`, `background`, `omitClaudeMd`, `isolation`, `color` und der `cacheTtl`-Schlüssel von `experimental`. Der einzige gültige `isolation`-Wert ist `"worktree"`. Siehe [unterstützte Frontmatter-Felder](/docs/de/sub-agents#supported-frontmatter-fields) für das, was jedes tut

755* **Ignorierte Felder**: `permissionMode`, `hooks`, `mcpServers` und `initialPrompt`. Eine Agent-Datei kann nicht auf eigene Faust Hooks oder MCP-Server hinzufügen, daher fügen Sie diese stattdessen als Plugin-[Hooks](#hooks) und [MCP-Server](#mcp-servers) hinzu

756* **Frontmatter, die nicht analysiert wird**: Der Agent lädt immer noch mit jedem Feld ignoriert. Er wird nach der Datei benannt, und seine Beschreibung liest `Agent from my-plugin plugin`. Führen Sie [`claude plugin validate`](/docs/de/plugins/cli-reference#plugin-validate) in Ihrer Shell aus, um diese Dateien zu finden

757 

758Für das, was jedes Feld tut und die Vorrangregeln, siehe [Subagents](/docs/de/sub-agents#supported-frontmatter-fields).

759 

760<h3 id="hooks">

761 Hooks

762</h3>

763 

764Ein [Hook](/docs/de/hooks-guide) führt etwas automatisch an einem Punkt im Lebenszyklus von Claude Code aus, wie zum Beispiel nach jeder Dateibearbeitung: ein Shell-Befehl, eine HTTP-Anfrage, ein MCP-Tool-Aufruf, ein Prompt an ein Modell oder ein Subagent. Speichern Sie die Hooks des Plugins in `hooks/hooks.json` im Plugin-Root, unter einem Top-Level-`"hooks"`-Schlüssel, in der gleichen Form wie das `hooks`-Objekt in `settings.json`. Das ermöglicht es Ihnen, einen bestehenden Settings-Hook unverändert zu kopieren.

765 

766Dieser Hook führt ein gebündeltes Script nach jedem `Write` oder `Edit` aus:

767 

768```json hooks/hooks.json theme={null}

769{

770 "hooks": {

771 "PostToolUse": [

772 {

773 "matcher": "Write|Edit",

774 "hooks": [

775 {

776 "type": "command",

777 "command": "\"${CLAUDE_PLUGIN_ROOT}/scripts/format.sh\""

778 }

779 ]

780 }

781 ]

782 }

783}

784```

785 

786Speichern Sie das Script unter `scripts/format.sh` und machen Sie es ausführbar.

787 

788Laden Sie das Plugin und bitten Sie Claude, eine Datei zu bearbeiten. Ein `PostToolUse`-Hook, der 0 beendet, zeigt nichts im Transkript, daher bestätigen Sie, dass er mit [Debug-Logging](/docs/de/hooks#debug-hooks) oder durch das, was das Script selbst ändert, gelaufen ist.

789 

790Hooks in `hooks/hooks.json` und im `hooks`-Manifest-Schlüssel laden beide. Für jedes Ereignis und seine Nutzlast siehe [Hook-Ereignisse](/docs/de/hooks#hook-events).

791 

792<h4 id="when-plugin-hooks-fire">

793 Wenn Plugin-Hooks auslösen

794</h4>

795 

796Die Hooks eines Plugins warten nicht darauf, dass einer der Skills oder Befehle des Plugins verwendet wird. Claude Code registriert sie, wenn eine Sitzung das Plugin lädt, und sie lösen auf ihren Ereignissen von da an aus. Um einzuschränken, wann ein Hook läuft, verengen Sie seinen `matcher`.

797 

798Wenn ein Hook nie auslöst, siehe [Hooks, die nicht auslösen](/docs/de/plugins/troubleshooting#failed-to-load-hooks-from-and-hooks-that-dont-fire).

799 

800<h4 id="environment-quoting-and-matching-mcp-tools">

801 Umgebung, Anführungszeichen und Matching von MCP-Tools

802</h4>

803 

804Die Umgebung des Hooks, die Anführungszeichen von `${CLAUDE_PLUGIN_ROOT}` und Matcher für die eigenen MCP-Tools des Plugins funktionieren wie folgt:

805 

806* **Umgebung**: Jeder Hook-Prozess erhält `CLAUDE_PLUGIN_ROOT` und `CLAUDE_PLUGIN_DATA` in seiner Umgebung, plus `CLAUDE_PLUGIN_OPTION_<KEY>` für jeden [Benutzerkonfiguration](#user-configuration)-Wert, damit Ihr Script sie von dort lesen kann

807* **Anführungszeichen**: Wenn `command` keine `args` hat, läuft es durch eine Shell, daher wickeln Sie den `${CLAUDE_PLUGIN_ROOT}`-Pfad in doppelte Anführungszeichen, wie das Beispiel `hooks/hooks.json` unter [Hooks](#hooks) tut, um den erweiterten Pfad ein Shell-Wort zu halten. Wenn Sie stattdessen `args` übergeben, wird jedes Element als ein Argument ohne Shell übergeben und braucht keine Anführungszeichen. Siehe [Exec-Form und Shell-Form](/docs/de/hooks#exec-form-and-shell-form)

808* **Matching der eigenen MCP-Tools des Plugins**: Ein Tool von einem [MCP-Server, den dieses Plugin deklariert](#mcp-servers), wird `mcp__plugin_<plugin>_<server>__<tool>` genannt, daher schreiben Sie diesen vollständigen Namen in den Matcher. Ein Matcher nur auf dem Servernamen löst nie aus. Siehe [Match MCP-Tools](/docs/de/hooks#match-mcp-tools)

809 

810<h3 id="mcp-servers">

811 MCP-Server

812</h3>

813 

814Ein MCP-Server gibt Claude Tools von einem externen System. Deklarieren Sie ihn in `.mcp.json` im Plugin-Root, in der gleichen Form wie ein [Projekt `.mcp.json`](/docs/de/mcp#project-scope). Diese `.mcp.json` deklariert einen Server namens `db`:

815 

816```json .mcp.json theme={null}

817{

818 "mcpServers": {

819 "db": {

820 "command": "node",

821 "args": ["${CLAUDE_PLUGIN_ROOT}/server.js"]

822 }

823 }

824}

825```

826 

827Sie können auch den `mcpServers`-Wrapper weglassen und `db` auf der Top-Level der Datei platzieren.

828 

829Laden Sie das Plugin und führen Sie `/mcp` aus, um zu bestätigen, dass der Server als `plugin:my-plugin:db` erscheint.

830 

831`claude plugin validate` überprüft `.mcp.json` und meldet einen Server-Eintrag, den Claude Code zur Ladezeit als Fehler ablegen würde. Erfordert Claude Code v2.1.281 oder später.

832 

833Für wo ein schlechter Eintrag zur Ladezeit angezeigt wird, siehe [MCP-Server, die nicht starten](/docs/de/plugins/troubleshooting#invalid-mcp-server-config-for-and-mcp-servers-that-dont-start).

834 

835Der `mcpServers`-Manifest-Schlüssel nimmt eine inline Server-Map, einen Pfad zu einer JSON-Datei oder ein Array davon. Wenn ein Manifest-Server den gleichen Namen wie einer in `.mcp.json` hat, ersetzt der Manifest-Server ihn.

836 

837<h4 id="reach-users-on-claude-ai-and-cowork">

838 Erreichen Sie Benutzer auf claude.ai und Cowork

839</h4>

840 

841Ein lokaler Stdio-Server, wie der `db`-Server unter [MCP-Server](#mcp-servers), läuft in Claude Code und in einer Cowork-Sitzung, die auf Ihrem Computer in der Claude Desktop-App läuft, aber nicht auf claude.ai. Um Benutzer dort auch zu erreichen, referenzieren Sie einen Remote-Server durch seine `https://`-URL, die claude.ai und Cowork dem Benutzer als Connector anbieten.

842 

843<h4 id="server-names-tool-names-and-reloads">

844 Server-Namen, Tool-Namen und Neuladen

845</h4>

846 

847Die Namen des Servers, die Variable-Substitution und das Neuladen-Verhalten folgen diesen Regeln:

848 

849* **Server-Name**: `plugin:<plugin>:<server>`, also der `db`-Server in `my-plugin` ist `plugin:my-plugin:db` in `/mcp`. Verwenden Sie die gleiche Form, um den Server in einem [`mcp_tool`-Hook](/docs/de/hooks#mcp-tool-hook-fields) zu benennen

850* **Tool-Namen**: `mcp__plugin_<plugin>_<server>__<tool>`, also ein `query`-Tool auf diesem `db`-Server ist `mcp__plugin_my-plugin_db__query`. Das ist der Name, der in [Berechtigungsregeln](/docs/de/permissions) und [Hook-Matchern](#hooks) verwendet wird

851* **Substitution**: `${CLAUDE_PLUGIN_ROOT}` und die anderen [Pfad-Variablen](#path-variables-and-persistent-data) werden in `command`, `args` und `env` ersetzt. Keine Anführungszeichen sind in `args` erforderlich, da jedes Element als ein Argument übergeben wird

852* **Neuladen**: Wenn der Benutzer `/reload-plugins` ausführt und [das Neuladen angewendet wird](/docs/de/plugins/cli-reference#reloads-that-change-mcp-tools), behält ein Server, dessen Konfiguration unverändert ist, seine Verbindung. Ein Server, dessen Konfiguration sich geändert hat, verbindet sich neu, und einer, den Sie entfernt haben, trennt sich

853 

854<h4 id="include-a-packaged-mcpb-server">

855 Schließen Sie einen verpackten MCPB-Server ein

856</h4>

857 

858Der `mcpServers`-Schlüssel akzeptiert auch einen verpackten Server als [MCPB-Datei](https://github.com/modelcontextprotocol/mcpb), deren Erweiterung `.mcpb` oder die ältere `.dxt` ist. Zeigen Sie den Schlüssel auf die Datei, als Pfad im Plugin oder eine `https://`-URL:

859 

860```json .claude-plugin/plugin.json theme={null}

861{

862 "name": "my-plugin",

863 "mcpServers": "./servers/db.mcpb"

864}

865```

866 

867Der Server nimmt seinen Namen aus dem `name` im Manifest des Bundles.

868 

869Für Transporte und Authentifizierung siehe [MCP](/docs/de/mcp#plugin-provided-mcp-servers).

870 

871<h3 id="lsp-servers">

872 LSP-Server

873</h3>

874 

875Ein LSP-Server gibt Claude Diagnostik und Code-Navigation für eine Sprache. Wenn ein [offizielles Code-Intelligence-Plugin](/docs/de/plugins/code-intelligence) Ihre Sprache bereits abdeckt, installieren Sie das statt einen zu schreiben. Andernfalls deklarieren Sie den Server in `.lsp.json` im Plugin-Root:

876 

877```json .lsp.json theme={null}

878{

879 "gopls": {

880 "command": "gopls",

881 "args": ["serve"],

882 "extensionToLanguage": {

883 ".go": "go"

884 }

885 }

886}

887```

888 

889Die Datei bildet jeden Server-Namen direkt auf seine Konfiguration ab, ohne ein Wrapper-Objekt um die Map. `command` ist der Name des Binärs, mit seinen Argumenten in `args`. `extensionToLanguage` braucht mindestens eine Erweiterung, jede beginnend mit `.`.

890 

891`claude plugin validate` liest diese Datei nicht. Wenn ein Eintrag ungültig ist, wird die ganze Datei zur Ladezeit übersprungen und `Invalid LSP server config for ".lsp.json"` erscheint in der `/plugin`-Registerkarte **Errors**.

892 

893Ihr Plugin konfiguriert die Verbindung, installiert aber nicht das Server-Binär, und jede Dateierweiterung bekommt einen Server:

894 

895* **Fehlendes Binär**: Claude Code startet `command` nach Name aus dem `PATH` des Benutzers. Wenn das Binär nicht da ist, schlägt der Server fehl zu starten und `claude --debug` protokolliert `LSP server <name> failed to start`

896* **Erweiterungs-Konflikte**: Wenn zwei aktivierte Server die gleiche Erweiterung beanspruchen, behandelt der erste registrierte diese Dateien und der andere wird nicht für sie verwendet, ob die Server von einem Plugin oder zwei kommen. Die `/plugin`-Registerkarte **Errors** zeigt die Warnung `LSP server "<name>" is not used for <ext> files`

897 

898Der `lspServers`-Manifest-Schlüssel nimmt die gleiche Map inline, einen Pfad zu einer JSON-Datei oder ein Array davon, und seine Server ergänzen die in `.lsp.json`. Wenn ein Manifest-Server den gleichen Namen wie einer in `.lsp.json` hat, ersetzt der Manifest-Server ihn.

899 

900Für `transport`, Timeouts, Neustarts und die anderen Felder siehe [`lspServers`](/docs/de/plugins/manifest-reference#lspservers).

901 

902Senden Sie Log-Ausgabe an stderr, nicht stdout. Claude Code liest den stdout eines Servers nur als Protokoll-Nachrichten und akzeptiert Nachrichten-Header bis zu 64 KiB und einen Nachrichten-Text bis zu 32 MiB.

903 

904Claude Code trennt einen Server, der eines der Limits überschreitet oder nicht-Protokoll-Ausgabe an stdout schreibt, und zählt die Trennung als Absturz für `restartOnCrash` und `maxRestarts`. Wenn Sie mit `--debug` laufen, schreibt Claude Code einen Fehler, der die Ursache benennt, in das Debug-Log.

905 

906<h3 id="executables">

907 Ausführbare Dateien

908</h3>

909 

910Dateien in `bin/` im Plugin-Root sind auf dem `PATH` der Shell des Bash-Tools, während das Plugin aktiviert ist, daher kann Claude sie als bloße Befehle ausführen. Fügen Sie ein ausführbares Script hinzu:

911 

912```bash bin/hello-plugin theme={null}

913#!/bin/bash

914echo "hello from my-plugin"

915```

916 

917Machen Sie es mit `chmod +x bin/hello-plugin` ausführbar und laden Sie das Plugin. Wenn Sie Claude bitten, `hello-plugin` auszuführen, zeigt das Bash-Tool-Ergebnis die Ausgabe des Scripts.

918 

919Plugin-`bin/`-Verzeichnisse kommen nach den eigenen `PATH`-Einträgen des Benutzers, daher kann ein Plugin nicht `git`, `ls` oder einen anderen System-Befehl überschatten.

920 

921claude.ai und Cowork installieren kein Plugin, das ein Top-Level-`bin/`-Verzeichnis hat, einschließlich eines, das Sie [über claude.ai-Organisationseinstellungen verteilen](/docs/de/plugins/host-marketplace#distribute-through-organization-settings).

922 

923<h3 id="default-settings">

924 Standard-Einstellungen

925</h3>

926 

927Um Standard-Einstellungen zu setzen, die gelten, während das Plugin aktiviert ist, fügen Sie eine `settings.json` im Plugin-Root hinzu, oder setzen Sie das gleiche Objekt inline im `settings`-Manifest-Schlüssel. Zwei Schlüssel wirken sich aus, `agent` und `subagentStatusLine`, und jeder andere Schlüssel wird gelöscht.

928 

929Setzen Sie `agent`, um einen der eigenen Agents des Plugins als Haupt-Thread auszuführen:

930 

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

932{

933 "agent": "security-reviewer"

934}

935```

936 

937Laden Sie das Plugin und starten Sie eine Sitzung. Claude antwortet dann in der Haupt-Konversation mit dem System-Prompt und Modell des `security-reviewer`-Agenten.

938 

939Für alles, das der Schlüssel kontrolliert, siehe die [`agent`-Einstellung](/docs/de/settings-reference#agent).

940 

941Wenn der gleiche Schlüssel an mehr als einem Ort gesetzt ist, entscheiden diese Regeln, welcher Wert angewendet wird:

942 

943* **Datei über Manifest**: Wenn beide existieren und `settings.json` mindestens einen unterstützten Schlüssel setzt, wendet `settings.json` an und das Manifest `settings` wird ignoriert

944* **Benutzer-Einstellungen über Plugin-Standard**: Über Einstellungs-Quellen hinweg sind Plugin-Standard die niedrigste Schicht, daher überschreibt Ihr eigenes `agent` eines Benutzers in `~/.claude/settings.json` Ihres

945* **Zwei Plugins setzen den gleichen Schlüssel**: Der Wert vom zuletzt geladenen Plugin wendet an, und `claude --debug` protokolliert `overrides setting`

946 

947Für die `subagentStatusLine`-Form siehe [Subagent-Statuszeilen](/docs/de/statusline#subagent-status-lines).

948 

949<h3 id="themes-and-output-styles">

950 Themen und Output-Stile

951</h3>

952 

953Ein Plugin kann Farbschemas und Output-Stile enthalten. Beide erscheinen in den gleichen Pickern wie die des Benutzers. Für jeden setzt der Manifest-Schlüssel den Ordner-Scan.

954 

955| Komponente | Speichern unter | Format | Erscheint in | Manifest-Schlüssel |

956| :---------- | :------------------------ | :------------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------- | :-------------------- |

957| Thema | `themes/<slug>.json` | Das [benutzerdefinierte Thema-Dateiformat](/docs/de/terminal-config#create-a-custom-theme), das Benutzer in `~/.claude/themes/` schreiben | `/theme`, unter dem `name` der Datei | `experimental.themes` |

958| Output-Stil | `output-styles/<name>.md` | Das [benutzerdefinierte Output-Stil-Format](/docs/de/output-styles#create-a-custom-output-style), mit `name` und `description`-Frontmatter | `/output-style`, als `<plugin>:<name>` | `outputStyles` |

959 

960Plugin-Themen sind schreibgeschützt, daher wenn ein Benutzer eines in `/theme` bearbeitet, wird die Bearbeitung als Kopie in seinem eigenen Themen-Verzeichnis gespeichert.

961 

962Dieses Thema färbt den Prompt-Akzent und Fehlertext auf der dunklen Voreinstellung um:

963 

964```json themes/dracula.json theme={null}

965{

966 "name": "Dracula",

967 "base": "dark",

968 "overrides": {

969 "claude": "#bd93f9",

970 "error": "#ff5555"

971 }

972}

973```

974 

975<h3 id="channels">

976 Kanäle

977</h3>

978 

979Ein [Kanal](/docs/de/channels) ermöglicht es einem externen System wie einer Chat-App, Nachrichten in eine Sitzung zu senden. In einem Plugin ist ein Kanal einer der MCP-Server plus ein `channels`-Eintrag, der sich daran bindet und seine eigene Konfiguration auffordern kann. Dieses Manifest bindet einen Kanal an einen `telegram`-Server und fragt nach einem Bot-Token:

980 

981```json .claude-plugin/plugin.json theme={null}

982{

983 "name": "my-plugin",

984 "mcpServers": {

985 "telegram": {

986 "command": "node",

987 "args": ["${CLAUDE_PLUGIN_ROOT}/server.js"],

988 "env": { "BOT_TOKEN": "${user_config.bot_token}" }

989 }

990 },

991 "channels": [

992 {

993 "server": "telegram",

994 "userConfig": {

995 "bot_token": {

996 "type": "string",

997 "title": "Bot token",

998 "description": "Telegram bot token",

999 "sensitive": true

1000 }

1001 }

1002 }

1003 ]

1004}

1005```

1006 

1007`server` muss einem Schlüssel in `mcpServers` entsprechen. Die pro-Kanal `userConfig` nimmt die gleiche Form wie der [Top-Level-`userConfig`-Schlüssel](#user-configuration).

1008 

1009Für das, was der Server implementieren muss und wie Benutzer einen Kanal-Plugin aktivieren, siehe [Als Plugin verpacken](/docs/de/channels-reference#package-as-a-plugin) in der Kanäle-Referenz. Für die Feldtabelle siehe [`channels`](/docs/de/plugins/manifest-reference#channels).

1010 

1011<h3 id="monitors">

1012 Monitore

1013</h3>

1014 

1015Ein Monitor ist ein Shell-Befehl, der im Hintergrund für die ganze Sitzung läuft. Was er ausgibt, erreicht Claude als Benachrichtigungen, daher kann Claude auf ein Protokoll oder eine Statusänderung reagieren, ohne gebeten zu werden, es zu beobachten. Speichern Sie die Einträge in `monitors/monitors.json`:

1016 

1017```json monitors/monitors.json theme={null}

1018[

1019 {

1020 "name": "error-log",

1021 "command": "tail -F ./logs/error.log",

1022 "description": "Application error log"

1023 }

1024]

1025```

1026 

1027Der Befehl läuft in einer Shell, im Arbeitsverzeichnis, in dem die Sitzung gestartet wurde.

1028 

1029Der Befehl eines Monitors ist begrenzt, wo er startet und was er referenzieren kann:

1030 

1031* **Nur interaktive Sitzungen**: Plugin-Monitore starten in einer interaktiven Sitzung und nie im nicht-interaktiven Modus mit dem `-p`-Flag. Sie starten auch nur, wo das [Monitor-Tool](/docs/de/tools-reference#monitor-tool) verfügbar ist

1032* **Keine Benutzerkonfiguration**: `command` erhält die [Pfad-Variablen](#path-variables-and-persistent-data) und `${ENV_VAR}` aus der Umgebung, aber nie `${user_config.*}`. Ein Monitor, der einen referenziert, startet nicht, und Monitor-Prozesse erhalten auch nicht `CLAUDE_PLUGIN_OPTION_<KEY>`

1033* **Deaktivieren während der Sitzung**: Wenn Sie ein Plugin während der Sitzung deaktivieren, stoppt Claude Code nicht die Monitore, die bereits laufen. Sie stoppen, wenn die Sitzung endet

1034 

1035Der `experimental.monitors`-Manifest-Schlüssel nimmt das gleiche Array inline oder einen Pfad zu einer JSON-Datei und wird statt `monitors/monitors.json` gelesen.

1036 

1037Für den `when`-Trigger und die anderen Felder siehe [`monitors`](/docs/de/plugins/manifest-reference#monitors).

1038 

1039<h2 id="user-configuration">

1040 Fragen Sie den Benutzer nach Konfigurationswerten

1041</h2>

1042 

1043Deklarieren Sie die Werte, die Ihr Plugin vom Benutzer benötigt, im `userConfig`-Manifest-Schlüssel, damit Benutzer nicht `settings.json` selbst bearbeiten. Jede Option erscheint in einem Dialog mit seinem `title` als Label und seiner `description` darunter.

1044 

1045Setzen Sie `"sensitive": true` für einen Token oder ein Passwort. Der Dialog maskiert dann die Eingabe, und der Wert wird in sicherer Speicherung statt `settings.json` gespeichert.

1046 

1047Dieses Manifest fragt nach einem Endpunkt und einem Token:

1048 

1049```json .claude-plugin/plugin.json theme={null}

1050{

1051 "name": "my-plugin",

1052 "userConfig": {

1053 "api_url": {

1054 "type": "string",

1055 "title": "API URL",

1056 "description": "Base URL of your team's API"

1057 },

1058 "api_token": {

1059 "type": "string",

1060 "title": "API token",

1061 "description": "Token for your team's API",

1062 "sensitive": true

1063 }

1064 }

1065}

1066```

1067 

1068<h3 id="when-the-configuration-dialog-appears">

1069 Wenn der Konfigurationsdialog erscheint

1070</h3>

1071 

1072Der Dialog erscheint nur in der interaktiven `/plugin`-Schnittstelle. Er öffnet sich für jede Option, die noch nicht gesetzt ist, wenn der Benutzer eines der folgenden tut:

1073 

1074* Installiert das Plugin in `/plugin`

1075* Führt `/plugin install <plugin>@<marketplace>` in einer Sitzung aus

1076* Aktiviert das Plugin aus der **Installed**-Registerkarte in `/plugin`

1077 

1078Um den gleichen Dialog jederzeit zu öffnen, führt der Benutzer `/plugin configure <plugin>@<marketplace>` aus.

1079 

1080Der `claude plugin install`-Shell-Befehl fordert nie `userConfig`-Werte auf. Um Werte aus der Shell zu setzen, übergeben Sie jeden als `--config KEY=VALUE`. Wenn Optionen ungesetzt bleiben, druckt der Befehl eine `userConfig options not yet set`-Zeile, die beide Wege benennt, um sie zu setzen. [Der `userConfig`-Dialog erscheint nie](/docs/de/plugins/troubleshooting#the-userconfig-dialog-never-appears) zitiert die Zeile.

1081 

1082Für die Optionsfelder, wo jeder Wert gespeichert wird, wie eine Komponente einen gespeicherten Wert referenziert und welche Felder `${user_config.*}` ablehnen, siehe [Benutzerkonfiguration](/docs/de/plugins/manifest-reference#user-configuration).

1083 

1084<h2 id="path-variables-and-persistent-data">

1085 Referenzieren Sie Plugin-Pfade und speichern Sie Daten

1086</h2>

1087 

1088Sie wissen nicht, wo Ihr Plugin installiert wird, daher referenzieren Sie seine Dateien und Daten durch diese Variablen statt fester Pfade. Sie werden in Skill-, Befehls- und Agent-Inhalten, in Hook- und Monitor-Befehlen und in MCP- und LSP-Server-Konfigurationen ersetzt. Sie werden auch an Hook-, MCP- und LSP-Prozesse exportiert:

1089 

1090* **`${CLAUDE_PLUGIN_ROOT}`**: Das Installationsverzeichnis des Plugins. Jede Version hat ihr eigenes [Cache-Verzeichnis](/docs/de/plugins/loading#find-plugins-on-disk), daher ändert sich der Pfad, wenn das Plugin aktualisiert wird. Schreiben Sie keinen Zustand dort

1091* **`${CLAUDE_PLUGIN_DATA}`**: Ein Verzeichnis, das Updates überlebt, für `node_modules`, virtuelle Umgebungen und Caches. Es wird zu `~/.claude/plugins/data/<id>/` aufgelöst und wird erstellt, wenn zuerst referenziert

1092* **`${CLAUDE_PROJECT_DIR}`**: Das Projekt-Root, der gleiche Wert, den Hooks erhalten

1093 

1094Im Pfad des Daten-Verzeichnisses ist `<id>` die Plugin-ID mit jedem Zeichen außer Buchstaben, Ziffern, `_` und `-` ersetzt durch `-`, daher wird `my-plugin@my-marketplace` zu `my-plugin-my-marketplace`.

1095 

1096Auf Windows verwenden die ersetzten Pfade Schrägstriche, daher liest eine Shell Backslashes nicht als Escapes.

1097 

1098<h3 id="install-dependencies-into-the-data-directory">

1099 Installieren Sie Abhängigkeiten in das Daten-Verzeichnis

1100</h3>

1101 

1102Für ein Marketplace-installiertes Plugin installiert Claude Code automatisch berechtigte [Node.js-Paket-Abhängigkeiten](/docs/de/plugins/loading#node-js-package-dependencies), wenn es das Plugin zwischenspeichert, daher müssen Sie sie möglicherweise nicht selbst installieren. Wenn Sie es tun, installiert dieser `SessionStart`-Hook `node_modules` in `${CLAUDE_PLUGIN_DATA}` beim ersten Lauf und erneut nach einer Aktualisierung, die `package.json` ändert:

1103 

1104```json hooks/hooks.json theme={null}

1105{

1106 "hooks": {

1107 "SessionStart": [

1108 {

1109 "hooks": [

1110 {

1111 "type": "command",

1112 "command": "diff -q \"${CLAUDE_PLUGIN_ROOT}/package.json\" \"${CLAUDE_PLUGIN_DATA}/package.json\" >/dev/null 2>&1 || (cd \"${CLAUDE_PLUGIN_DATA}\" && cp \"${CLAUDE_PLUGIN_ROOT}/package.json\" . && npm install) || rm -f \"${CLAUDE_PLUGIN_DATA}/package.json\""

1113 }

1114 ]

1115 }

1116 ]

1117 }

1118}

1119```

1120 

1121Nach der ersten Sitzung existiert `~/.claude/plugins/data/<id>/node_modules`. Ein MCP-Server kann dann `NODE_PATH` auf `${CLAUDE_PLUGIN_DATA}/node_modules` in seinem `env` setzen. Für welche Felder welche Variable ersetzen, siehe [Umgebungsvariablen](/docs/de/plugins/manifest-reference#environment-variables).

1122 

1123<h2 id="next-steps">

1124 Nächste Schritte

1125</h2>

1126 

1127* [Plugin-Manifest-Referenz](/docs/de/plugins/manifest-reference): `plugin.json`-Felder, Pfad-Regeln und das Standard-Layout

1128* [Testen Sie Plugins mit Evals](/docs/de/plugin-evals): Überprüfen Sie, dass die Komponenten, die Sie hinzugefügt haben, Claudes Verhalten so ändern, wie Sie beabsichtigen

1129* [Veröffentlichen und verteilen Sie ein Plugin](/docs/de/plugins/publish): Versionieren Sie das Plugin und setzen Sie es in einen Marketplace

1130* [Beheben Sie Plugin-Probleme](/docs/de/plugins/troubleshooting): Was zu tun ist, wenn eine Komponente nicht lädt oder ein Hook nicht auslöst

plugins/create.md +424 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Erstellen Sie ein Claude Code-Plugin

6 

7> Erstellen Sie Ihr erstes Claude Code-Plugin aus einem leeren Verzeichnis, testen Sie es ohne einen Marketplace und konvertieren Sie ein vorhandenes .claude/-Setup.

8 

9Ein Plugin ist ein Verzeichnis von Skills, Agents, Hooks und MCP-Servern sowie eine `plugin.json`-Datei, die als Manifest bezeichnet wird und das Plugin benennt. Claude Code lädt das Verzeichnis als eine Einheit, sodass Sie es mit Teamkollegen teilen, in mehreren Projekten installieren oder in einem Marketplace veröffentlichen können.

10 

11Diese Seite ist für Personen, die ihre eigenen Plugins schreiben.

12 

13<Note>

14 Diese Fälle werden auf anderen Seiten behandelt:

15 

16 * **Installation eines Plugins von jemand anderem**: siehe [Plugins installieren](/docs/de/plugins/install)

17 * **Sie sind sich nicht sicher, ob Sie ein Plugin benötigen**: siehe [Entscheiden Sie, ob Sie ein Plugin benötigen](/docs/de/plugins/overview#decide-whether-you-need-a-plugin) in der Übersicht

18 * **Die Benutzer Ihres Plugins sind auf claude.ai oder in Cowork**: derselbe Ordner wird dort mit einer anderen Teilmenge von Komponenten installiert. Siehe [Plugins auf claude.ai und in Cowork](https://claude.com/docs/plugins/overview)

19</Note>

20 

21Beginnen Sie mit dem Abschnitt, der dem entspricht, was Sie bereits haben:

22 

23* **Noch nichts**: folgen Sie [Erstellen Sie Ihr erstes Plugin](#create-your-first-plugin), dann [Entwickeln Sie ohne einen Marketplace](#develop-without-a-marketplace) und [Testen und Debuggen](#test-and-debug).

24* **Dateien unter `.claude/` bereits vorhanden**: führen Sie die Anleitung zum ersten Plugin einmal durch, um das Layout zu verstehen, und folgen Sie dann [Konvertieren Sie ein vorhandenes `.claude/`-Setup](#convert-an-existing-claude-setup).

25 

26<h2 id="decide-when-to-use-a-plugin">

27 Entscheiden Sie, wann Sie ein Plugin verwenden

28</h2>

29 

30Skills, Agents, Hooks und MCP-Server funktionieren alle eigenständig in Ihrem Projekt oder Ihrem Home-Verzeichnis. Behalten Sie dieses eigenständige Setup bei, während es einem Projekt oder nur Ihnen dient. Erstellen Sie ein Plugin, wenn Sie das Setup mit Teamkollegen teilen, es in mehreren Projekten installieren oder versionierte Releases veröffentlichen möchten.

31 

32Wenn Sie eigenständige Skills, Agents, Hooks und MCP-Konfiguration in ein Plugin verschieben, ändern sich ihr Speicherort und ihre Namen:

33 

34* **Wo die Dateien hingehen**: unter das eigene Verzeichnis des Plugins, das als Plugin-Root bezeichnet wird, als `skills/`, `agents/`, `hooks/hooks.json` und `.mcp.json`.

35* **Wie sie benannt werden**: Plugin-Skills und Agents erhalten den Plugin-Namen als Präfix, z. B. `/my-plugin:hello`, sodass zwei Plugins jeweils einen `hello`-Skill bereitstellen können, ohne zu kollidieren.

36 

37Um ein vorhandenes Setup in ein Plugin zu verschieben, siehe [Konvertieren Sie ein vorhandenes `.claude/`-Setup](#convert-an-existing-claude-setup).

38 

39<h2 id="create-your-first-plugin">

40 Erstellen Sie Ihr erstes Plugin

41</h2>

42 

43In dieser Anleitung erstellen Sie ein Plugin, dessen einzige Komponente ein Skill ist – eine Begrüßung – und führen es mit `--plugin-dir` aus, das ein Plugin für eine Sitzung lädt, ohne es zu installieren. Ein Plugin kann eine beliebige Mischung von [Komponenten](/docs/de/plugins/components) enthalten, z. B. Skills, Agents, Hooks und MCP-Server, und keine ist erforderlich; ein Skill ist das kleinste Beispiel, das das Layout zeigt.

44 

45Sie benötigen Claude Code [installiert und angemeldet](/docs/de/quickstart#step-1-install-claude-code).

46 

47Öffnen Sie ein Terminal in dem Verzeichnis, in dem Sie das Plugin behalten möchten, z. B. `~/projects`, und führen Sie die Befehle in diesen Schritten von dort aus aus. Sie können ein Plugin überall behalten, da Sie seinen Pfad an Claude Code übergeben, wenn Sie eine Sitzung starten.

48 

49<Steps>

50 <Step title="Erstellen Sie das Plugin-Verzeichnis">

51 Erstellen Sie das Plugin-Verzeichnis mit einem `.claude-plugin/`-Ordner darin, um das Manifest zu halten:

52 

53 ```bash theme={null}

54 mkdir -p my-first-plugin/.claude-plugin

55 ```

56 </Step>

57 

58 <Step title="Schreiben Sie das Manifest">

59 Das [Manifest](/docs/de/plugins/manifest-reference) ist eine JSON-Datei namens `plugin.json`, die Claude Code den Namen des Plugins mitteilt und es beschreibt. Speichern Sie dieses als `my-first-plugin/.claude-plugin/plugin.json`:

60 

61 ```json my-first-plugin/.claude-plugin/plugin.json theme={null}

62 {

63 "name": "my-first-plugin",

64 "description": "A greeting plugin to learn the basics",

65 "version": "1.0.0",

66 "author": {

67 "name": "Your Name"

68 }

69 }

70 ```

71 

72 Die vier Felder tun folgendes:

73 

74 * **`name`**: erforderlich. Es identifiziert das Plugin und wird zum Präfix für jeden Skill und Agent, den das Plugin bereitstellt. Setzen Sie keine Leerzeichen hinein.

75 * **`description`**: der Text, den Benutzer für das Plugin in `/plugin` sehen.

76 * **`version`**: optional. Das Setzen hält Benutzer auf dieser Version, bis Sie es ändern; [Veröffentlichen Sie eine neue Version](/docs/de/plugins/host-marketplace#release-a-new-version) sagt, wann Sie es setzen oder weglassen sollten.

77 * **`author`**: wem Anerkennung gebührt. `name` ist erforderlich darin; `email` und `url` sind optional.

78 

79 Jedes andere Feld ist in der [Manifest-Referenz](/docs/de/plugins/manifest-reference#fields).

80 

81 Nur `plugin.json` geht in `.claude-plugin/`. Der Skill, den Sie als nächstes hinzufügen, geht direkt unter `my-first-plugin/`, neben diesem Ordner.

82 </Step>

83 

84 <Step title="Fügen Sie einen Skill hinzu">

85 Die einzige Komponente dieses Plugins ist ein Skill. Jeder Skill ist ein Verzeichnis unter `skills/`, das eine `SKILL.md`-Datei enthält. Erstellen Sie das Verzeichnis des Skills:

86 

87 ```bash theme={null}

88 mkdir -p my-first-plugin/skills/hello

89 ```

90 

91 Erstellen Sie dann `my-first-plugin/skills/hello/SKILL.md` mit diesem Inhalt:

92 

93 ```markdown my-first-plugin/skills/hello/SKILL.md theme={null}

94 ---

95 name: hello

96 description: Greet the user with a friendly message

97 disable-model-invocation: true

98 ---

99 

100 Greet the user warmly and ask how you can help them today.

101 ```

102 

103 Die Zeile `disable-model-invocation: true` bedeutet, dass Claude den Skill nicht von selbst ausführt, sodass nur Sie ihn auslösen. Entfernen Sie diese Zeile aus einem Skill, den Claude von selbst ausführen soll. Der Befehl des Skills kombiniert den Plugin-Namen und den Namen des Skills, sodass Sie diesen als `/my-first-plugin:hello` ausführen. Für die anderen Frontmatter-Felder siehe die [Skill-Frontmatter-Referenz](/docs/de/skills#frontmatter-reference).

104 </Step>

105 

106 <Step title="Validieren Sie das Plugin">

107 Überprüfen Sie das Manifest und das Frontmatter des Skills, bevor Sie etwas ausführen:

108 

109 ```bash theme={null}

110 claude plugin validate ./my-first-plugin

111 ```

112 

113 Der Befehl gibt den Manifest-Pfad aus, den er überprüft hat, und `✔ Validation passed`. Wenn er stattdessen `✘ Validation failed` ausgibt, benennt jede Zeile über dieser Ergebniszeile das zu behebende Feld. Schauen Sie jede Nachricht unter [`claude plugin validate` meldet Fehler](/docs/de/plugins/troubleshooting#claude-plugin-validate-reports-errors) nach.

114 </Step>

115 

116 <Step title="Führen Sie Claude Code mit dem Plugin aus">

117 Starten Sie eine Sitzung mit dem geladenen Plugin:

118 

119 ```bash theme={null}

120 claude --plugin-dir ./my-first-plugin

121 ```

122 

123 Sobald Claude Code startet, führen Sie den Skill aus:

124 

125 ```text theme={null}

126 /my-first-plugin:hello

127 ```

128 

129 Claude antwortet mit einer Begrüßung.

130 </Step>

131</Steps>

132 

133Das Plugin wird nur in Sitzungen geladen, die Sie mit `--plugin-dir` starten. Um weiterhin daran zu arbeiten, ohne das Flag zu verwenden, oder um einen `.zip`-Build zu testen, siehe [Entwickeln Sie ohne einen Marketplace](#develop-without-a-marketplace).

134 

135<h3 id="share-the-plugin">

136 Teilen Sie Ihr Plugin

137</h3>

138 

139Ein Plugin, das Sie mit [Erstellen Sie Ihr erstes Plugin](#create-your-first-plugin) erstellt haben, existiert nur auf Ihrem Computer. Wenn es für andere Personen bereit ist, gibt es drei Möglichkeiten, es ihnen zu geben:

140 

141* **Senden Sie es direkt an ein paar Personen**: geben Sie ihnen das Plugin-Verzeichnis oder eine `.zip` davon, und nichts muss veröffentlicht werden. Siehe [Teilen Sie ein Plugin ohne einen Marketplace](/docs/de/plugins/publish#share-a-plugin-without-a-marketplace).

142* **Listen Sie es in Ihrem eigenen Marketplace auf**: Teamkollegen fügen Ihren Marketplace einmal hinzu und installieren das Plugin nach Name, und sie erhalten Ihre Updates. Siehe [Veröffentlichen Sie über Ihren eigenen Marketplace](/docs/de/plugins/publish#publish-through-your-own-marketplace).

143* **Reichen Sie es bei Anthropics Community-Marketplace ein**: Sobald es aufgelistet ist, kann jeder, der diesen Marketplace hinzufügt, es installieren. Siehe [Reichen Sie beim Community-Marketplace ein](/docs/de/plugins/publish#submit-to-the-community-marketplace).

144 

145<h3 id="plugin-layout">

146 Plugin-Layout

147</h3>

148 

149Jede Art von [Komponente](/docs/de/plugins/components), z. B. Skills, Agents, Hooks und MCP-Server, geht in ein festes Verzeichnis unter dem Plugin-Root, das das Verzeichnis ist, das Sie an `--plugin-dir` übergeben. Fügen Sie nur die Verzeichnisse hinzu, die Sie verwenden. Um durch ein vollständiges Plugin-Verzeichnis zu klicken und zu lesen, was jede Datei tut, öffnen Sie den [Plugin-Explorer](/docs/de/plugins/components#explore-the-plugin-directory).

150 

151Die Tabelle listet die Verzeichnisse auf, mit denen die meisten Plugins beginnen, und das [vollständige Layout](/docs/de/plugins/manifest-reference#standard-layout) listet den Rest auf.

152 

153| Speicherort | Inhalt |

154| :--------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------ |

155| `.claude-plugin/plugin.json` | Das Manifest. Wenn Sie ein Plugin mit `--plugin-dir` laden und es kein Manifest hat, benennt Claude Code das Plugin nach seinem Verzeichnis |

156| `skills/` | Ein `<name>/SKILL.md`-Verzeichnis pro Skill |

157| `commands/` | Flache Markdown-Dateien, die ältere Form von Skills. Verwenden Sie `skills/` für neue Plugins |

158| `agents/` | Eine Markdown-Datei pro Subagent |

159| `hooks/hooks.json` | Hook-Konfiguration: ein Top-Level-`"hooks"`-Schlüssel, dessen Wert die gleiche Form wie `hooks` in einer Einstellungsdatei hat |

160| `.mcp.json` | MCP-Server-Definitionen |

161 

162<Warning>

163 Nur `plugin.json` geht in `.claude-plugin/`. Komponenten, die dort gespeichert sind, werden nicht geladen.

164 

165 Der Plugin-Root ist das eigene Verzeichnis des Plugins, nicht `~/.claude/` selbst. Eine `.mcp.json`, die unter `~/.claude/.mcp.json` gespeichert ist, wird nicht geladen.

166</Warning>

167 

168<h2 id="develop-without-a-marketplace">

169 Entwickeln Sie ohne einen Marketplace

170</h2>

171 

172Sie benötigen keinen [Marketplace](/docs/de/plugins/overview#get-plugins-from-a-marketplace), um ein Plugin auszuführen, das Sie schreiben. Laden Sie es stattdessen direkt von der Festplatte oder einer URL:

173 

174* [`--plugin-dir`](#load-a-directory-or-archive-for-one-session): lädt ein Verzeichnis oder `.zip`-Archiv für eine Sitzung.

175* [`--plugin-url`](#fetch-an-archive-from-a-url-for-one-session): ruft ein `.zip`-Archiv von einer URL für eine Sitzung ab.

176* [`claude plugin init`](#scaffold-a-plugin-that-loads-every-session): erstellt ein Plugin unter `~/.claude/skills/`, das in jeder Sitzung geladen wird.

177 

178Wenn zwei Plugins, die auf unterschiedliche Weise geladen werden, denselben Namen haben, siehe [Name-Konflikte](/docs/de/plugins/loading#name-conflicts), um zu sehen, welches Claude Code behält.

179 

180<h3 id="load-a-directory-or-archive-for-one-session">

181 Laden Sie ein Plugin für eine Sitzung

182</h3>

183 

184Sie können ein Plugin für eine einzelne Sitzung auf drei Arten laden: von einem Verzeichnis oder `.zip`-Archiv auf der Festplatte mit `--plugin-dir`, von einer URL mit `--plugin-url` oder von einer Umgebungsvariablen, wenn Sie kein Flag hinzufügen können. Jedes Plugin wird nur für diese Sitzung geladen, und nichts wird in Ihren Einstellungen dafür geschrieben. Wenn Sie die Dateien des Plugins während der Sitzung bearbeiten, führen Sie `/reload-plugins` aus, um die Änderungen zu laden.

185 

186<h4 id="from-a-directory-or-zip">

187 Von einem Verzeichnis oder `.zip`

188</h4>

189 

190Wenn Sie `claude` von Ihrer Shell aus starten, übergeben Sie `--plugin-dir` mit dem Plugin-Root-Verzeichnis oder einem `.zip`-Archiv davon. Wiederholen Sie das Flag, um mehrere Plugins zu laden:

191 

192```bash theme={null}

193claude --plugin-dir ./my-first-plugin --plugin-dir ./other-plugin.zip

194```

195 

196<h4 id="load-a-folder-of-plugins">

197 Von einem Ordner mit Plugins

198</h4>

199 

200Um mehrere Plugins von einem Ort zu laden, übergeben Sie einen Ordner, der sie enthält, z. B. `--plugin-dir ./plugins`. Das Laden eines Ordners mit Plugins erfordert Claude Code v2.1.265 oder später.

201 

202Wenn der Ordner kein `.claude-plugin/`-Verzeichnis und keine Plugin-Komponenten auf seiner obersten Ebene hat, behandelt Claude Code ihn als einen Ordner mit Plugins. Jeder unmittelbare Unterordner, der ein `.claude-plugin/plugin.json`-Manifest hat, wird dann als separates Plugin geladen. Alles andere im Ordner wird ohne Fehler übersprungen, einschließlich eines Unterordners, der kein Manifest hat. Wenn ein Plugin im Ordner nicht geladen wird, überprüfen Sie, dass sein Unterordner ein `.claude-plugin/plugin.json` hat.

203 

204In einer interaktiven Sitzung können Sie auch Plugins im Ordner nach dem Start hinzufügen und entfernen:

205 

206* Ein Unterordner, den Sie hinzufügen, wird als neues Plugin geladen, sobald sein Manifest vorhanden ist.

207* Wenn Sie einen Unterordner entfernen, wird sein Plugin entladen.

208 

209Eine Nachricht erscheint in der Sitzung für jede dieser Änderungen. Wenn das Laden oder Entladen eines Plugins während des Gesprächs den [Prompt-Cache ungültig machen würde](/docs/de/prompt-caching#enabling-or-disabling-a-plugin), wird die Änderung stattdessen gehalten, und die Nachricht teilt Ihnen mit, dass Sie `/reload-plugins` ausführen sollen, um sie anzuwenden.

210 

211<h4 id="fetch-an-archive-from-a-url-for-one-session">

212 Von einer URL

213</h4>

214 

215Wenn Sie `claude` von Ihrer Shell aus starten, übergeben Sie `--plugin-url` mit der Adresse eines `.zip`-Archivs, z. B. eines Build-Artefakts, das Ihre CI veröffentlicht:

216 

217```bash theme={null}

218claude --plugin-url https://example.com/my-first-plugin.zip

219```

220 

221Claude Code lädt das Archiv beim Start herunter. Um mehrere zu laden, wiederholen Sie das Flag oder übergeben Sie die URLs durch Leerzeichen getrennt in einem Argument in Anführungszeichen.

222 

223Zeigen Sie das Flag nur auf Archive, die Sie kontrollieren oder denen Sie vertrauen.

224 

225Wenn Claude Code das Archiv nicht abrufen kann oder das Archiv ungültig ist, startet es ohne das Plugin und zeichnet einen Plugin-Ladefehler auf, den Sie auf der Registerkarte **Errors** des `/plugin`-Managers überprüfen können.

226 

227<h4 id="from-an-environment-variable">

228 Von einer Umgebungsvariablen

229</h4>

230 

231Um Plugins in einer Sitzung zu laden, in der Sie das Flag `--plugin-dir` nicht hinzufügen können, listen Sie ihre absoluten Pfade stattdessen in der Umgebungsvariablen [`CLAUDE_CODE_PLUGIN_DIRS`](/docs/de/env-vars#variables) auf. Claude Code lädt jeden Pfad, wie es einen `--plugin-dir`-Pfad lädt. Diese Plugins werden zusätzlich zu allen geladen, die Sie mit `--plugin-dir` übergeben. [Projekt- und lokale Einstellungen können diese Variable nicht setzen](/docs/de/settings-reference#variables-claude-code-ignores-in-env). `CLAUDE_CODE_PLUGIN_DIRS` erfordert Claude Code v2.1.280 oder später.

232 

233Verwaltete Einstellungen können `--plugin-dir` und `CLAUDE_CODE_PLUGIN_DIRS` ausschalten. Siehe [Flags, die ein Plugin für eine Sitzung laden](/docs/de/plugins/cli-reference#flags-that-load-a-plugin-for-one-session). Um ein Plugin zusammen mit einem Plugin zu testen, von dem es abhängt, siehe [Testen Sie ein Plugin und seine Abhängigkeit lokal](/docs/de/plugins/dependencies#test-a-plugin-and-its-dependency-locally).

234 

235<h3 id="scaffold-a-plugin-that-loads-every-session">

236 Machen Sie ein Plugin in jeder Sitzung geladen

237</h3>

238 

239Ihr persönliches Skills-Verzeichnis ist `~/.claude/skills/`. Claude Code lädt jeden Ordner dort, der ein `.claude-plugin/plugin.json` enthält, als Plugin in jeder Sitzung, ohne Flag und ohne Installationsschritt. `claude plugin init` erstellt ein solches Plugin für Sie.

240 

241<h4 id="scaffold-the-plugin-with-claude-plugin-init">

242 Erstellen Sie das Plugin mit `claude plugin init`

243</h4>

244 

245`claude plugin init` schreibt ein Starter-Plugin unter `~/.claude/skills/`. Erfordert Claude Code v2.1.157 oder später. Erstellen Sie eines von Ihrer Shell aus:

246 

247```bash theme={null}

248claude plugin init my-tool

249```

250 

251Der Befehl erstellt `~/.claude/skills/my-tool/` mit einem `.claude-plugin/plugin.json` und einem Root-`SKILL.md`. Er gibt `✔ Created plugin "my-tool" at ~/.claude/skills/my-tool` gefolgt von `It will auto-load next session as my-tool@skills-dir. Run /reload-plugins to load it now.` aus.

252 

253Übergeben Sie `--with skills`, um `claude plugin init` zu haben, um einen Skill unter `skills/` für Sie zu erstellen. Die anderen `--with`-Werte sind in der [Plugin-Befehls-Referenz](/docs/de/plugins/cli-reference#plugin-init).

254 

255<h4 id="skill-names-in-a-scaffolded-plugin">

256 Benennen Sie die Skills des Plugins

257</h4>

258 

259Der Root-Skill unter `~/.claude/skills/my-tool/SKILL.md` ist auch ein persönlicher Skill, sodass Sie ihn als `/my-tool` aufrufen, nicht als `/my-tool:my-tool`. Skills, die Sie unter `skills/` im Plugin hinzufügen, erhalten das Plugin-Namen-Präfix, z. B. `/my-tool:example`.

260 

261<h4 id="stop-loading-the-plugin">

262 Stoppen Sie das Laden des Plugins

263</h4>

264 

265Um das Laden eines erstellten Plugins zu stoppen, löschen Sie sein Verzeichnis, oder führen Sie `claude plugin disable my-tool@skills-dir` in Ihrer Shell mit dem Namen `my-tool@skills-dir` aus, den `claude plugin init` gedruckt hat. In der ID `my-tool@skills-dir` steht `skills-dir` an der Stelle, wo ein Marketplace-Name stehen würde, da das Plugin von Ihrem Skills-Verzeichnis geladen wird, nicht von einem Marketplace.

266 

267<h4 id="load-a-plugin-for-everyone-in-one-repository">

268 Teilen Sie das Plugin über ein Repository

269</h4>

270 

271`claude plugin init` schreibt das Plugin in Ihr persönliches Skills-Verzeichnis unter `~/.claude/skills/`, sodass es für Sie in jedem Projekt geladen wird. Um ein Plugin für alle in einem Repository zu laden, erstellen Sie das gleiche Layout selbst unter `<project>/.claude/skills/<name>/`, einschließlich seines `.claude-plugin/plugin.json`. Siehe [Plugins, die über ein Repository geteilt werden](/docs/de/plugins/loading#plugins-shared-through-a-repository), um die Bedingungen zu sehen, unter denen Claude Code es lädt.

272 

273<h2 id="test-and-debug">

274 Testen und Debuggen

275</h2>

276 

277Wenn eine Änderung an Ihrem Plugin nicht angezeigt wird, arbeiten Sie diese Überprüfungen der Reihe nach durch. Jede teilt Ihnen mit, was Claude Code mit dem Plugin getan hat:

278 

2791. Führen Sie in Ihrer Shell `claude plugin validate <path>` aus. Es überprüft das Manifest und das Frontmatter jeder Skill-, Agent- und Command-Datei und beendet sich mit `0` bei `Validation passed`. Fügen Sie `--strict` hinzu, um auch bei Warnungen fehlzuschlagen. Exit-Codes und Verzeichnisbehandlung sind in der [Plugin-Befehls-Referenz](/docs/de/plugins/cli-reference#plugin-validate).

2802. Führen Sie in der laufenden Sitzung `/reload-plugins` aus, um Änderungen anzuwenden, die Sie auf der Festplatte vorgenommen haben. Es gibt eine `Reloaded:`-Zeile mit Zählungen aus. Bestätigen Sie dann, dass ein Skill geladen wurde, indem Sie seinen `/plugin-name:skill`-Befehl eingeben, oder indem Sie das Plugin auf der Registerkarte **Installed** von `/plugin` finden.

2813. Führen Sie in der gleichen Sitzung `/plugin` aus. Die Registerkarte **Installed** listet Ihr Plugin auf und zeigt in den Details des Plugins die Komponenten, die Claude Code gefunden hat. Die Registerkarte **Errors** listet auf, was nicht geladen wurde und warum, z. B. ein Pfad in Ihrem Manifest, der nicht existiert.

2824. Führen Sie in Ihrer Shell `claude plugin list` aus. Es gibt Session-only- und Skills-Directory-Plugins in ihren eigenen Abschnitten mit `Status: ✔ loaded` oder dem Ladefehler aus. Um das Plugin einzubeziehen, das Sie entwickeln, übergeben Sie `--plugin-dir` mit seinem Pfad vor `plugin list`.

283 

284Um einen MCP-Server zu überprüfen, führen Sie `/mcp` in der Sitzung aus, um den Status des Servers zu sehen. Wenn der Server gesund ist, listet `/mcp` ihn als verbunden auf. Wenn nicht, siehe [MCP-Server, die nicht starten](/docs/de/plugins/troubleshooting#invalid-mcp-server-config-for-and-mcp-servers-that-dont-start).

285 

286Um einen Hook zu überprüfen, lösen Sie das Ereignis aus, das er abgleicht. Bitten Sie Claude beispielsweise, eine Datei zu bearbeiten, um einen `PostToolUse`-Hook auszulösen. Lesen Sie dann das [Debug-Protokoll](/docs/de/hooks#debug-hooks), das zeigt, welche Hooks abgeglichen wurden, ihre Exit-Codes und ihre Ausgabe.

287 

288Die nächsten Abschnitte behandeln die Fehler, auf die Sie bei der Entwicklung am ehesten stoßen, und die [Seite zur Fehlerbehebung](/docs/de/plugins/troubleshooting#build-a-plugin) hat den vollständigen Eintrag für jeden.

289 

290<h3 id="a-component-path-isn’t-found">

291 Ein Komponentenpfad wird nicht gefunden

292</h3>

293 

294Die Registerkarte **Errors** von `/plugin` zeigt `<component> path not found: <path>`, z. B. `commands path not found`. Ein Komponentenpfad in Ihrem Manifest, z. B. `commands`, `skills`, `agents` oder `hooks`, zeigt auf nichts. Beheben Sie den Pfad oder erstellen Sie das Verzeichnis, und führen Sie dann `/reload-plugins` in der Sitzung aus. Siehe [`commands path not found`](/docs/de/plugins/troubleshooting#commands-path-not-found).

295 

296<h3 id="plugin-dir-at-a-marketplace-root-doesn’t-load-the-plugins-under-plugins/">

297 `--plugin-dir` bei einem Marketplace-Root lädt die Plugins unter `plugins/` nicht

298</h3>

299 

300`--plugin-dir` nimmt das Plugin-Root-Verzeichnis, das `.claude-plugin/plugin.json` und die Komponentenverzeichnisse wie `skills/` enthält. Wenn Sie es stattdessen auf einen Marketplace-Root zeigen, liest Claude Code `marketplace.json` nicht, sodass ein Plugin unter `plugins/` nicht geladen wird, und Sie sehen keinen Fehler. Zeigen Sie das Flag auf den Ordner eines Plugins, oder fügen Sie den Marketplace hinzu. Siehe [den Eintrag zur Fehlerbehebung](/docs/de/plugins/troubleshooting#plugin-dir-loads-a-plugin-with-no-components).

301 

302<h3 id="the-plugin-loads-but-its-skills-are-missing">

303 Das Plugin wird geladen, aber seine Skills fehlen

304</h3>

305 

306Das Verzeichnis `skills/` befindet sich in `.claude-plugin/`, oder ein `skills`-Eintrag im Manifest zeigt auf eine Datei. Verschieben Sie `skills/` zum Plugin-Root, zeigen Sie jeden `skills`-Eintrag auf ein Verzeichnis, das `SKILL.md` enthält, und führen Sie `/reload-plugins` in der Sitzung aus. Siehe [Plugin wird geladen, aber seine Skills fehlen](/docs/de/plugins/troubleshooting#plugin-loads-but-its-skills-are-missing).

307 

308<h3 id="the-userconfig-dialog-never-appears">

309 Der `userConfig`-Dialog wird nie angezeigt

310</h3>

311 

312Der Dialog für die [`userConfig`](/docs/de/plugins/components#user-configuration)-Optionen Ihres Plugins ist Teil der Installation über `/plugin` in einer Sitzung. Das Laden mit `--plugin-dir` zeigt ihn nicht, und auch nicht `claude plugin install` in der Shell. Führen Sie mit dem geladenen Plugin `/plugin configure <plugin-name>` in der Sitzung aus, um ihn zu öffnen. Siehe [Der `userConfig`-Dialog wird nie angezeigt](/docs/de/plugins/troubleshooting#the-userconfig-dialog-never-appears).

313 

314<h3 id="check-that-the-plugin-changes-claude’s-behavior">

315 Überprüfen Sie, dass das Plugin Claudes Verhalten ändert

316</h3>

317 

318Ein Plugin, das ohne Fehler geladen wird, kann immer noch nicht steuern, wie Claude auf die beabsichtigte Weise funktioniert. `claude plugin eval`, das Sie in Ihrer Shell ausführen, führt Ihre Testfälle mit und ohne das Plugin aus und bewertet den Unterschied. Siehe [Testen Sie Plugins mit Evals](/docs/de/plugin-evals), beginnend mit [Erstellen Sie Ihre erste Eval-Suite](/docs/de/plugin-evals#create-your-first-eval-suite).

319 

320<h2 id="convert-an-existing-claude-setup">

321 Konvertieren Sie ein vorhandenes `.claude/`-Setup

322</h2>

323 

324Wenn Sie bereits Skills, Agents oder Hooks unter dem `.claude/`-Verzeichnis eines Projekts haben, können Sie sie in ein Plugin verschieben, ohne sie umzuschreiben.

325 

326Führen Sie die Befehle in diesen Schritten vom Projekt-Root aus, das das Verzeichnis ist, das `.claude/` enthält, da die `cp`-Pfade relativ dazu sind.

327 

328<Steps>

329 <Step title="Erstellen Sie die Plugin-Struktur">

330 Erstellen Sie das Plugin-Verzeichnis und seinen `.claude-plugin/`-Ordner neben `.claude/`. Sie können das Plugin danach überall verschieben.

331 

332 ```bash theme={null}

333 mkdir -p my-plugin/.claude-plugin

334 ```

335 

336 Erstellen Sie `my-plugin/.claude-plugin/plugin.json`:

337 

338 ```json my-plugin/.claude-plugin/plugin.json theme={null}

339 {

340 "name": "my-plugin",

341 "description": "Migrated from standalone configuration",

342 "version": "1.0.0"

343 }

344 ```

345 </Step>

346 

347 <Step title="Kopieren Sie Ihre vorhandenen Dateien">

348 Kopieren Sie jedes Konfigurationsverzeichnis, das Sie haben, zum Plugin-Root, und überspringen Sie den Befehl für jedes Verzeichnis, das Sie nicht haben.

349 

350 ```bash theme={null}

351 cp -r .claude/commands my-plugin/

352 ```

353 

354 ```bash theme={null}

355 cp -r .claude/agents my-plugin/

356 ```

357 

358 ```bash theme={null}

359 cp -r .claude/skills my-plugin/

360 ```

361 

362 Führen Sie `ls -a my-plugin` aus, um zu bestätigen, dass jedes Verzeichnis, das Sie kopiert haben, neben `.claude-plugin` angezeigt wird.

363 </Step>

364 

365 <Step title="Verschieben Sie Ihre Hooks">

366 Wenn Sie Hooks in `.claude/settings.json` oder `.claude/settings.local.json` haben, erstellen Sie ein Hooks-Verzeichnis:

367 

368 ```bash theme={null}

369 mkdir -p my-plugin/hooks

370 ```

371 

372 Erstellen Sie `my-plugin/hooks/hooks.json` und kopieren Sie das `hooks`-Objekt aus Ihrer Einstellungsdatei hinein. Das Format ist das gleiche.

373 

374 Dieses Beispiel zeigt die Form mit einem Hook, der einen Linter auf jede Datei ausführt, die Claude schreibt oder bearbeitet. Ersetzen Sie das Beispiel durch Ihr eigenes `hooks`-Objekt.

375 

376 ```json my-plugin/hooks/hooks.json theme={null}

377 {

378 "hooks": {

379 "PostToolUse": [

380 {

381 "matcher": "Write|Edit",

382 "hooks": [{ "type": "command", "command": "jq -r '.tool_input.file_path' | xargs npm run lint:fix" }]

383 }

384 ]

385 }

386 }

387 ```

388 </Step>

389 

390 <Step title="Testen Sie das migrierte Plugin">

391 Laden Sie das Plugin für eine Sitzung:

392 

393 ```bash theme={null}

394 claude --plugin-dir ./my-plugin

395 ```

396 

397 Überprüfen Sie jede Komponente unter ihrem neuen Namen:

398 

399 * **Skills**: führen Sie `/my-plugin:deploy` für einen Skill aus, der `/deploy` war.

400 * **Subagents**: bitten Sie Claude, den `my-plugin:reviewer`-Agent für einen Agent zu verwenden, der `reviewer` war.

401 * **Hooks**: lösen Sie das Ereignis aus, das jeder Hook abgleicht.

402 

403 Wenn etwas fehlt, arbeiten Sie sich durch [Testen und Debuggen](#test-and-debug).

404 </Step>

405</Steps>

406 

407Während die Originale noch unter `.claude/` sind, bleiben sie neben den Kopien des Plugins geladen:

408 

409* **Skills und Agents**: die beiden Sätze kollidieren nicht, da die Skills und Agents des Plugins das Präfix `my-plugin:` tragen. `/deploy` und `/my-plugin:deploy` funktionieren beide, und Claude sieht `reviewer` und `my-plugin:reviewer` als zwei Subagents.

410* **Hooks**: Hooks haben kein Präfix, sodass ein Hook, der sowohl in Ihrer Einstellungsdatei als auch in `hooks/hooks.json` ist, jedes Mal zweimal ausgeführt wird, wenn sein Ereignis auslöst.

411 

412Nachdem Sie bestätigt haben, dass das Plugin funktioniert, löschen Sie die Originale aus `.claude/` und entfernen Sie das `hooks`-Objekt aus Ihrer Einstellungsdatei.

413 

414<h2 id="next-steps">

415 Nächste Schritte

416</h2>

417 

418* [Plugin-Komponenten](/docs/de/plugins/components): fügen Sie Agents, Hooks, MCP-Server, LSP-Server und Benutzerkonfiguration zu Ihrem Plugin hinzu

419* [Testen Sie Plugins mit Evals](/docs/de/plugin-evals): schreiben Sie Eval-Fälle und führen Sie sie mit `claude plugin eval` aus, um zu überprüfen, wie zuverlässig das Plugin Claudes Verhalten steuert

420* [Veröffentlichen Sie ein Plugin](/docs/de/plugins/publish): versionieren Sie es, setzen Sie es in einen Marketplace und reichen Sie es beim Community-Marketplace ein

421* [Plugins auf claude.ai und in Cowork](https://claude.com/docs/plugins/overview): derselbe Plugin-Ordner wird auf claude.ai und in Cowork installiert. Einige Komponenten sind nur für Claude Code

422* [Plugin-Manifest-Referenz](/docs/de/plugins/manifest-reference): jedes `plugin.json`-Feld, jede Pfadregel und jedes Verzeichnis

423* [Skills](/docs/de/skills): schreiben Sie die Skills, die Ihr Plugin bereitstellt

424* [Anthropics Plugins im claude-code-Repository](https://github.com/anthropics/claude-code/tree/main/plugins): vollständige durchgearbeitete Beispiele des Layouts auf dieser Seite, z. B. `feature-dev` und `code-review`

plugins/create-marketplace.md +251 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Einen Marketplace erstellen

6 

7> Erstellen Sie einen Plugin-Marketplace aus einer marketplace.json-Datei und testen Sie ihn lokal, bevor Sie ihn hosten.

8 

9Ein Plugin-Marketplace ist ein Verzeichnis oder Repository mit einer `.claude-plugin/marketplace.json`-Datei, die Ihre Plugins auflistet und angibt, wo jedes abgerufen werden kann. Sie pushen das Verzeichnis zu einem Git-Host, und jeder mit Zugriff registriert es in Claude Code mit einem Befehl und installiert Ihre Plugins daraus.

10 

11Erstellen Sie Ihren eigenen Marketplace, wenn Sie möchten, dass eine von Ihnen gewählte Gruppe, z. B. Ihr Team oder Ihre Organisation, Ihre Plugins installiert und weiterhin Updates aus einem von Ihnen kontrollierten Katalog erhält. Das Repository kann privat sein, es kann so viele Plugins auflisten, wie Sie möchten, und ein Administrator kann [es auf jedem Computer erforderlich machen](/docs/de/plugins/org).

12 

13<Note>

14 Diese Fälle werden auf anderen Seiten behandelt:

15 

16 * **Ein Plugin mit wenigen Personen teilen**: Senden Sie ihnen das Plugin-Verzeichnis oder eine `.zip`-Datei davon. Siehe [Ein Plugin ohne Marketplace teilen](/docs/de/plugins/publish#share-a-plugin-without-a-marketplace).

17 * **Ein Plugin für alle anbieten**: Reichen Sie es im Community-Marketplace von Anthropic ein. Siehe [Im Community-Marketplace einreichen](/docs/de/plugins/publish#submit-to-the-community-marketplace).

18 * **Ein Plugin selbst verwenden**: Laden Sie es mit `--plugin-dir` oder speichern Sie es in Ihrem Skills-Verzeichnis. Siehe [Entwickeln ohne Marketplace](/docs/de/plugins/create#develop-without-a-marketplace).

19</Note>

20 

21Beginnen Sie mit [Einen Marketplace erstellen](#create-a-marketplace), um einen auf Ihrem eigenen Computer zu erstellen und ein Plugin daraus zu installieren, dann [fügen Sie weitere Plugin-Einträge hinzu](#add-plugin-entries).

22 

23<h2 id="create-a-marketplace">

24 Erstellen Sie einen Marketplace

25</h2>

26 

27Die folgenden Schritte erstellen einen Marketplace auf Ihrem Computer, fügen ein Plugin hinzu, registrieren ihn in Claude Code und installieren das Plugin daraus. Das ist die gesamte Schleife, und es ist die gleiche Schleife, die Ihre Benutzer durchlaufen, sobald Sie den Marketplace irgendwo hosten, wo sie ihn erreichen können. Führen Sie jeden Befehl in Ihrer Shell aus, aus dem Verzeichnis, in dem Sie `my-marketplace/` erstellen möchten.

28 

29Sie benötigen ein Plugin zum Auflisten. Das Beispiel verwendet `my-first-plugin` aus [Create your first plugin](/docs/de/plugins/create#create-your-first-plugin), ein Plugin mit einer Skill, die Sie als `/my-first-plugin:hello` ausführen; erstellen Sie es zuerst, wenn Sie noch kein Plugin haben. Um stattdessen ein eigenes Plugin zu verwenden, ersetzen Sie sein Verzeichnis und seinen `name` überall dort, wo die Schritte `my-first-plugin` sagen. Für das, was ein Plugin-Verzeichnis enthalten kann, siehe den [plugin directory explorer](/docs/de/plugins/components#explore-the-plugin-directory).

30 

31<Steps>

32 <Step title="Richten Sie das Marketplace-Verzeichnis ein">

33 Ein Marketplace ist ein Verzeichnis mit einer `.claude-plugin/marketplace.json`-Datei plus den Plugins, die es auflistet. Erstellen Sie das Marketplace-Verzeichnis und seinen `.claude-plugin/`-Ordner, kopieren Sie dann Ihr Plugin unter `plugins/`:

34 

35 ```bash theme={null}

36 mkdir -p my-marketplace/.claude-plugin my-marketplace/plugins

37 cp -r my-first-plugin my-marketplace/plugins/

38 ```

39 

40 Überprüfen Sie, dass das Plugin an seinem neuen Ort gültig ist, damit jeder spätere Fehler über den Marketplace und nicht über das Plugin ist:

41 

42 ```bash theme={null}

43 claude plugin validate ./my-marketplace/plugins/my-first-plugin

44 ```

45 

46 Die letzte Zeile der Ausgabe lautet `✔ Validation passed`.

47 </Step>

48 

49 <Step title="Erstellen Sie die Marketplace-Datei">

50 Speichern Sie `marketplace.json` unter `my-marketplace/.claude-plugin/marketplace.json`. Die Datei erfordert einen `name`, einen `owner` und ein `plugins`-Array.

51 

52 Jedes Objekt in `plugins` ist ein Plugin-Eintrag und benötigt einen `name` und eine `source`. Schreiben Sie die `source` des Eintrags als Pfad vom Marketplace-Root. Der Root ist `my-marketplace/`, das Verzeichnis, das `.claude-plugin/` enthält.

53 

54 ```json my-marketplace/.claude-plugin/marketplace.json theme={null}

55 {

56 "name": "my-marketplace",

57 "description": "Plugins for my team",

58 "owner": {

59 "name": "Your Name"

60 },

61 "plugins": [

62 {

63 "name": "my-first-plugin",

64 "source": "./plugins/my-first-plugin",

65 "description": "A greeting plugin to learn the basics"

66 }

67 ]

68 }

69 ```

70 </Step>

71 

72 <Step title="Validieren Sie den Marketplace">

73 Führen Sie `claude plugin validate` im Marketplace-Verzeichnis aus, um die JSON-Syntax, die erforderlichen Felder und jeden Plugin-Eintrag in seiner `.claude-plugin/marketplace.json` zu überprüfen.

74 

75 ```bash theme={null}

76 claude plugin validate ./my-marketplace

77 ```

78 

79 Für die Datei wie in Schritt 2 geschrieben, lautet die letzte Zeile der Ausgabe `✔ Validation passed`.

80 </Step>

81 

82 <Step title="Fügen Sie den Marketplace hinzu und installieren Sie das Plugin">

83 Registrieren Sie das Verzeichnis als Marketplace.

84 

85 ```bash theme={null}

86 claude plugin marketplace add ./my-marketplace

87 ```

88 

89 Der Befehl gibt `✔ Successfully added marketplace: my-marketplace (declared in user settings)` aus, was bedeutet, dass der Marketplace in Ihrer Benutzereinstellungsdatei aufgezeichnet ist.

90 

91 Installieren Sie das Plugin. Die Installations-ID ist der `name` des Eintrags, ein `@` und der Marketplace-`name`.

92 

93 ```bash theme={null}

94 claude plugin install my-first-plugin@my-marketplace

95 ```

96 

97 Der Befehl gibt `✔ Successfully installed plugin: my-first-plugin@my-marketplace (scope: user)` aus.

98 

99 Innerhalb einer Sitzung registriert `/plugin marketplace add ./my-marketplace` den Marketplace auf die gleiche Weise. `/plugin install my-first-plugin@my-marketplace` öffnet die Details des Plugins im `/plugin`-Panel, wo Sie es installieren. Für diesen Ablauf siehe [Install and manage plugins](/docs/de/plugins/install).

100 </Step>

101 

102 <Step title="Bestätigen Sie, dass das Plugin geladen wurde">

103 Installierte Plugins auflisten.

104 

105 ```bash theme={null}

106 claude plugin list

107 ```

108 

109 Die Ausgabe listet `my-first-plugin@my-marketplace` mit `Status: ✔ enabled` auf.

110 

111 Um zu sehen, was das Plugin geladen hat, zeigen Sie seine Details an.

112 

113 ```bash theme={null}

114 claude plugin details my-first-plugin

115 ```

116 

117 Der Abschnitt `Component inventory` lautet `Skills (1) hello`.

118 

119 Um die Skill auszuführen, starten Sie eine Sitzung und geben Sie `/my-first-plugin:hello` ein. Claude grüßt Sie. Der Befehl hat den Namen des Plugins als Präfix, wie es jeder Skill-Name eines Plugins tut.

120 </Step>

121</Steps>

122 

123<h2 id="add-plugin-entries">

124 Plugin-Einträge hinzufügen

125</h2>

126 

127Jedes Plugin, das Sie verteilen, ist ein Objekt im `plugins`-Array von `marketplace.json`. Um ein zweites Plugin hinzuzufügen, fügen Sie ein zweites Objekt hinzu. Diese Felder decken die meisten Einträge ab:

128 

129* `name`: der Bezeichner, den Personen vor `@` eingeben, wenn sie installieren. Er kann keine Leerzeichen enthalten.

130* `source`: wo Claude Code das Plugin abruft. Schreiben Sie einen relativen Pfad-String für ein Plugin im Marketplace-Verzeichnis, wie in [der Anleitung](#create-a-marketplace), oder ein Quellobjekt für ein Plugin außerhalb davon. Siehe [Wählen Sie eine Plugin-Quelle](#choose-a-plugin-source).

131* `description`: die Zeile, die Personen neben dem Plugin sehen, wenn sie Ihren Marketplace in `/plugin` durchsuchen.

132 

133Für die vollständige Feldliste siehe [Plugin-Einträge](/docs/de/plugins/marketplace-reference#plugin-entries).

134 

135Ein Eintrag kann auch jedes [`plugin.json`](/docs/de/plugins/manifest-reference)-Feld setzen. Für den Fall, dass die `plugin.json`-Felder eines Eintrags für ein Plugin gelten, das sein eigenes `plugin.json` hat, siehe [Eintrag und plugin.json](/docs/de/plugins/marketplace-reference#entry-and-plugin-json).

136 

137<h2 id="rules-for-plugin-entries">

138 Regeln für Plugin-Einträge

139</h2>

140 

141Die meisten fehlgeschlagenen Installationen von einem neuen Marketplace stammen von einem relativen Pfad, der aus dem falschen Verzeichnis geschrieben wurde, oder von einem Eintrags-Namen, der sich vom `name` in der `plugin.json` des Plugins unterscheidet.

142 

143<h3 id="write-relative-paths-from-the-marketplace-root">

144 Schreiben Sie relative Pfade vom Marketplace-Root

145</h3>

146 

147Der Marketplace-Root ist das Verzeichnis, das `.claude-plugin/` enthält. In [der Anleitung](#create-a-marketplace) ist das `my-marketplace/`, also ist die `source` des Eintrags `"./plugins/my-first-plugin"`. Der Pfad beginnt nicht innerhalb von `.claude-plugin/`, verwenden Sie also nicht `..`, um ihn zu verlassen.

148 

149Ein Pfad mit `..` und ein Pfad zu einem fehlenden Verzeichnis schlagen bei verschiedenen Befehlen fehl:

150 

151* **Ein Pfad mit `..`**: `claude plugin validate` meldet den Eintrag als ungültig. Die Nachricht beginnt mit `Path contains "..": ./../plugins/my-first-plugin`.

152* **Ein Pfad zu einem Verzeichnis, das nicht existiert**: `claude plugin validate` besteht. `claude plugin install` schlägt mit `Source path does not exist: <path>` fehl, und `<path>` ist der absolute Ort, den Claude Code überprüft hat.

153 

154<h3 id="keep-the-entry-name-and-the-manifest-name-the-same">

155 Halten Sie den Eintrags-Namen und den Manifest-Namen gleich

156</h3>

157 

158Ein Marketplace-Plugin hat einen Eintrags-`name` in `marketplace.json` und einen `name` in seiner eigenen `plugin.json`, genannt der Manifest-Name. Jeder Name erscheint an verschiedenen Stellen:

159 

160* **Eintrags-Name**: die Installations-ID, `<entry-name>@<marketplace>`. Es ist das, was Personen eingeben, um zu installieren, was `claude plugin list` anzeigt, und der Schlüssel, den Claude Code unter [`enabledPlugins`](/docs/de/settings-reference#enabledplugins) in ihrer Einstellungsdatei schreibt.

161* **Manifest-Name**: das Präfix auf den Skills des Plugins und der Name, den `claude plugin details` nimmt.

162 

163Wenn sich die beiden Namen unterscheiden und jemand nach dem Manifest-Namen installiert, meldet Claude Code `Plugin "<manifest-name>" not found in marketplace "<marketplace>"`. Halten Sie die beiden Namen gleich. Für mehr darüber, wie Claude Code die beiden Namen verwendet, siehe [Plugin-Lade-Referenz](/docs/de/plugins/loading#find-where-a-plugin-came-from).

164 

165<h2 id="choose-a-plugin-source">

166 Wählen Sie eine Plugin-Quelle

167</h2>

168 

169Jeder Plugin-Eintrag in `marketplace.json` hat eine `source`, die Claude Code mitteilt, wo dieses eine Plugin abgerufen werden kann. Wählen Sie die Quelle danach aus, wo die Plugin-Dateien gespeichert sind. Die Tabelle listet die Quellen auf, die die meisten Marketplace-Besitzer verwenden.

170 

171| Quelle | Verwenden Sie es, wenn | Minimaler `source`-Wert |

172| :------------- | :----------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------- |

173| Relativer Pfad | Die Plugin-Dateien befinden sich im Marketplace-Verzeichnis selbst | `"./plugins/my-first-plugin"` |

174| `github` | Das Plugin ist sein eigenes GitHub-Repository | `{ "source": "github", "repo": "your-org/my-first-plugin" }` |

175| `git-subdir` | Das Plugin ist ein Unterverzeichnis eines anderen Repositorys, z. B. eines Monorepos | `{ "source": "git-subdir", "url": "your-org/monorepo", "path": "tools/my-first-plugin" }` |

176 

177In einer `git-subdir`-Quelle nimmt `url` eine Git-URL oder eine `owner/repo`-GitHub-Kurzform.

178 

179Ein Plugin kann auch aus einem dieser Quellentypen stammen:

180 

181* `url`: ein Git-Repository nach URL, auf jedem Host

182* `archive`: eine Zip-Datei, die über HTTPS heruntergeladen wird

183* `npm`: ein npm-Paket

184* `command`: ein Verzeichnis, das durch Ausführen eines Befehls auf dem Computer erstellt wird, auf dem das Plugin installiert ist

185 

186Für die Felder jedes Quellentyps und zum Anheften einer Git-basierten Quelle an einen `ref` oder `sha` siehe [Plugin-Quellen](/docs/de/plugins/marketplace-reference#plugin-sources).

187 

188<h2 id="validate-and-test">

189 Validieren und testen

190</h2>

191 

192Wenn Sie Plugins hinzufügen, führen Sie `claude plugin validate ./my-marketplace` in Ihrer Shell nach jeder Bearbeitung aus und installieren Sie aus dem Marketplace auf Ihrem eigenen Computer, bevor Sie ihn teilen. Validierung und Installation fangen verschiedene Probleme auf.

193 

194<h3 id="problems-that-validation-reports">

195 Probleme, die die Validierung meldet

196</h3>

197 

198`claude plugin validate` liest nur Dateien im Marketplace-Verzeichnis. Es meldet:

199 

200* JSON-Syntaxfehler, als `json: Invalid JSON syntax: <reason>`

201* Fehlende erforderliche Felder, z. B. `owner: Invalid input`

202* Ein Marketplace-Name mit Leerzeichen, Nicht-ASCII-Zeichen oder eine Form, die einen offiziellen Anthropic-Marketplace imitiert, z. B. `claude-official`

203* Ein relativer `source`, der `..` enthält

204* Unbekannte Felder auf der obersten Ebene oder in einem Plugin-Eintrag, als Warnungen

205* Probleme in der `plugin.json` jedes Plugins mit relativem Pfad, als `plugins[N] plugin.json → <field>: <message>`

206 

207Für jede Nachricht, die `validate` drucken kann, siehe [Validierungsmeldungen](/docs/de/plugins/marketplace-reference#validation-messages). Für seine Flags und Exit-Codes siehe [`plugin validate`](/docs/de/plugins/cli-reference#plugin-validate).

208 

209<h3 id="problems-that-surface-when-you-add-or-install">

210 Probleme, die beim Hinzufügen oder Installieren auftauchen

211</h3>

212 

213Probleme, die `claude plugin validate` nicht meldet, erscheinen, wenn Sie den Marketplace hinzufügen oder daraus installieren:

214 

215* **Wenn Sie den Marketplace hinzufügen**: die genauen [offiziellen Marketplace-Namen](/docs/de/plugins/marketplace-reference#reserved-names), z. B. `claude-plugins-official`, bestehen die Validierung. Wenn Sie einen Marketplace mit einem dieser Namen hinzufügen, weigert sich Claude Code mit einer Nachricht, die mit `The name '<name>' is reserved for official Anthropic marketplaces` beginnt.

216* **Wenn Sie ein Plugin installieren**:

217 * Claude Code ruft zuerst eine `github`-, `git-subdir`- oder andere Remote-Quelle ab, wenn Sie das Plugin installieren, also erscheint ein falscher `repo` oder `path` dann.

218 * Ein relativer `source`, dessen Verzeichnis nicht existiert, schlägt auch bei der Installation fehl, mit `Source path does not exist: <path>`.

219 

220<h3 id="test-an-edit-to-a-plugin">

221 Testen Sie eine Bearbeitung eines Plugins

222</h3>

223 

224In [der Anleitung](#create-a-marketplace) haben Sie `my-marketplace` aus einem lokalen Verzeichnis mit einer relativen Pfad-`source` hinzugefügt. Mit diesem Setup liest Claude Code die Plugin-Dateien direkt aus `my-marketplace/plugins/`. Ihre Bearbeitungen treten beim nächsten Sitzungsstart oder wenn Sie `/reload-plugins` in einer Sitzung ausführen, ohne Änderung der Plugin-`version` in Kraft.

225 

226Personen, die aus Ihrem gehosteten Marketplace installieren, erhalten stattdessen eine Kopie im Plugin-Cache. Für wie sie eine neue Version erhalten, siehe [Halten Sie Benutzer auf dem Laufenden](/docs/de/plugins/host-marketplace#keep-users-up-to-date).

227 

228<h3 id="remove-the-marketplace-to-start-over">

229 Entfernen Sie den Marketplace, um von vorne zu beginnen

230</h3>

231 

232Um alles zu entfernen und von vorne zu beginnen, führen Sie `claude plugin marketplace remove my-marketplace` in Ihrer Shell aus. Der Befehl entfernt den Marketplace und deinstalliert seine Plugins.

233 

234<h2 id="host-your-marketplace">

235 Hosten Sie Ihren Marketplace

236</h2>

237 

238Sobald Sie ein Plugin aus dem Marketplace auf Ihrem eigenen Computer installieren können, wie in [Einen Marketplace erstellen](#create-a-marketplace), pushen Sie das Marketplace-Verzeichnis zu einem Git-Host.

239 

240Ihre Teamkollegen führen dann `claude plugin marketplace add <owner>/<repo>` in ihrer Shell für ein GitHub-Repository aus, oder den gleichen Befehl mit der Repository-URL. Sie installieren dann ein Plugin nach Name wie in [der Anleitung](#create-a-marketplace).

241 

242Für privaten Repository-Zugriff, Updates, Versionierung und Umbenennung oder Entfernung von Einträgen siehe [Hosten und Verwalten eines Marketplaces](/docs/de/plugins/host-marketplace).

243 

244<h2 id="next-steps">

245 Nächste Schritte

246</h2>

247 

248* [Hosten und Verwalten eines Marketplaces](/docs/de/plugins/host-marketplace): Wählen Sie einen Host, halten Sie Benutzer auf dem Laufenden und benennen Sie Plugins sicher um oder entfernen Sie sie

249* [Marketplace-Referenz](/docs/de/plugins/marketplace-reference): `marketplace.json`-Felder und Quellentypen

250* [Verwalten Sie Plugins für Ihre Organisation](/docs/de/plugins/org): Erforderlich machen Sie Ihren Marketplace und seine Plugins auf jedem Computer

251* [Schlagen Sie Plugins nach Relevanz vor](/docs/de/plugins/relevance): Lassen Sie Claude Code ein Plugin aus Ihrem Marketplace vorschlagen, wenn eine Sitzung übereinstimmt

plugins/dependencies.md +245 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Plugin-Abhängigkeiten

6 

7> Deklarieren Sie die Plugins, von denen Ihr Plugin abhängt, mit Versionsbereichen wie ^1.2, und erfahren Sie, wie Claude Code diese installiert, auflöst und bereinigt.

8 

9Eine Plugin-Abhängigkeit ist ein anderes Plugin, auf das Ihr Plugin angewiesen ist, z. B. eines, dessen MCP-Server oder Skill es aufruft. Jede Abhängigkeit verfolgt die neueste Version, die sein Marketplace bereitstellt, es sei denn, Sie deklarieren eine Versionsbeschränkung – einen semantischen Versionsbereich wie `^2.0` oder `~2.1.0`, gegen den Sie getestet haben.

10 

11Diese Seite ist für Plugin-Autoren, die Abhängigkeiten in `plugin.json` deklarieren, und für Marketplace-Betreuer, die Releases taggen.

12 

13<Note>

14 Diese Fälle werden auf anderen Seiten behandelt:

15 

16 * **Installation eines Plugins mit Abhängigkeiten**: siehe [Installierte Plugins verwalten](/docs/de/plugins/install#manage-installed-plugins)

17 * **Lesen eines Abhängigkeitsfehlers**: siehe [Abhängigkeitsfehler](/docs/de/plugins/troubleshooting#dependency-errors)

18 * **Deklarieren der npm- und Bun-Pakete, die der eigene Code Ihres Plugins benötigt**: siehe [Node.js-Paketabhängigkeiten](/docs/de/plugins/loading#node-js-package-dependencies)

19</Note>

20 

21Um eine Beschränkung hinzuzufügen, beginnen Sie bei [Abhängigkeit mit Versionsbeschränkung deklarieren](#declare-a-dependency-with-a-version-constraint). Wenn Sie ein Plugin verwalten, von dem andere abhängen, [taggen Sie Ihre Releases](#tag-plugin-releases-for-version-resolution), damit ihre Beschränkungen aufgelöst werden können.

22 

23<h2 id="declare-dependencies">

24 Abhängigkeiten deklarieren

25</h2>

26 

27<span id="decide-whether-to-constrain-dependency-versions" />Ohne Versionsbeschränkung wechselt eine Abhängigkeit zu jedem neuen Release, das sein Marketplace veröffentlicht, wenn Benutzer das nächste Mal aktualisieren. Wenn dieses Release ein MCP-Tool umbenennt, das Ihr Plugin aufruft, bricht Ihr Plugin für alle, die aktualisieren.

28 

29Mit einer Beschränkung wie `~2.1.0` auf eine Abhängigkeit aus einer Git-gestützten Quelle erhalten Benutzer, die Ihr Plugin installiert haben, weiterhin `2.1.x`-Patches der Abhängigkeit und wechseln nie zu `2.2`. Um nach Ihrem eigenen Zeitplan zu aktualisieren, testen Sie gegen ein neueres Release und veröffentlichen dann eine neue Version Ihres Plugins mit einer breiteren Beschränkung.

30 

31<h3 id="declare-a-dependency-with-a-version-constraint">

32 Abhängigkeit mit Versionsbeschränkung deklarieren

33</h3>

34 

35Listen Sie Abhängigkeiten im `dependencies`-Array der `.claude-plugin/plugin.json` Ihres Plugins auf. Das folgende Manifest deklariert eine unversionierte Abhängigkeit und eine beschränkte Abhängigkeit:

36 

37```json .claude-plugin/plugin.json theme={null}

38{

39 "name": "deploy-kit",

40 "version": "3.1.0",

41 "dependencies": [

42 "audit-logger",

43 { "name": "secrets-vault", "version": "~2.1.0" }

44 ]

45}

46```

47 

48Ein Eintrag kann ein String sein: nur der Plugin-Name, wie `"audit-logger"` in diesem Manifest, oder `"name@marketplace"`, um ihn in einem anderen Marketplace aufzulösen. Mit einem einfachen String hängt Ihr Plugin von der Version ab, die der Marketplace dieses Plugins bereitstellt.

49 

50Um eine Versionsbeschränkung festzulegen, verwenden Sie ein Objekt mit diesen Feldern, jeweils ein String:

51 

52| Feld | Beschreibung |

53| :------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

54| `name` | Der Name des Abhängigkeits-Plugins, wie er in seinem Marketplace-Eintrag angezeigt wird. Claude Code schlägt ihn im gleichen Marketplace wie das deklarierte Plugin nach, es sei denn, Sie setzen `marketplace`. Erforderlich. |

55| `version` | Ein [semantischer Versionsbereich](https://github.com/npm/node-semver#ranges) wie `~2.1.0`, `^2.0`, `>=1.4` oder `=2.1.0`. Die Abhängigkeit wird in der höchsten Git-Tag installiert, die diesen Bereich erfüllt, daher muss der Betreuer der Abhängigkeit [Releases taggen](#tag-plugin-releases-for-version-resolution). |

56| `marketplace` | Ein anderer Marketplace, um `name` darin aufzulösen. Eine Allowlist steuert Abhängigkeiten zwischen Marketplaces, beschrieben in [Plugin aus einem anderen Marketplace abhängen](#depend-on-a-plugin-from-another-marketplace). |

57 

58Ein Bereich stimmt nicht mit Vorabversionen wie `2.0.0-beta.1` überein, es sei denn, Sie entscheiden sich mit einem Vorabversions-Suffix wie `^2.0.0-0` dafür.

59 

60<h3 id="bundle-plugins-for-a-team">

61 Plugins für ein Team bündeln

62</h3>

63 

64Um Ingenieuren die Installation eines kuratierten Satzes von Plugins mit einem Befehl zu ermöglichen, veröffentlichen Sie ein Plugin, dessen Manifest einen `name` und ein `dependencies`-Array enthält. Ein Plugin-Manifest benötigt nur `name`, daher ist dies ein gültiges Plugin, und die Installation installiert jede Abhängigkeit.

65 

66Beispielsweise kann ein Plattform-Team rollenspezifische Bundles in einem internen Marketplace veröffentlichen, damit Ingenieure einen `claude plugin install` ausführen, anstatt jedes Plugin separat zu installieren:

67 

68```json .claude-plugin/plugin.json theme={null}

69{

70 "name": "backend-standard",

71 "version": "1.0.0",

72 "description": "Standard plugin set for backend engineers",

73 "dependencies": [

74 "secrets-vault",

75 "deploy-kit",

76 { "name": "db-migrate", "version": "^3.0" },

77 "oncall-runbook"

78 ]

79}

80```

81 

82Um später ein Plugin zum Standard-Set hinzuzufügen, veröffentlichen Sie eine neue `backend-standard`-Version mit der zusätzlichen Abhängigkeit. Wenn der Marketplace nicht [standardmäßig automatisch aktualisiert](/docs/de/plugins/loading#which-marketplaces-and-plugins-auto-update), aktivieren Ingenieure entweder die automatische Aktualisierung für den Marketplace oder aktualisieren manuell:

83 

84* **Automatische Aktualisierung für den Marketplace aktivieren**: Die nächste automatische Aktualisierung verschiebt das Bundle zur neuen Version und installiert alle Abhängigkeiten, die es hinzufügt.

85* **Manuell aktualisieren**: Führen Sie `claude plugin update backend-standard` in einer Shell aus, dann `/reload-plugins` in einer offenen Sitzung, um die neu hinzugefügten Abhängigkeiten zu installieren.

86 

87Für die Schritte auf der Ingenieur-Seite siehe [Plugins aktualisiert halten](/docs/de/plugins/install#keep-plugins-updated).

88 

89Um ein Bundle für alle in einer Organisation bereitzustellen, fügt ein Administrator es zu `enabledPlugins` in verwalteten Einstellungen hinzu. Siehe [Plugins vorinstallieren und erforderlich machen](/docs/de/plugins/org#pre-install-and-require-plugins).

90 

91<h3 id="depend-on-a-plugin-from-another-marketplace">

92 Plugin aus einem anderen Marketplace abhängen

93</h3>

94 

95Standardmäßig installiert Claude Code eine Abhängigkeit nicht aus einem anderen Marketplace als dem des deklarierenden Plugins selbst, es sei denn, der Benutzer hat diese Abhängigkeit bereits installiert und aktiviert im gleichen Bereich. Dieser Standard verhindert, dass ein Marketplace stillschweigend Plugins aus einer Quelle installiert, die der Benutzer nicht überprüft hat.

96 

97Um die Installation zu ermöglichen, fügen Sie den Namen des Ziel-Marketplaces zu `allowCrossMarketplaceDependenciesOn` in der `marketplace.json` des Root-Marketplaces hinzu. Der Root-Marketplace ist derjenige, der das Plugin hostet, das der Benutzer installiert. Nur die Allowlist des Root-Marketplaces gilt.

98 

99Die folgende `marketplace.json` ermöglicht `deploy-kit`, von einem Plugin aus `your-shared-marketplace` abhängig zu sein:

100 

101```json .claude-plugin/marketplace.json theme={null}

102{

103 "name": "your-marketplace",

104 "owner": { "name": "Your Org" },

105 "allowCrossMarketplaceDependenciesOn": ["your-shared-marketplace"],

106 "plugins": [

107 {

108 "name": "deploy-kit",

109 "source": "./deploy-kit",

110 "dependencies": [

111 { "name": "audit-logger", "marketplace": "your-shared-marketplace" }

112 ]

113 }

114 ]

115}

116```

117 

118Wenn `allowCrossMarketplaceDependenciesOn` fehlt oder den Ziel-Marketplace nicht enthält, installiert Claude Code die Abhängigkeit nicht. Wenn die Abhängigkeit im Marketplace-Eintrag deklariert ist, wird die Installation selbst mit einer Nachricht abgelehnt, die mit `Dependency "audit-logger@your-shared-marketplace" (required by deploy-kit@your-marketplace) is in marketplace "your-shared-marketplace", which is not in the allowlist` beginnt und das zu setzende Feld benennt. Wenn sie in `plugin.json` deklariert ist, wird die Installation ohne die Abhängigkeit abgeschlossen und Ihr Plugin kann dann nicht geladen werden.

119 

120Die Allowlist-Prüfung gilt nicht für eine Abhängigkeit, die bereits aktiviert ist. Wenn ein Benutzer `audit-logger` aus `your-shared-marketplace` zuerst selbst installiert, im gleichen Bereich, installiert sich `deploy-kit` dann ohne Änderungen an der Allowlist.

121 

122<h3 id="test-a-plugin-and-its-dependency-locally">

123 Plugin und seine Abhängigkeit lokal testen

124</h3>

125 

126Wenn Sie ein Plugin und das Plugin, von dem es abhängt, gleichzeitig entwickeln, starten Sie Claude Code aus Ihrer Shell und laden beide mit [`--plugin-dir`](/docs/de/plugins/cli-reference#flags-that-load-a-plugin-for-one-session):

127 

128```bash theme={null}

129claude --plugin-dir ./my-dependency --plugin-dir ./my-plugin

130```

131 

132Die lokale Kopie der Abhängigkeit erfüllt den Abhängigkeitseintrag Ihres Plugins, daher müssen Sie die Abhängigkeit nicht aus ihrem Marketplace installieren.

133 

134* **Kein `version` erforderlich**: die lokale `plugin.json` benötigt auch keine `version`, da eine [Versionsbeschränkung](#declare-a-dependency-with-a-version-constraint) nicht gegen eine lokale Kopie überprüft wird.

135* **Einträge, die einen Marketplace benennen**: Ein Eintrag, der einen Marketplace benennt, stimmt auch mit der lokalen Kopie auf Claude Code v2.1.242 oder später überein.

136 

137Bis Sie die Abhängigkeit aus ihrem Marketplace installieren, wird Ihr Plugin nicht mehr geladen, wenn die lokale Kopie deaktiviert oder nicht vorhanden ist:

138 

139* **Sie haben die lokale Kopie deaktiviert**: Ihr Plugin wird beim nächsten Plugin-Laden mit einem Fehler deaktiviert, der mit `is disabled — enable it or remove the dependency` endet. Wenn der Fehler die Abhängigkeit als `<name>@inline` benennt, bezieht sich dieser Bezeichner auf die `--plugin-dir`-Kopie.

140* **Sie haben eine Sitzung ohne das `--plugin-dir`-Flag der Abhängigkeit gestartet**: Der Fehler meldet, dass die Abhängigkeit nicht installiert ist. Übergeben Sie das Flag erneut, oder installieren Sie die Abhängigkeit aus ihrem Marketplace.

141 

142Wenn sich beide Plugins in einem übergeordneten Ordner befinden, können Sie diesen Ordner einmal an `--plugin-dir` übergeben. Wenn der Ordner selbst kein Plugin ist, lädt Claude Code jeden untergeordneten Ordner, der eine `.claude-plugin/plugin.json` hat. Erfordert Claude Code v2.1.265 oder später.

143 

144<h2 id="tag-plugin-releases-for-version-resolution">

145 Plugin veröffentlichen, von dem andere abhängen

146</h2>

147 

148Wenn Sie ein Plugin verwalten, von dem andere Plugins mit einer Versionsbeschränkung abhängen, taggen Sie seine Releases, damit diese Beschränkungen aufgelöst werden können. Eine Beschränkung wird gegen Git-Tags im Repository aufgelöst, das das Plugin hostet. Taggen Sie das Repository, auf das die [Plugin-Quelle](/docs/de/plugins/marketplace-reference#plugin-sources) des Plugins in `marketplace.json` verweist:

149 

150* **`github`-, `url`- oder `git-subdir`-Quelle**: das eigene Repository des Plugins, daher erstellt der Autor des Plugins die Tags

151* **Relativer Pfad wie `./plugins/secrets-vault`**: das Marketplace-Repository, daher erstellt der Marketplace-Betreuer die Tags

152 

153<h3 id="create-a-release-tag">

154 Release-Tag erstellen

155</h3>

156 

157Taggen Sie jedes Release als `<plugin-name>--v<version>`, wobei `<version>` dem `version`-Feld in der `plugin.json` dieses Commits entspricht. Das Plugin-Name-Präfix ermöglicht es einem Marketplace-Repository, mehrere Plugins mit unabhängigen Versionshistorien zu hosten.

158 

159Erstellen Sie das Tag aus dem Plugin-Verzeichnis mit einem konfigurierten `origin`-Remote zum Empfangen des gepushten Tags, mit [`claude plugin tag`](/docs/de/plugins/cli-reference#plugin-tag):

160 

161```bash theme={null}

162claude plugin tag --push

163```

164 

165Der Befehl erstellt den Tag-Namen aus dem Manifest des Plugins. Vor dem Erstellen des Tags führt er diese Prüfungen aus:

166 

167* Validiert das Plugin

168* Prüft, dass `plugin.json` und der Marketplace-Eintrag sich auf die Version einigen, wenn sich das Plugin-Verzeichnis in einem Marketplace-Checkout befindet

169* Erfordert einen sauberen Arbeitsbaum unter dem Plugin-Verzeichnis

170* Lehnt ab, wenn das Tag bereits existiert

171 

172Ein erfolgreicher Durchlauf gibt `Created tag secrets-vault--v2.1.0` aus. Mit `--push` gibt es auch `Pushed to origin` aus. Ohne `--push` gibt es den `git push`-Befehl aus, den Sie selbst ausführen können.

173 

174Übergeben Sie `--dry-run`, um den Plan zu sehen, ohne etwas zu erstellen.

175 

176Die [`claude plugin tag`-Referenz](/docs/de/plugins/cli-reference#plugin-tag) listet die verbleibenden Flags auf.

177 

178Sie können auch `git tag secrets-vault--v2.1.0` direkt ausführen, solange Sie die `version` in `plugin.json` und im Marketplace-Eintrag selbst synchron halten.

179 

180<h3 id="constrain-a-dependency-that-has-a-non-git-source">

181 Abhängigkeit mit nicht-Git-Quelle beschränken

182</h3>

183 

184Tag-basierte Auflösung gilt nur für Git-gestützte Quellen. Für eine Abhängigkeit mit einer `npm`-, `archive`- oder `command`-[Plugin-Quelle](/docs/de/plugins/marketplace-reference#plugin-sources) steuert die Beschränkung nicht, welche Version abgerufen wird. Sie wird immer noch überprüft, wenn das Plugin geladen wird, und das abhängige Plugin wird deaktiviert, wenn die installierte Version sie nicht erfüllt.

185 

186Für `npm`-, `archive`- und `command`-Quellen ist die überprüfte Version die `version` in der `plugin.json` der Abhängigkeit. Setzen Sie eine dort, bevor Sie diese Abhängigkeit beschränken, da eine `plugin.json`, die keine Version setzt, keine Beschränkung erfüllt.

187 

188Claude Code installiert eine Abhängigkeit mit einer `command`-Quelle nie selbst, daher [installieren Benutzer sie zuerst](/docs/de/plugins/marketplace-reference#command-plugin-source). Es führt auch nie den [`headersHelper`](/docs/de/plugins/host-marketplace#authenticate-archive-downloads) einer Abhängigkeit aus, daher installieren Benutzer auch eine Abhängigkeit, deren Marketplace-Eintrag einen setzt, bevor sie Ihr Plugin installieren.

189 

190Neben `claude plugin install` installieren diese Operationen auch alle fehlenden deklarierten Abhängigkeiten, und die `command`- und `headersHelper`-Limits gelten auch für sie:

191 

192* `/reload-plugins`

193* Automatische Aktualisierung des Marketplaces des abhängigen Plugins

194* Erneutes Ausführen von `claude plugin install` auf dem abhängigen Plugin

195* `claude plugin marketplace add`

196 

197<h2 id="how-dependencies-behave-for-your-users">

198 Wie sich Abhängigkeiten für Ihre Benutzer verhalten

199</h2>

200 

201Diese Abschnitte beschreiben, wie Claude Code die Beschränkungen auflöst, überprüft und kombiniert, die Sie deklarieren, sobald Ihr Plugin neben anderen installiert ist.

202 

203<h3 id="how-a-constraint-resolves-against-tags">

204 Wie eine Beschränkung gegen Tags aufgelöst wird

205</h3>

206 

207Wenn ein Benutzer ein Plugin installiert, das `{ "name": "secrets-vault", "version": "~2.1.0" }` deklariert, wird die Abhängigkeit aus dem höchsten `secrets-vault--v`-Tag installiert, der `~2.1.0` im Repository erfüllt, das `secrets-vault` hostet. Wenn kein Tag den Bereich erfüllt, schlägt die Installation fehl oder verwendet die aktuelle Kopie des Marketplaces:

208 

209* **Plugin mit eigenem Repository**: Die Installation schlägt mit einer Nachricht fehl, die `Dependency "secrets-vault@your-marketplace" has no git tag satisfying` enthält.

210* **Plugin, auf das ein relativer Pfad verweist**: Die Installation verwendet stattdessen die aktuelle Kopie des Marketplaces, und die Beschränkung wird überprüft, wenn das Plugin geladen wird. Wenn diese Kopie außerhalb des Bereichs liegt, bleibt das abhängige Plugin deaktiviert und `claude plugin list` zeigt `Requires "secrets-vault@your-marketplace" ~2.1.0, installed 3.0.0`.

211 

212Für ein Plugin, auf das der Marketplace mit einem relativen Pfad verweist, löst ein Marketplace, den Sie als lokalen Ordnerpfad hinzugefügt haben, auch Beschränkungen gegen die Git-Tags dieses Ordners auf, wenn der Ordner ein Git-Repository ist. Dies erfordert Claude Code v2.1.196 oder später. Ein lokaler Ordner, der kein Git-Repository ist, hat keine Tags, daher installiert Claude Code die Abhängigkeit stattdessen aus dem aktuellen Inhalt des Ordners.

213 

214<h3 id="confirm-the-resolved-version">

215 Aufgelöste Version bestätigen

216</h3>

217 

218Um zu bestätigen, welche Version eine Beschränkung aufgelöst hat, führen Sie `claude plugin list` in Ihrer Shell aus. Eine Tag-aufgelöste Abhängigkeit zeigt ihre Version mit einem 12-stelligen Commit-Suffix, wie `2.1.0-8713c5b11005`.

219 

220Beschränkungsprüfungen verwenden die Version des Tags statt der `version` in `plugin.json`, auch wenn `plugin.json` bei diesem Commit hinterherhinkt.

221 

222Wenn Sie ein Tag zu einem anderen Commit verschieben, ruft die nächste Installation den Inhalt dieses Commits ab, anstatt eine veraltete zwischengespeicherte Kopie wiederzuverwenden. Siehe [Versionen und Updates](/docs/de/plugins/loading#versions-and-updates), wie die Version eines Plugins sein Cache-Schlüssel wird.

223 

224<h3 id="combine-constraints-from-several-plugins">

225 Beschränkungen von mehreren Plugins kombinieren

226</h3>

227 

228Wenn mehrere installierte Plugins die gleiche Abhängigkeit beschränken, wird die Abhängigkeit zur höchsten Version aufgelöst, die alle ihre Bereiche erfüllt. Häufige Kombinationen werden wie folgt aufgelöst:

229 

230| Plugin A erfordert | Plugin B erfordert | Ergebnis |

231| :----------------- | :----------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------- |

232| `^2.0` | `>=2.1` | Eine Installation beim höchsten `2.x`-Tag bei oder über `2.1.0`. Beide Plugins werden geladen. |

233| `~2.1` | `~3.0` | Die Installation von Plugin B schlägt mit einer `has conflicting version requirements`-Nachricht fehl. Plugin A und die Abhängigkeit bleiben wie sie waren. |

234| `=2.1.0` | keine | Die Abhängigkeit bleibt bei `2.1.0`. Die automatische Aktualisierung überspringt neuere Versionen, während Plugin A installiert ist. |

235 

236Die automatische Aktualisierung ruft eine beschränkte Abhängigkeit beim höchsten Git-Tag ab, der jeden Bereich des installierten Plugins erfüllt, anstatt bei der neuesten Version des Marketplaces. Wenn sich die Bereiche der installierten Plugins nicht überlappen, lässt die automatische Aktualisierung diese Abhängigkeit bei ihrer aktuellen Version und die Registerkarte `/plugin` **Errors** zeigt einen Eintrag, der das beschränkende Plugin benennt. Wenn sie sich überlappen, aber kein Tag in den Bereich fällt, ruft die automatische Aktualisierung die aktuelle Kopie des Marketplaces ab und überspringt die Aktualisierung, wenn die `version` dieser Kopie außerhalb des Bereichs eines installierten Plugins liegt.

237 

238Wenn ein Benutzer das letzte Plugin deinstalliert, das eine Abhängigkeit beschränkt, wird die Abhängigkeit nicht mehr auf einen Versionsbereich beschränkt und verfolgt bei der nächsten Aktualisierung wieder ihren Marketplace-Eintrag.

239 

240<h2 id="see-also">

241 Siehe auch

242</h2>

243 

244* [`claude plugin prune`](/docs/de/plugins/cli-reference#plugin-prune): Entfernen Sie automatisch installierte Abhängigkeiten, die kein Plugin mehr benötigt

245* [Marketplace hosten](/docs/de/plugins/host-marketplace): Release-Kanäle und Empfehlung anderer Plugins

plugins/host-marketplace.md +458 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Ein Marketplace hosten und verwalten

6 

7> Veröffentlichen Sie einen Plugin-Marketplace, auf den Benutzer zugreifen können, gewähren Sie Zugriff auf einen privaten Marketplace, und geben Sie Updates und Umbenennungen frei, ohne Installationen zu unterbrechen.

8 

9Ein Marketplace zu hosten bedeutet, Ihre `marketplace.json`-Katalogdatei an einem Ort bereitzustellen, an dem andere Benutzer sie mit `/plugin marketplace add` hinzufügen können, ihre Plugins installieren und Ihre Änderungen nach dem Hochladen weiterhin erhalten.

10 

11Diese Seite ist für die Person gedacht, die einen Marketplace betreibt.

12 

13<Note>

14 Diese Fälle werden auf anderen Seiten behandelt:

15 

16 * **Sie haben die Katalogdatei noch nicht geschrieben**: Beginnen Sie mit [Erstellen Sie einen Marketplace](/docs/de/plugins/create-marketplace)

17 * **Sie sind ein Administrator, der Marketplaces auf den Computern Ihrer Organisation anfordert, einschränkt oder vorinstalliert**: Lesen Sie [Verwalten Sie Plugins für Ihre Organisation](/docs/de/plugins/org)

18</Note>

19 

20Beginnen Sie mit [Hosten Sie Ihren Marketplace](#host-your-marketplace), um einen Host auszuwählen und den Befehl festzulegen, den Ihre Benutzer ausführen. Lesen Sie [Halten Sie Benutzer auf dem neuesten Stand](#keep-users-up-to-date), bevor Sie Ihre erste Veröffentlichung durchführen. Lesen Sie [Benennen Sie ein Plugin um oder entfernen Sie es](#rename-or-remove-a-plugin), bevor Sie den `name` eines Plugins ändern.

21 

22<h2 id="host-your-marketplace">

23 Hosten Sie Ihren Marketplace

24</h2>

25 

26Sie können den Marketplace auf GitHub, auf einem anderen Git-Host, als gehostete `marketplace.json`-URL oder in einem Verzeichnis auf einem gemeinsamen Dateisystem hosten. Senden Sie Ihren Benutzern den Befehl zum Hinzufügen für Ihren Host und teilen Sie ihnen mit, was sie auf ihrer Maschine benötigen:

27 

28| Host | Benutzer führen aus, in einer Claude Code-Sitzung | Was Benutzer benötigen |

29| :-------------------------------------------------------------------- | :--------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

30| GitHub | `/plugin marketplace add your-org/your-marketplace` | `git` und für ein privates Repository den unter [Gewähren Sie Zugriff auf einen privaten Marketplace](#grant-access-to-a-private-marketplace) beschriebenen Zugriff |

31| GitLab, Bitbucket, GitHub Enterprise Server oder ein anderer Git-Host | `/plugin marketplace add https://gitlab.example.com/team/plugins.git` | `git` und Zugriff auf den Host von ihrer Maschine. Senden Sie die vollständige URL, da die Kurzform `owner/repo` immer github.com bedeutet |

32| Eine gehostete `marketplace.json`-URL | `/plugin marketplace add https://plugins.example.com/marketplace.json` | HTTPS-Zugriff auf die URL. Benutzer benötigen `git` nicht für den Katalog selbst |

33| Ein Verzeichnis auf einem gemeinsamen Dateisystem | `/plugin marketplace add /Volumes/shared/claude-plugins` | Lesezugriff auf den Pfad |

34 

35Um einen Branch oder Tag eines GitHub- oder Git-URL-Marketplace zu fixieren, teilen Sie Benutzern mit, dass sie `#<ref>` anhängen sollen, wie in `your-org/your-marketplace#stable`. Die [Plugin-Befehls-Referenz](/docs/de/plugins/cli-reference#plugin-marketplace-add) listet jede Form auf, die der Befehl akzeptiert.

36 

37Ein erfolgreiches Hinzufügen gibt `Successfully added marketplace: your-marketplace` aus. Claude Code nimmt diesen Namen aus dem `name`-Feld in Ihrer `marketplace.json`, nicht aus dem Repository-Namen.

38 

39Benutzer installieren dann ein Plugin nach dem `name` des Eintrags und dem `name` des Marketplace, wie in `/plugin install code-formatter@your-marketplace`.

40 

41<h3 id="register-the-marketplace-for-everyone-in-a-repository">

42 Registrieren Sie den Marketplace für alle in einem Repository

43</h3>

44 

45Um den Marketplace mit allen zu teilen, die in einem Repository arbeiten, führen Sie `claude plugin marketplace add your-org/your-marketplace --scope project` dort einmal aus Ihrer Shell aus und committen Sie die `.claude/settings.json`, die sie schreibt. Claude Code registriert dann den Marketplace für jeden Teamkollegen, der den Ordner [vertraut](/docs/de/plugins/org#require-plugins-per-repository).

46 

47<h3 id="avoid-relative-path-entries-in-a-url-hosted-marketplace">

48 Vermeiden Sie relative Pfad-Einträge in einem URL-gehosteten Marketplace

49</h3>

50 

51Wenn Benutzer Ihren Marketplace als bloße `marketplace.json`-URL hinzufügen, lädt Claude Code nur diese Datei herunter. Ein Eintrag in Ihrem `plugins`-Array, dessen `source` ein relativer Pfad wie `./plugins/formatter` ist, schlägt dann bei der Installation mit [`its marketplace entry path does not stay inside the marketplace directory`](/docs/de/plugins/troubleshooting#plugins-with-relative-paths-fail-in-url-based-marketplaces) fehl. Geben Sie jedem Eintrag eine Quelle, die eigenständig abgerufen werden kann, wie ein `github`-Repository oder eine `archive`-URL, oder hosten Sie den Marketplace in einem Git-Repository, damit Claude Code den gesamten Baum klont.

52 

53<h3 id="edit-plugins-in-place-on-a-shared-directory">

54 Bearbeiten Sie Plugins direkt in einem gemeinsamen Verzeichnis

55</h3>

56 

57Wenn Benutzer Ihren Marketplace aus einem gemeinsamen Verzeichnis hinzufügen, liest Claude Code Plugins mit relativen Pfad-Quellen direkt aus diesem Verzeichnis, anstatt sie zu kopieren. Benutzer sehen Ihre Änderungen, wenn sie das nächste Mal eine Sitzung starten oder `/reload-plugins` ausführen, ohne einen Update-Schritt oder eine Versionsbump.

58 

59<h3 id="keep-plugin-files-out-of-git-lfs">

60 Halten Sie Plugin-Dateien aus Git LFS fern

61</h3>

62 

63Halten Sie die Dateien, die Ihre Plugins benötigen, aus [Git LFS](https://git-lfs.com) fern. Wenn Benutzer einen Marketplace hinzufügen, der in einem Git-Repository gehostet ist, oder ein Git-basiertes Plugin installieren, das er auflistet, klont Claude Code diesen Marketplace oder das Plugin-Repository auf ihre Maschine. Der Klon lädt niemals LFS-Inhalte herunter, daher kommen LFS-verfolgte Dateien als Zeiger-Dateien an.

64 

65<h3 id="share-files-within-a-marketplace-with-symlinks">

66 Teilen Sie Dateien innerhalb eines Marketplace mit Symlinks

67</h3>

68 

69Um Dateien zwischen Ihrem Plugin und anderen Teilen desselben Marketplace zu teilen, erstellen Sie symbolische Links in Ihrem Plugin-Verzeichnis. Wenn Claude Code das Plugin in seinen Cache kopiert, behandelt es jeden Symlink danach, wo das Ziel aufgelöst wird:

70 

71* **Innerhalb des eigenen Verzeichnisses des Plugins**: Der Symlink wird als relativer Symlink im Cache beibehalten, sodass er zur Laufzeit weiterhin zum kopierten Ziel aufgelöst wird.

72* **Anderswo innerhalb desselben Marketplace**: Der Symlink wird dereferenziert. Der Inhalt des Ziels wird an seiner Stelle in den Cache kopiert. Dies ermöglicht es dem `skills/`-Verzeichnis eines Meta-Plugins, auf Skills zu verlinken, die von anderen Plugins im Marketplace definiert sind.

73* **Außerhalb des Marketplace**: Der Symlink wird aus Sicherheitsgründen übersprungen.

74 

75Für Plugins, die von einem lokalen Pfad installiert sind, oder von einer [`command`-Quelle](/docs/de/plugins/marketplace-reference#command-plugin-source), deren `mode` der Standard `copy` ist, behält Claude Code nur Symlinks bei, die sich innerhalb des eigenen Verzeichnisses des Plugins auflösen, und überspringt alle anderen.

76 

77Der folgende Befehl erstellt einen Link von innerhalb eines Marketplace-Plugins zu einem gemeinsamen Skill, der von einem Sibling-Plugin definiert ist. Verwenden Sie unter Windows `mklink /D` aus einer erhöhten Eingabeaufforderung oder aktivieren Sie den Entwicklermodus:

78 

79```bash theme={null}

80ln -s ../../shared-plugin/skills/foo ./skills/foo

81```

82 

83<h2 id="distribute-through-organization-settings">

84 Verteilen Sie über Organisationseinstellungen

85</h2>

86 

87In einem Team- oder Enterprise-Plan können Sie den Marketplace auch über [**Organisationseinstellungen > Plugins & Skills**](https://claude.ai/admin-settings/skills?tab=inventory) auf claude.ai verteilen, anstatt ihn an einem Ort zu hosten, an dem Benutzer ihn selbst hinzufügen. Die Organisationssynchronisierung liest das Repository über die GitHub- oder GitLab-Verbindung Ihrer Organisation auf claude.ai, sodass die Git-Anmeldedaten Ihrer Benutzer nicht beteiligt sind.

88 

89Die Organisationssynchronisierung ist strenger in Bezug auf das Repository als `/plugin marketplace add`:

90 

91* **Marketplace-Repository**: Auf github.com und gitlab.com muss es privat oder intern sein

92* **Plugin-Quellen**: Jede Plugin-Quelle muss vom Typ `github`, `url` oder `git-subdir` sein, oder ein [relativer Pfad](/docs/de/plugins/marketplace-reference#relative-path-plugin-source), der mit `./` beginnt

93* **Top-Level `bin/`-Verzeichnis**: claude.ai lehnt ein Plugin ab, das eines hat, und synchronisiert den Rest des Marketplace. Die Fehlermeldung beginnt mit `Plugin contains a top-level bin/ directory`. Halten Sie ausführbare Dateien in einem anderen Verzeichnis, wie `scripts/`, und verweisen Sie auf sie als `${CLAUDE_PLUGIN_ROOT}/scripts/<name>` aus Ihren Hooks oder MCP-Server-Konfigurationen

94 

95Siehe [Verwalten Sie Plugins für Ihre Organisation](https://support.claude.com/en/articles/13837433) für den Admin-Workflow.

96 

97<h2 id="grant-access-to-a-private-marketplace">

98 Gewähren Sie Zugriff auf einen privaten Marketplace

99</h2>

100 

101Wenn ein Benutzer Ihren Marketplace hinzufügt, von ihm installiert oder ihn aktualisiert, führt Claude Code `git` auf seiner Maschine mit deaktivierten interaktiven Eingabeaufforderungen aus und verlässt sich auf alle Anmeldedaten, die diese Maschine bereits hält. Claude Code hat kein eigenes Git-Token, und `marketplace.json` hat kein Feld dafür.

102 

103Sie wählen, ob der Klon über SSH oder HTTPS ausgeführt wird, anhand der Form des Befehls zum Hinzufügen, den Sie Benutzern senden:

104 

105* **GitHub `owner/repo`**: Claude Code prüft `ssh -T git@github.com` und klont über SSH, wenn die Prüfung erfolgreich ist. Wenn die Prüfung fehlschlägt oder der SSH-Klon selbst fehlschlägt, klont es über HTTPS. Benutzer auf Maschinen ohne GitHub SSH-Schlüssel können `CLAUDE_CODE_PLUGIN_PREFER_HTTPS=1` setzen, um die Prüfung zu überspringen und über HTTPS zu klonen.

106* **`git@host:path.git`**: SSH.

107* **`https://example.com/repo.git`**: HTTPS.

108 

109Teilen Sie Benutzern mit, was jedes Protokoll auf ihrer Maschine benötigt:

110 

111* **SSH**: Der Schlüssel muss ohne Passphrase-Eingabeaufforderung funktionieren, zum Beispiel weil er in `ssh-agent` geladen ist. Der Host muss bereits in `known_hosts` sein.

112* **HTTPS**: Claude Code lässt den Git-Credential-Helper des Benutzers aktiviert, verbietet ihm aber zu fragen. Eine Anmeldedaten, die der Helper bereits speichert, funktioniert; eine, die er fragen müsste, schlägt fehl. Auf GitHub speichert `gh auth login` gefolgt von `gh auth setup-git` eine.

113 

114Für einen GitHub Enterprise Server-Host benötigen Benutzer Git-Zugriff auf diesen Host von ihrer Maschine. Siehe [Plugin-Marketplaces auf GHES](/docs/de/github-enterprise-server#plugin-marketplaces-on-ghes) für das, was jede Claude Code-Oberfläche benötigt, um einen GHES-gehosteten Marketplace zu erreichen.

115 

116Wenn Sie stattdessen über **Organisationseinstellungen > Plugins & Skills** auf claude.ai verteilen, sind die Git-Anmeldedaten Ihrer Benutzer nicht beteiligt. Siehe [Verteilen Sie über Organisationseinstellungen](#distribute-through-organization-settings) für welche Plugin-Quellen dort privat sein können.

117 

118<h3 id="serve-users-who-have-no-git-host-account">

119 Bedienen Sie Benutzer, die kein Git-Host-Konto haben

120</h3>

121 

122Benutzer ohne Git-Host-Konto können einen Marketplace, den Sie als `marketplace.json`-URL oder aus einem gemeinsamen Verzeichnis bereitstellen, hinzufügen, aber sie können nur die Plugins installieren, deren Eintrag-Quellen sie auch erreichen können. Ein Eintrag, der auf ein privates `github`-Repository verweist, schlägt immer noch bei der Installation für sie fehl, da Claude Code ihn mit demselben nicht-interaktiven `git` abruft, das es für einen Git-gehosteten Marketplace verwendet.

123 

124Diese Eintrag-Quellen benötigen kein Git-Konto:

125 

126* **`archive`**: eine ZIP-Datei, die über HTTPS heruntergeladen wird. Benutzer benötigen weder `git` noch ein Konto, nur Netzwerkzugriff auf die URL. Erfordert Claude Code v2.1.224 oder später. Fixieren Sie jedes Archiv mit `sha256`, damit Claude Code einen geänderten Download ablehnt. Um Anmeldedaten mit dem Download zu senden, siehe [Authentifizieren Sie Archive-Downloads](#authenticate-archive-downloads).

127* **Ein öffentliches Git-Repository**: Claude Code klont eine öffentliche `url`- oder `git-subdir`-Quelle über HTTPS ohne Anmeldedaten, wenn der Eintrag eine `https://`-URL angibt. Für eine `github`-Quelle oder eine `git-subdir`-Quelle, die als `owner/repo` geschrieben ist, setzen Benutzer ohne GitHub SSH-Schlüssel `CLAUDE_CODE_PLUGIN_PREFER_HTTPS=1`.

128 

129Für ein Team in einem Netzwerk funktioniert auch ein `directory`-Marketplace auf einem gemeinsamen Dateisystem ohne Git-Konten. Benutzer benötigen nur Lesezugriff auf den Pfad.

130 

131<h3 id="what-background-auto-update-does-with-credentials">

132 Was die Hintergrund-Autoupdate mit Anmeldedaten macht

133</h3>

134 

135Hintergrund-Autoupdate ist Claude Codes unbeaufsichtigte Aktualisierung von Marketplaces und installierten Plugins nach dem Start einer Sitzung. Es ist für Ihren Marketplace ausgeschaltet, bis ein Benutzer oder Administrator es einschaltet, wie unter [Halten Sie Benutzer auf dem neuesten Stand](#keep-users-up-to-date) behandelt.

136 

137Wenn es für einen privaten Marketplace eingeschaltet ist, verwendet die Hintergrund-Prüfung auf neue Commits die konfigurierten Git-Credential-Helper des Benutzers und fragt niemals. Jede Art von Remote und Helper gibt ein anderes Ergebnis:

138 

139* **SSH-Remotes**: Ein Schlüssel, der in `ssh-agent` geladen ist, authentifiziert die Prüfung.

140* **HTTPS-Remotes mit gespeicherten Anmeldedaten**: Ein Helper, der gespeicherte Anmeldedaten ohne Aufforderung bereitstellen kann, authentifiziert die Prüfung. Git Credential Manager, der macOS Keychain-Helper und `git-credential-store` funktionieren auf diese Weise, sobald sie Anmeldedaten für den Host halten.

141* **HTTPS-Remotes mit einem Helper, der fragen muss**: Der Helper kann nicht im Hintergrund antworten. Die Aktualisierung schlägt stillschweigend fehl und der vorhandene Checkout bleibt an Ort und Stelle, sodass die Plugins des Benutzers aus dem letzten synchronisierten Zustand weiterhin funktionieren.

142 

143Nach der Prüfung führt Claude Code eines der folgenden aus:

144 

145* **Der Checkout ist auf dem neuesten Stand**: Claude Code lässt ihn, wie er ist.

146* **Die Prüfung findet neue Commits oder schlägt fehl, weil sie den Remote nicht erreichen oder sich nicht authentifizieren kann**: Claude Code klont den Marketplace erneut und ersetzt den vorhandenen Checkout durch den neuen Klon. Wenn dieser Klon fehlschlägt, bleibt der vorhandene Checkout an Ort und Stelle. Der erneute Klon kann [bei großen Repositories nach 120 Sekunden abbrechen](/docs/de/plugins/troubleshooting#git-clone-timed-out-after-120s).

147 

148Um einen privaten Marketplace aktuell zu halten, kann ein Benutzer eines der folgenden tun:

149 

150* **Speichern Sie Anmeldedaten**: Melden Sie sich zuerst beim Credential-Helper an, damit er Anmeldedaten für den Host hält. Für GitHub führen Sie `gh auth login` aus, dann `gh auth setup-git`.

151* **Halten Sie den Checkout bei Fehler**: Wenn der Benutzer `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE=1` setzt, behält Claude Code den vorhandenen Checkout bei, ohne den erneuten Klon zu versuchen, wenn die Hintergrund-Prüfung den Remote nicht erreichen oder sich nicht authentifizieren kann. Plugins funktionieren weiterhin aus dem letzten synchronisierten Zustand.

152 

153Wenn ein Benutzer `GITHUB_TOKEN` oder ein anderes Provider-Token in der Umgebung setzt, authentifiziert das allein nicht die Hintergrund-Prüfung. Ein Token wird durch einen Credential-Helper wirksam, wie den Helper der `gh`-CLI, der `GH_TOKEN` und `GITHUB_TOKEN` liest.

154 

155<h2 id="roll-out-to-a-whole-company">

156 Rollen Sie für ein ganzes Unternehmen aus

157</h2>

158 

159Das Ausrollen eines Plugins für ein Unternehmen beinhaltet Sie als Marketplace-Besitzer, einen Administrator, der verwaltete Einstellungen kontrolliert, und jede Person, die Claude Code verwendet. Sie können das Ausrollen ohne den Administrator durchführen, in welchem Fall jede Person den Marketplace hinzufügt und das Plugin selbst installiert.

160 

161| Wer | Was sie tun | Wo es behandelt wird |

162| :---------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

163| Sie, der Marketplace-Besitzer | Halten Sie den Katalog in einem Repository, das nur das Unternehmen lesen kann, senden Sie den Befehl zum Hinzufügen für Ihren Host, und sagen Sie, was jede Person auf ihrer Maschine benötigt | [Hosten Sie Ihren Marketplace](#host-your-marketplace) und [Gewähren Sie Zugriff auf einen privaten Marketplace](#grant-access-to-a-private-marketplace) |

164| Ein Administrator | Registriert den Marketplace und schaltet seine Plugins für alle mit `extraKnownMarketplaces` und `enabledPlugins` in verwalteten Einstellungen ein, und setzt `autoUpdate` dort | [Fordern Sie einen Marketplace und seine Plugins an](/docs/de/plugins/org#require-a-marketplace-and-its-plugins) und [Legen Sie die Update-Richtlinie fest](/docs/de/plugins/org#set-update-policy) |

165| Jede Person | Benötigt Lesezugriff auf ein privates Git-Repository, mit Anmeldedaten, die bereits auf ihrer Maschine gespeichert sind. Ohne einen Administrator führen sie auch die Befehle zum Hinzufügen und Installieren aus | [Fügen Sie einen privaten Marketplace hinzu](/docs/de/plugins/install#add-a-private-marketplace) |

166 

167Für Personen, die kein Git-Host-Konto haben, behandelt jeder dieser Abschnitte eine Möglichkeit, sie zu erreichen:

168 

169* **Eintrag-Quellen, die kein Git-Konto benötigen**: [Bedienen Sie Benutzer, die kein Git-Host-Konto haben](#serve-users-who-have-no-git-host-account)

170* **Ein vorausgefülltes Plugins-Verzeichnis**: [Seed-Container und CI](/docs/de/plugins/org#seed-containers-and-ci), das auch Benutzer bedient, die kein Git-Host-Konto haben

171* **claude.ai-Organisationseinstellungen**: [Verteilen Sie über Organisationseinstellungen](#distribute-through-organization-settings), wo die Git-Anmeldedaten Ihrer Benutzer nicht beteiligt sind

172 

173<h2 id="keep-users-up-to-date">

174 Halten Sie Benutzer auf dem neuesten Stand

175</h2>

176 

177Ihre Änderungen erreichen Benutzer durch Hintergrund-Autoupdate, sobald es für Ihren Marketplace eingeschaltet ist, oder wenn Benutzer das Plugin selbst aktualisieren. In beiden Fällen erhält ein Benutzer eine neue Kopie eines Plugins nur, wenn sich seine berechnete Version ändert, wie unter [Geben Sie eine neue Version frei](#release-a-new-version) beschrieben.

178 

179<h3 id="turn-on-auto-update">

180 Schalten Sie Autoupdate ein

181</h3>

182 

183Hintergrund-Autoupdate ist für Ihren Marketplace standardmäßig ausgeschaltet, und `marketplace.json` hat kein Feld, um es einzuschalten. Ein Benutzer oder ein Administrator schaltet es ein:

184 

185* **Teilen Sie Benutzern mit, dass sie es einschalten sollen**: Jeder Benutzer geht zu **Marketplaces** in `/plugin`, wählt Ihren Marketplace aus und wählt **Enable auto-update**.

186* **Bitten Sie einen Administrator, es zu setzen**: Wenn ein Administrator `"autoUpdate": true` auf dem `extraKnownMarketplaces`-Eintrag Ihres Marketplace in verwalteten Einstellungen setzt, ist es für alle eingeschaltet, die diese Einstellungen erhalten. Siehe [Legen Sie die Update-Richtlinie fest](/docs/de/plugins/org#set-update-policy).

187 

188Ohne Autoupdate erhalten Benutzer Ihre Änderungen, wenn sie `/plugin marketplace update <name>` in einer Sitzung oder `claude plugin update <plugin>@<name>` in der Shell ausführen.

189 

190Für das, was Benutzer sehen, wenn eine Aktualisierung sie erreicht, siehe [Wenn Autoupdate ausgeführt wird](/docs/de/plugins/loading#when-auto-update-runs).

191 

192<h3 id="release-a-new-version">

193 Geben Sie eine neue Version frei

194</h3>

195 

196Um eine neue Version für Benutzer freizugeben, ändern Sie die `version` des Plugins. Benutzer erhalten eine neue Kopie nur, wenn sich die berechnete Version des Plugins von der unterscheidet, die sie haben. Diese Version kommt zuerst aus `plugin.json`, dann aus dem Marketplace-Eintrag, pro [Versionen und Updates](/docs/de/plugins/loading#versions-and-updates).

197 

198Ein Plugin, das Benutzer [an Ort und Stelle laden](/docs/de/plugins/loading#find-plugins-on-disk) von einem Marketplace, den sie als lokales Verzeichnis hinzugefügt haben, wird nicht durch `version` kontrolliert. Es lädt Ihre aktuellen Dateien bei jedem Sitzungsstart, unabhängig davon, was sein Versions-String sagt.

199 

200Für jede Installation außer einem In-Place-Load oder einem von einer `command`-Quelle erhöhen Sie entweder `version` bei jeder Veröffentlichung oder lassen Sie es weg:

201 

202* **Erhöhen Sie `version` bei jeder Veröffentlichung**: Benutzer bleiben auf ihrer zwischengespeicherten Kopie, bis sich der String ändert. Wenn Sie `"version": "1.0.0"` setzen und neue Commits hochladen, ohne es zu ändern, erhalten Benutzer sie nicht.

203* **Lassen Sie `version` weg**: Benutzer verfolgen stattdessen Ihre Commits. Lassen Sie `version` sowohl aus `plugin.json` als auch aus dem Marketplace-Eintrag weg.

204 

205Setzen Sie `version` nicht in sowohl `plugin.json` als auch dem Marketplace-Eintrag. Wenn Sie das tun, verwendet Claude Code den `plugin.json`-Wert ohne Warnung, und `claude plugin validate` meldet die Nichtübereinstimmung als `Entry declares version "<a>" but <path>/plugin.json says "<b>"`.

206 

207<h3 id="hold-users-on-one-version">

208 Halten Sie Benutzer auf einer Version

209</h3>

210 

211Ein Marketplace bedient eine Version jedes Plugins auf einmal, daher halten Sie Benutzer auf einer Version, indem Sie wählen, worauf jeder Eintrag verweist:

212 

213* **`ref` und `sha` auf dem Plugin-Eintrag**: `ref` benennt einen Branch oder Tag und `sha` benennt einen Commit für eine `github`-, `url`- oder `git-subdir`-Quelle. Siehe [Plugin-Quellen](/docs/de/plugins/marketplace-reference#plugin-sources).

214* **`#<ref>` auf dem Befehl zum Hinzufügen**: Benutzer, die `your-org/your-marketplace#stable` hinzufügen, erhalten diesen Branch oder Tag des Katalogs. Für zwei Release-Linien auf einmal siehe [Führen Sie Release-Kanäle aus](#run-release-channels).

215* **`<plugin>--v<version>`-Tags**: Ein Versionsbereich einer Abhängigkeit wird gegen diese Tags aufgelöst. Siehe [Geben Sie ein Plugin frei, auf das andere angewiesen sind](/docs/de/plugins/dependencies#tag-plugin-releases-for-version-resolution).

216 

217[Geben Sie eine neue Version frei](#release-a-new-version) sagt, wann ein geänderter Eintrag Benutzer erreicht.

218 

219<h3 id="change-the-command-of-a-command-source">

220 Ändern Sie den Befehl einer Befehl-Quelle

221</h3>

222 

223Wenn Sie den `command` einer [`command`-Quelle](/docs/de/plugins/marketplace-reference#command-plugin-source) ändern oder seinen `mode` wechseln, muss jeder Benutzer den neuen Befehl akzeptieren, bevor Claude Code ihn ausführt. Claude Code führt nur den genauen Befehl aus, den ein Benutzer akzeptiert hat, als er das Plugin installiert oder zuletzt aktualisiert hat.

224 

225Nachdem die Kopie des Marketplace eines Benutzers die Änderung aufgegriffen hat, sieht dieser Benutzer eines der folgenden:

226 

227* **Keine weiteren Hintergrund-Läufe**: Der [einmalige Lauf pro Sitzung](/docs/de/plugins/loading#when-a-command-source-re-runs) des Befehls stoppt für diesen Benutzer, sodass die neue Ausgabe des Tools ihn nicht erreicht.

228* **Ein Eintrag in der Registerkarte `/plugin` Errors**: Der Eintrag zeigt den neuen Befehl und den `claude plugin update`-Befehl zum Ausführen.

229 

230Teilen Sie Benutzern mit, dass sie den `claude plugin update`-Befehl ausführen sollen, den dieser Eintrag zeigt, in einem Terminal. Claude Code zeigt ihnen den neuen Befehl und bittet sie, ihn zu akzeptieren.

231 

232<h2 id="run-release-channels">

233 Führen Sie Release-Kanäle aus

234</h2>

235 

236Um stabile und Early-Access-Tracks anzubieten, hosten Sie zwei Marketplaces, deren Einträge auf verschiedene Refs desselben Plugins verweisen, und lassen Sie jeden Benutzer den hinzufügen, den er möchte. Claude Code hat kein Release-Kanal-Konzept, und ein Marketplace bedient eine Version jedes Plugins auf einmal.

237 

238Geben Sie den zwei `marketplace.json`-Dateien unterschiedliche `name`-Werte. Claude Code identifiziert einen Marketplace anhand seines `name`, daher kann ein Benutzer nicht zwei Marketplaces mit demselben Namen registriert haben.

239 

240Mit diesen zwei Katalogen installieren Benutzer, die `stable-tools` hinzufügen, `code-formatter` aus dem `stable`-Branch, und Benutzer, die `latest-tools` hinzufügen, installieren ihn aus `latest`:

241 

242```json theme={null}

243{

244 "name": "stable-tools",

245 "owner": { "name": "Your Org" },

246 "plugins": [

247 { "name": "code-formatter", "source": { "source": "github", "repo": "your-org/code-formatter", "ref": "stable" } }

248 ]

249}

250```

251 

252```json theme={null}

253{

254 "name": "latest-tools",

255 "owner": { "name": "Your Org" },

256 "plugins": [

257 { "name": "code-formatter", "source": { "source": "github", "repo": "your-org/code-formatter", "ref": "latest" } }

258 ]

259}

260```

261 

262Geben Sie den zwei Refs unterschiedliche `plugin.json`-Versionen, oder lassen Sie `version` weg, damit der Commit SHA sie unterscheidet. Updates werden durch Vergleich von Versionen erkannt, daher lässt ein Ref, das sich ohne Versionsänderung bewegt, Benutzer auf der zwischengespeicherten Kopie.

263 

264Um die Kanäle Benutzergruppen zuzuweisen, anstatt Benutzer wählen zu lassen, gibt ein Administrator jeder Gruppe den passenden `extraKnownMarketplaces`-Eintrag, wie unter [Legen Sie die Update-Richtlinie fest](/docs/de/plugins/org#set-update-policy) beschrieben.

265 

266<h2 id="rename-or-remove-a-plugin">

267 Benennen Sie ein Plugin um oder entfernen Sie es

268</h2>

269 

270Der `name` eines Plugins ist sein Identifier. Benutzer verweisen darauf in den Einstellungsschlüsseln `enabledPlugins` und `pluginConfigs` und in `/plugin install`, daher bricht das Ändern davon jede vorhandene Installation.

271 

272Um das Label zu ändern, das Benutzer in `/plugin` sehen, ohne etwas zu unterbrechen, setzen Sie `displayName` in `plugin.json` und halten Sie `name` unverändert.

273 

274<h3 id="migrate-users-with-a-renames-map">

275 Migrieren Sie Benutzer mit einer Umbenennungs-Map

276</h3>

277 

278Wenn Sie einen `name` ändern müssen, fügen Sie eine Top-Level-`renames`-Map zu `marketplace.json` hinzu, damit Claude Code vorhandene Benutzer migriert, anstatt [`Plugin "<name>" not found in marketplace`](/docs/de/plugins/troubleshooting#plugin-not-found-in-marketplace) zu melden. Tun Sie dasselbe, wenn Sie einen Eintrag aus `plugins` entfernen. Die automatische Migration erfordert Claude Code v2.1.193 oder später.

279 

280Ordnen Sie jeden früheren Namen seinem aktuellen Namen zu, oder zu `null`, wenn das Plugin weg ist. Dieser Marketplace benennt `formatter` in `code-formatter` um und verzeichnet, dass `legacy-linter` entfernt wurde:

281 

282```json theme={null}

283{

284 "name": "your-marketplace",

285 "owner": { "name": "Your Org" },

286 "plugins": [

287 { "name": "code-formatter", "source": "./plugins/code-formatter" }

288 ],

289 "renames": {

290 "formatter": "code-formatter",

291 "legacy-linter": null

292 }

293}

294```

295 

296Nachdem Sie hochgeladen haben, sieht ein Benutzer, der den alten Namen noch aktiviert hat, eines dieser Ergebnisse:

297 

298* **Umbenannter Eintrag**: Das Plugin lädt unter seinem neuen Namen. `claude plugin list` und die Details des Plugins unter `/plugin` zeigen `Renamed to "code-formatter" in the "your-marketplace" marketplace` einmal, und Claude Code schreibt den alten Schlüssel in den neuen in `enabledPlugins` und `pluginConfigs` in den Benutzer-, Projekt- und lokalen Einstellungsbereichen um.

299* **`null`-Eintrag**: Der alte Schlüssel wird aus diesen Bereichen gelöscht und der Benutzer sieht `Removed from the "your-marketplace" marketplace`.

300* **In verwalteten Einstellungen aktiviert**: Das Plugin lädt immer noch unter seinem neuen Namen, aber Claude Code kann verwaltete Einstellungen nicht umschreiben, daher wiederholt sich die Benachrichtigung, bis ein Administrator `enabledPlugins` dort aktualisiert.

301 

302Für einen Marketplace, den Benutzer aus einem Git-Repository oder einer URL hinzugefügt haben, meldet ein umbenanntes Plugin [`Plugin "<name>" not cached at <path>`](/docs/de/plugins/troubleshooting#plugin-not-cached-at), bis der Benutzer `/plugin install code-formatter@your-marketplace` einmal in einer Sitzung ausführt.

303 

304Behandeln Sie `renames` als Nur-Anhängen-Verlauf. Halten Sie alte Einträge, nachdem alle migriert sind. Wenn Sie erneut umbenennen, fügen Sie einen zweiten Eintrag hinzu, anstatt den ersten zu bearbeiten, da Claude Code der Kette vom ältesten Namen folgt.

305 

306Führen Sie in Ihrer Shell `claude plugin validate .` aus, nachdem Sie die Map bearbeitet haben. Es lehnt eine Kette ab, die zirkuliert oder die irgendwo anders als `null` oder einem Namen in `plugins` endet, mit `renames.<name>: chain does not resolve`.

307 

308<h3 id="uninstall-removed-plugins-from-users’-machines">

309 Deinstallieren Sie entfernte Plugins von den Maschinen der Benutzer

310</h3>

311 

312Um ein entferntes Plugin von den Maschinen der Benutzer zu deinstallieren, anstatt eine Kopie zu hinterlassen, setzen Sie `"forceRemoveDeletedPlugins": true` auf der Top-Level von `marketplace.json`. Ohne das Feld bleibt ein entferntes Plugin installiert und meldet `Plugin "<name>" not found in marketplace`, wenn eine Sitzung es lädt. Mit ihm führt Claude Code bei jedem Sitzungsstart folgendes aus:

313 

3141. Vergleicht, was Benutzer von Ihrem Marketplace installiert haben, gegen die Einträge und die `renames`-Map, und behandelt jedes Plugin, das weder aufgelistet noch umbenannt ist, als entfernt.

3152. Deinstalliert jedes entfernte Plugin aus den Benutzer-, Projekt- und lokalen Bereichen. Plugins, die nur verwaltete Einstellungen installiert haben, bleiben an Ort und Stelle.

3163. Listet jedes entfernte Plugin unter einer **Flagged**-Überschrift in `/plugin` mit dem Status `Removed from marketplace` auf.

317 

318<h2 id="authenticate-archive-downloads">

319 Authentifizieren Sie Archive-Downloads

320</h2>

321 

322Um einen [`archive`](/docs/de/plugins/marketplace-reference#archive-plugin-source)-Download zu authentifizieren, wie einen Download aus einer privaten Registry, setzen Sie die HTTP-Header, die Claude Code damit sendet. Sie können `headers` an einem dieser Orte setzen:

323 

324* **Die `url`-Quelle des Marketplace**: Die `url`-Quelle, von der Sie den Marketplace registriert haben, wie ein [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces)-Eintrag.

325* **Der Eintrag des Plugins**: Auf Claude Code v2.1.238 oder später können Sie es stattdessen auf dem `marketplace.json`-Eintrag des Plugins setzen, neben `source`.

326 

327Setzen Sie an beiden Orten einen `headersHelper`-Befehl anstelle von `headers`, wenn der Wert kurzlebig ist, wie ein Token, das Ihre Registry auf Anfrage generiert. Claude Code führt den Befehl aus und sendet das JSON-Objekt, das er druckt, als Header dieses Ortes. Erfordert Claude Code v2.1.238 oder später.

328 

329Die [Marketplace-Referenz](/docs/de/plugins/marketplace-reference#plugin-entries) listet die `headers`- und `headersHelper`-Eintrag-Felder auf.

330 

331Der Ort, den Sie wählen, entscheidet, welche Downloads die Header erhalten und wann Claude Code den Befehl ausführt:

332 

333| Ort | Downloads, die die Header erhalten | Wann Claude Code einen dort gesetzten `headersHelper` ausführt |

334| :----------------------- | :-------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

335| Marketplace `url`-Quelle | Archive-Downloads auf dem Ursprung der Marketplace-URL, was dasselbe Schema, Host und Port bedeutet | Vor jedem Abruf der `marketplace.json` des Marketplace und vor jedem Archive-Download auf diesem Ursprung. Claude Code verwendet die Ausgabe eines Laufs bis zu 60 Sekunden wieder |

336| Plugin-Eintrag | Nur der Download dieses Eintrags | Nur wenn ein Benutzer dieses eine Plugin selbst installiert oder aktualisiert und [den Befehl akzeptiert](#how-users-accept-a-headershelper-command) |

337 

338Wo beide Orte einen Header desselben Namens setzen, sendet Claude Code den Wert des Eintrags. Innerhalb eines Ortes überschreibt ein Header, den der Befehl druckt, einen Header desselben Namens, der in `headers` aufgelistet ist.

339 

340<h3 id="add-a-headershelper-to-a-plugin-entry">

341 Fügen Sie einen headersHelper zu einem Plugin-Eintrag hinzu

342</h3>

343 

344Dieser Eintrag setzt `headersHelper` neben `source`. Er setzt auch [`"strict": false`](/docs/de/plugins/marketplace-reference#strict-mode), das Claude Code von einem `marketplace.json`-Eintrag erfordert, der `headersHelper` setzt:

345 

346```json theme={null}

347{

348 "name": "my-plugin",

349 "description": "Formatting commands for internal services",

350 "strict": false,

351 "source": {

352 "source": "archive",

353 "url": "https://registry.example.com/plugins/my-plugin-2.1.0.zip"

354 },

355 "headersHelper": "/opt/bin/mint-registry-token.sh"

356}

357```

358 

359Um den Eintrag zu überprüfen, führen Sie `claude plugin install my-plugin@your-marketplace` in Ihrer Shell aus. Claude Code zeigt Ihnen den Befehl und die Archive-URL und lädt die ZIP herunter, nachdem Sie akzeptieren.

360 

361<h3 id="write-the-headershelper-command">

362 Schreiben Sie den headersHelper-Befehl

363</h3>

364 

365Ob Sie `headersHelper` auf einer `url`-Quelle eines Marketplace oder auf einem Plugin-Eintrag setzen, schreiben Sie den Befehl, um diese Anforderungen zu erfüllen:

366 

367* **Befehlstext**: Höchstens 500 Zeichen druckbares ASCII, ohne einen Lauf von vier oder mehr Leerzeichen.

368* **Ausgabe**: Drucken Sie ein JSON-Objekt von Header-Namen und String-Werten auf stdout, dann beenden Sie 0 innerhalb von 10 Sekunden.

369* **Shell und Arbeitsverzeichnis**: Claude Code führt den Befehl durch `sh` oder durch `cmd.exe` unter Windows aus. Das Arbeitsverzeichnis ist das Konfigurationsverzeichnis, das `~/.claude` oder [`CLAUDE_CONFIG_DIR`](/docs/de/env-vars#variables) ist. Geben Sie einen absoluten Pfad oder einen Befehl auf `PATH` an, da ein relativer Pfad gegen dieses Verzeichnis aufgelöst wird, nicht gegen das Projekt des Benutzers.

370* **Variablen, die Claude Code entfernt**: Wenn der Befehl in einem `marketplace.json`-Eintrag oder in einer Projekt-`.claude/settings.json` oder `.claude/settings.local.json` gesetzt ist, entfernt Claude Code aus der Umgebung jede Variable, deren Name wie eine Anmeldedaten aussieht, nach der [gleichen Regel, die es auf einen MCP `headersHelper` anwendet](/docs/de/mcp#which-variables-a-helper-can-read). `ANTHROPIC_API_KEY` und `MY_REGISTRY_TOKEN` werden beide entfernt, daher lesen Sie die Anmeldedaten aus einer Datei oder einem Credential-Store. Diese Entfernung gilt nicht für einen Befehl, der in Benutzereinstellungen, einer `--settings`-Datei oder verwalteten Einstellungen gesetzt ist.

371* **Variablen, die Claude Code setzt**: `CLAUDE_CODE_MARKETPLACE_URL` und `CLAUDE_CODE_MARKETPLACE_NAME` für den Befehl einer `url`-Quelle, und `CLAUDE_CODE_PLUGIN_NAME` und `CLAUDE_CODE_PLUGIN_ARCHIVE_URL` für den Befehl eines Eintrags. `CLAUDE_CODE_MARKETPLACE_NAME` ist beim ersten Abruf nach dem Hinzufügen eines Marketplace durch URL nicht gesetzt, da dieser Abruf der ist, der den Namen liefert.

372 

373Ein Befehl, der ein Bearer-Token prägt, druckt ein Objekt wie dieses:

374 

375```json theme={null}

376{"Authorization": "Bearer eyJhbGciOiJSUzI1NiJ9"}

377```

378 

379<h3 id="when-claude-code-skips-a-headershelper-command-or-drops-its-output">

380 Wenn Claude Code einen headersHelper-Befehl überspringt oder seine Ausgabe ablegt

381</h3>

382 

383Ein `headersHelper`-Befehl wird nicht ausgeführt, oder Header aus `headers` oder aus der Ausgabe des Befehls werden abgelegt, wenn eines der folgenden zutrifft:

384 

385* **Befehl schlägt fehl**: Wenn der Befehl mit Nicht-Null beendet wird, über 10 Sekunden läuft oder etwas anderes als ein JSON-Objekt von String-Werten druckt, findet der Abruf oder Download, für den der Befehl ausgeführt wurde, nicht statt.

386* **Marketplace-URL beginnt nicht mit `https://`**: Der Befehl dieser `url`-Quelle wird nicht ausgeführt, und Anfragen tragen nur die in ihrem `headers`-Feld aufgelisteten Header.

387* **Umleitung verlässt den Ursprung**: Wenn ein Download von der Archive-URL-Ursprung umgeleitet wird, trägt die umgeleitete Anfrage keine `headers`-Werte oder Befehlsausgabe von der Marketplace `url`-Quelle oder dem Plugin-Eintrag.

388* **Eintrag setzt einen Routing- oder Identity-Header**: Claude Code legt Request-Routing- und Client-Identity-Namen wie `Host`, `Cookie` und `X-Forwarded-*` aus einem Eintrag `headers` und Befehlsausgabe ab und behält Authentifizierungsnamen wie `Authorization`. Jeder `marketplace.json`-Eintrag wird auf diese Weise gefiltert. Für einen Inline-Plugin-Eintrag in Einstellungen siehe [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces).

389* **Befehl in den Einstellungen eines `--add-dir`-Verzeichnisses gesetzt**: Der Befehl wird ignoriert, auf einer `url`-Quelle und auf einem [Inline-Plugin-Eintrag](/docs/de/settings-reference#extraknownmarketplaces) gleichermaßen, und nur die `headers` dieser Datei werden gesendet.

390* **Verwaltete Einstellungen blockieren den Befehl**: Das Setzen von [`disableCommandPluginSources`](/docs/de/settings-reference#disablecommandpluginsources) auf `true` blockiert `headersHelper`-Befehle, und [`allowManagedHooksOnly`](/docs/de/settings-reference#allowmanagedhooksonly) blockiert sie auch, es sei denn, `disableCommandPluginSources` ist explizit `false`. Unter beiden Blöcken führt Claude Code den Befehl immer noch für einen Marketplace aus, den verwaltete Einstellungen selbst deklarieren.

391 

392<h3 id="how-users-accept-a-headershelper-command">

393 Wie Benutzer einen headersHelper-Befehl akzeptieren

394</h3>

395 

396Ein Benutzer akzeptiert den Befehl eines Plugin-Eintrags jedes Mal, wenn er dieses eine Plugin selbst installiert oder aktualisiert. Sie tun das aus der eigenen Ansicht des Plugins in `/plugin` oder mit `claude plugin install` oder `claude plugin update`. Claude Code zeigt den Befehl und die Archive-URL und führt den Befehl nur aus, nachdem der Benutzer akzeptiert.

397 

398In einer nicht-interaktiven Shell übergeben Sie [`--yes`](/docs/de/plugins/cli-reference#plugin-install), um den Befehl zu akzeptieren. Um nur den Befehl zu akzeptieren, den ein vorheriger `--json`-Lauf angezeigt hat, übergeben Sie [`--accept-command`](/docs/de/plugins/cli-reference#plugin-install) mit dem `sha256`, den der Lauf gemeldet hat.

399 

400Claude Code führt nur den Befehl aus, den es zeigte, für die Archive-URL, die es zeigte. Wenn sich der Befehl oder die Archive-URL des Eintrags dazwischen geändert haben, weigert sich Claude Code zu installieren oder zu aktualisieren. Eine Änderung nur in der Abfragezeichenfolge zählt nicht.

401 

402<h3 id="installs-and-updates-that-refuse-the-command-instead-of-asking">

403 Installationen und Updates, die einen Befehl ablehnen, anstatt zu fragen

404</h3>

405 

406Bei jeder Operation außer einer Einzelplugin-Installation oder -Aktualisierung führt Claude Code den Befehl eines Eintrags nicht aus und lädt sein Archiv nicht herunter. Das Plugin bleibt auf seiner installierten Version oder bleibt deinstalliert, und der Benutzer sieht eines dieser Ergebnisse:

407 

408* **Installation mehrerer Plugins auf einmal, von einer Plugin-Suggestion oder als Abhängigkeit eines anderen Plugins**: Claude Code weigert das Plugin, das den Befehl hat, und leitet den Benutzer zur eigenen Ansicht dieses Plugins in `/plugin`. Die anderen Plugins in einer Massen-Installation installieren immer noch. Ein Plugin, das vom abgelehnten Plugin abhängt, schlägt bei der Installation fehl, bis der Benutzer das abgelehnte Plugin selbst installiert.

409* **Hintergrund-Autoupdate oder Sitzungsstart für ein Plugin, dessen Archiv nie heruntergeladen wurde**: Claude Code listet das Plugin in der Registerkarte `/plugin` Errors auf, damit der Benutzer weiß, dass er es selbst installieren oder aktualisieren muss.

410 

411<h3 id="when-a-marketplace-url-sources-command-runs">

412 Wenn der Befehl einer Marketplace `url`-Quelle ausgeführt wird

413</h3>

414 

415Sie deklarieren den `headersHelper` einer Marketplace `url`-Quelle in einer Einstellungsdatei, wie einem [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces)-Eintrag, anstatt im Katalog, den der Marketplace veröffentlicht. Claude Code fragt daher nicht den Benutzer, ihn bei jeder Installation oder Aktualisierung zu akzeptieren. Stattdessen entscheidet die Einstellungsdatei, die ihn deklariert, wann Claude Code ihn ausführt:

416 

417| Einstellungsdatei | Wann Claude Code den Befehl ausführt |

418| :----------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

419| Benutzereinstellungen, eine `--settings`-Datei oder eine verwaltete Einstellungsdatei auf der Maschine | Ohne zu fragen, einschließlich während einer Hintergrund-Marketplace-Aktualisierung |

420| Eine Projekt-`.claude/settings.json` oder `.claude/settings.local.json` | Nur nachdem der Benutzer den [Workspace-Trust-Dialog](/docs/de/permissions#what-runs-before-you-trust-a-folder) für diesen Ordner selbst akzeptiert. Eine `-p`- oder SDK-Sitzung zählt nicht als Akzeptanz, und auch nicht das Vertrauen, das einem übergeordneten Ordner gewährt wird |

421| Server-verwaltete Einstellungen | In einer interaktiven Sitzung, nur nachdem der Benutzer die bereitgestellten Einstellungen im [Sicherheitsgenehmigungsdialog](/docs/de/server-managed-settings#security-approval-dialogs) genehmigt |

422 

423Für einen [Inline-Plugin-Eintrag](/docs/de/settings-reference#extraknownmarketplaces) in einer dieser Dateien erfordert Claude Code das gleiche Ordner-Vertrauen oder die gleiche Einstellungsgenehmigung wie für einen Marketplace-Level-Befehl in dieser Datei, und der Benutzer akzeptiert auch den Befehl des Eintrags bei jeder Installation oder Aktualisierung.

424 

425<h2 id="depend-on-and-recommend-other-plugins">

426 Hängen Sie von anderen Plugins ab und empfehlen Sie sie

427</h2>

428 

429Ein Eintrag kann Abhängigkeiten von anderen Plugins deklarieren.

430 

431* **Versionsbereiche**: Eine Abhängigkeit kann einen Semver-Bereich tragen.

432* **Cross-Marketplace-Abhängigkeiten**: Eine Abhängigkeit von einem anderen Marketplace installiert nur, wenn Ihr Marketplace diesen Marketplace in `allowCrossMarketplaceDependenciesOn` auflistet.

433 

434Für Versionsbereiche, die `<plugin>--v<version>`-Git-Tag-Konvention, gegen die sie aufgelöst werden, und Cross-Marketplace-Vertrauen, siehe [Plugin-Abhängigkeiten](/docs/de/plugins/dependencies).

435 

436Um Claude Code zu haben, ein Plugin zu suggerieren, wenn ein Projekt es passt, fügen Sie einen `relevance`-Block zum Eintrag mit den Signalen hinzu, die das Projekt identifizieren. Benutzer sehen Suggestionen aus Ihrem Marketplace nur, wenn ein Administrator ihn in `pluginSuggestionMarketplaces` auflistet. Für die Signale und den Aktivierungsschritt siehe [Plugin-Relevanz](/docs/de/plugins/relevance).

437 

438<h2 id="work-around-what-a-marketplace-can’t-do">

439 Arbeiten Sie um, was ein Marketplace nicht kann

440</h2>

441 

442Einige Dinge, die Besitzer anfordern, haben kein Feld in `marketplace.json`. Hier ist die nächste Option für jede:

443 

444* **Beschränken Sie, was sonst Benutzer installieren**: Die Marketplace-Zulassungsliste ist eine verwaltete Einstellung, `strictKnownMarketplaces`. Siehe [Beschränken Sie, was Benutzer installieren können](/docs/de/plugins/org#restrict-what-users-can-install).

445* **Installieren oder aktivieren Sie ein Plugin, ohne dass der Benutzer fragt**: Kein Eintrag-Feld installiert ein Plugin. Verwaltete `enabledPlugins` tut das für eine Flotte; siehe [Vorinstallieren und erfordern Sie Plugins](/docs/de/plugins/org#pre-install-and-require-plugins).

446* **Zeigen Sie verschiedene Einträge verschiedenen Benutzern**: Einträge tragen kein Audience-Feld, und jeder Benutzer, der den Marketplace hinzufügt, sieht den gesamten Katalog. Hosten Sie separate Marketplaces für separate Audiences.

447* **Markieren Sie ein Plugin als veraltet**: Es gibt keinen Veraltungszustand. Die Option ist, den Eintrag zu entfernen, seinen Namen in `renames` auf `null` zu ordnen und optional `forceRemoveDeletedPlugins` zu setzen.

448* **Schalten Sie Autoupdate für Ihre Benutzer ein**: Jeder Benutzer schaltet es unter **Marketplaces** in `/plugin` ein, oder ein Administrator setzt `autoUpdate` in verwalteten Einstellungen. Siehe [Schalten Sie Autoupdate ein](#turn-on-auto-update).

449* **Tragen Sie Git-Anmeldedaten**: Kein Marketplace-Feld hält ein Git-Token. Der Zugriff auf einen Git-gehosteten Marketplace oder ein Plugin folgt dem Git-Setup des Benutzers, pro [Gewähren Sie Zugriff auf einen privaten Marketplace](#grant-access-to-a-private-marketplace). Für `archive`-Quellen kann ein Eintrag stattdessen [`headers` oder `headersHelper`](#authenticate-archive-downloads) setzen.

450 

451<h2 id="next-steps">

452 Nächste Schritte

453</h2>

454 

455* [Marketplace-Referenz](/docs/de/plugins/marketplace-reference): `marketplace.json`-Felder, Quelltypen und Validierungsmeldungen

456* [Verwalten Sie Plugins für Ihre Organisation](/docs/de/plugins/org): Fordern Sie an, beschränken Sie oder seeden Sie Ihren Marketplace in den Maschinen Ihrer Organisation

457* [Plugin-Abhängigkeiten](/docs/de/plugins/dependencies): Taggen Sie Releases, damit Plugins, die von Ihrem abhängen, Versionen auflösen können

458* [Beheben Sie Probleme mit Plugins](/docs/de/plugins/troubleshooting): Die Fehler, die Ihre Benutzer beim Hinzufügen oder Aktualisieren von Ihrem Marketplace sehen

plugins/install.md +418 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Plugins installieren und verwalten

6 

7> Installieren Sie Claude Code-Plugins aus einem Marketplace auf jeder Oberfläche, die Sie verwenden, wählen Sie einen Installationsbereich aus, und aktualisieren oder entfernen Sie sie später.

8 

9Das Installieren eines Plugins fügt seine Skills, Agents, Hooks und MCP-Server zu Claude Code auf Ihrem Computer hinzu.

10 

11Diese Seite ist für alle gedacht, die Plugins auf ihrem eigenen Computer oder Konto verwenden, ob im Terminal, in der Desktop-App, einer IDE oder einer Cloud-Sitzung: Sie behandelt Installation, Bereichswahl, Hinzufügen von Marketplaces und Aktualisierung von Plugins.

12 

13<Note>

14 Diese Fälle werden auf anderen Seiten behandelt:

15 

16 * **Sie verwenden claude.ai Chat oder Cowork, nicht Claude Code**: siehe [Plugins auf claude.ai und in Cowork](https://claude.com/docs/plugins/overview)

17 * **Claude Code hat einen Fehler ausgegeben**: finden Sie ihn unter [Plugins fehlerbeheben](/docs/de/plugins/troubleshooting)

18</Note>

19 

20Beginnen Sie mit [Plugin installieren](#install-a-plugin). Wenn Ihnen jemand einen Installationsbefehl gesendet hat, dessen `@`-Name nicht `claude-plugins-official` ist, [fügen Sie zuerst diesen Marketplace hinzu](#add-a-marketplace).

21 

22<h2 id="install-a-plugin">

23 Plugin installieren

24</h2>

25 

26Als Beispiel installiert dieser Abschnitt [`commit-commands`](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/commit-commands) aus [Anthropics offiziellem Marketplace](/docs/de/plugins/anthropic-marketplaces), das Befehle zum Committen, Pushen und Öffnen von Pull Requests hinzufügt.

27 

28Die gleichen Schritte installieren jedes andere Plugin: ersetzen Sie seinen Namen und den Namen seines Marketplace überall dort, wo `commit-commands` und `claude-plugins-official` erscheinen. Wenn dieses Plugin aus einem anderen Marketplace stammt, [fügen Sie zuerst den Marketplace hinzu](#add-a-marketplace).

29 

30Wählen Sie den Tab für den Ort, an dem Sie Claude Code ausführen.

31 

32<Tabs>

33 <Tab title="Terminal">

34 Starten Sie Claude Code mit `claude` in Ihrem Projekt, dann:

35 

36 <Steps>

37 <Step title="Öffnen Sie die Details des Plugins mit dem Installationsbefehl">

38 Führen Sie `/plugin install` mit dem Namen des Plugins und des Marketplace aus. In einer Sitzung installiert dieser Befehl nicht sofort: Er öffnet das `/plugin`-Panel mit den Details dieses Plugins, damit Sie es überprüfen und zuerst einen Bereich wählen können.

39 

40 ```text theme={null}

41 /plugin install commit-commands@claude-plugins-official

42 ```

43 

44 Um stattdessen zu durchsuchen, führen Sie `/plugin` ohne Plugin-Namen aus: Das Panel öffnet sich auf der Registerkarte **Discover**, die Plugins aus jedem hinzugefügten Marketplace auflistet, und Sie können eingeben, um zu suchen, dann **Enter** auf einem Plugin drücken, um seine Details zu öffnen.

45 </Step>

46 

47 <Step title="Überprüfen Sie, was das Plugin hinzufügt">

48 Der Detailbereich zeigt die Beschreibung des Plugins. Es kann auch anzeigen:

49 

50 * **Will install**: die Befehle, Agents, Skills, Hooks und MCP- und LSP-Server, die das Plugin hinzufügt.

51 * **Last updated**: wird für ein Plugin im offiziellen Marketplace von Anthropic angezeigt.

52 * **Context cost**: für ein Plugin im offiziellen Marketplace von Anthropic zwei Token-Schätzungen. **Every turn** ist das, was das Plugin zu jeder Nachricht hinzufügt, die Sie senden, und **When invoked** ist das, was seine Skills und Agents hinzufügen, sobald Claude sie lädt. Die Schätzungen erscheinen, wenn Sie das Plugin öffnen, indem Sie seinen Marketplace benennen, wie der Befehl in Schritt 1, oder von der Registerkarte **Marketplaces**. Der Detailbereich, den Sie aus der Liste **Discover** erreichen, zeigt sie nicht.

53 

54 Plugins aus einem lokalen oder benutzerdefinierten Marketplace können stattdessen `Components will be discovered at installation` anzeigen.

55 

56 Ein Plugin kann Hooks und MCP-Server ausführen, daher lesen Sie den Bereich, bevor Sie installieren. Siehe [Plugin-Sicherheit und Vertrauen](/docs/de/plugins/security).

57 </Step>

58 

59 <Step title="Wählen Sie einen Bereich">

60 Wählen Sie eine der drei Installationsoptionen:

61 

62 * **Install for you (user scope)**: Sie erhalten das Plugin in jedem Projekt auf diesem Computer

63 * **Install for all collaborators on this repository (project scope)**: Es ist für alle aktiviert, die in diesem Repository arbeiten

64 * **Install for you, in this repo only (local scope)**: Sie erhalten es nur in diesem Repository

65 

66 [Wählen Sie einen Installationsbereich](#choose-an-install-scope) sagt, welche Einstellungsdatei jeder schreibt und welche gilt, wenn das gleiche Plugin an mehr als einem Ort gesetzt ist.

67 

68 Nachdem Sie einen Bereich ausgewählt haben, installiert Claude Code das Plugin zusammen mit allen Abhängigkeiten, die es deklariert, und druckt dann eine Installationszusammenfassung.

69 </Step>

70 

71 <Step title="Lesen Sie die Installationszusammenfassung">

72 Der letzte Satz der Zusammenfassung sagt Ihnen, ob das Plugin in dieser Sitzung bereits verwendbar ist:

73 

74 * **Active now**: `Plugin is now active.` Es ist kein Neuladen erforderlich.

75 * **Reload needed**: `Run /reload-plugins to activate.` Das Panel schließt sich und Claude Code führt dieses Neuladen für Sie aus. Wenn das Neuladen den [Prompt-Cache ungültig machen würde](/docs/de/prompt-caching#enabling-or-disabling-a-plugin), warnt es und lässt das Plugin stattdessen ausstehend. Führen Sie `/reload-plugins --force` aus, um es trotzdem zu aktivieren, was eine nicht gecachte Anfrage kostet.

76 * **Load failed**: `The plugin couldn't be loaded`. Öffnen Sie die Registerkarte **Errors** in `/plugin`, um den Grund zu erfahren, und siehe dann [Nach Installation: Plugin funktioniert nicht](/docs/de/plugins/troubleshooting#plugin-installed-but-not-working).

77 </Step>

78 

79 <Step title="Bestätigen Sie, dass das Plugin funktioniert">

80 Geben Sie `/` ein und suchen Sie nach den Skills des Plugins unter seinem Namen in der Form `/<plugin>:<skill>`. Für `commit-commands` erscheint `/commit-commands:commit`. Zwei weitere Orte listen das Plugin auch auf:

81 

82 * Öffnen Sie die Registerkarte **Installed** in `/plugin`, die das Plugin mit seinem Bereich auflistet.

83 * Führen Sie in Ihrer Shell `claude plugin list` aus, das die gleiche Liste mit `Version`-, `Scope`- und `Status`-Zeilen druckt.

84 

85 Wenn `/commit-commands:commit` nicht erscheint, siehe [Nach Installation: Plugin funktioniert nicht](/docs/de/plugins/troubleshooting#plugin-installed-but-not-working).

86 </Step>

87 </Steps>

88 

89 Die Installation aus einem anderen Marketplace erfordert zuerst einen zusätzlichen Schritt: [fügen Sie den Marketplace hinzu](#add-a-marketplace). Claude Code fügt Anthropics offiziellen Marketplace für Sie hinzu, wenn Sie zum ersten Mal eine interaktive Terminal-Sitzung starten, weshalb das Beispiel diesen Schritt überspringt. Wenn Sie ein Plugin auf [claude.com/marketplace](https://claude.com/marketplace) gefunden haben, kopiert seine Schaltfläche **Claude Code** den Installationsbefehl in seiner [Shell-Form](#install-from-your-shell), `claude plugin install <name>@claude-plugins-official`.

90 </Tab>

91 

92 <Tab title="Desktop app">

93 In einer lokalen oder SSH-Sitzung in der Registerkarte **Code** der Desktop-App:

94 

95 <Steps>

96 <Step title="Öffnen Sie den Plugin-Browser">

97 Klicken Sie auf die Schaltfläche **+** neben dem Eingabefeld und wählen Sie **Plugins**, dann **Add plugin**. Der Plugin-Browser öffnet sich mit den Plugins aus Ihren Marketplaces.

98 </Step>

99 

100 <Step title="Wählen Sie das Plugin">

101 Finden Sie `commit-commands` und wählen Sie es aus.

102 </Step>

103 

104 <Step title="Wählen Sie einen Bereich">

105 Wählen Sie einen [Bereich](#choose-an-install-scope): Ihr Benutzerkonto, dieses Projekt oder nur lokal.

106 </Step>

107 </Steps>

108 

109 Um später zu aktivieren, zu deaktivieren oder zu deinstallieren, verwenden Sie **+ > Plugins > Manage plugins**. Der Plugin-Browser ist in Cloud-Sitzungen der Desktop-App nicht verfügbar. Siehe [Plugins in der Desktop-App installieren](/docs/de/desktop#install-plugins).

110 </Tab>

111 

112 <Tab title="VS Code">

113 Im Claude Code-Panel in VS Code:

114 

115 <Steps>

116 <Step title="Öffnen Sie Plugins verwalten">

117 Geben Sie `/plugins` im Eingabefeld ein, um **Manage plugins** zu öffnen.

118 </Step>

119 

120 <Step title="Installieren Sie das Plugin">

121 Suchen Sie auf der Registerkarte **Plugins** nach `commit-commands` und klicken Sie auf **Install**. Wenn die Registerkarte keine Plugins auflistet, fügen Sie zuerst `anthropics/claude-plugins-official` auf der Registerkarte **Marketplaces** hinzu.

122 </Step>

123 

124 <Step title="Wählen Sie einen Bereich">

125 Wählen Sie einen [Bereich](#choose-an-install-scope): **Install for you**, **Install for this project** oder **Install locally**.

126 </Step>

127 </Steps>

128 

129 Ihre Änderungen gelten für offene Sitzungen ohne Neustart. Siehe [Plugins in VS Code verwalten](/docs/de/vs-code#manage-plugins).

130 </Tab>

131 

132 <Tab title="Cloud session">

133 Eine [Cloud-Sitzung](/docs/de/cloud-environments), einschließlich [des Browsers unter claude.ai/code](/docs/de/claude-code-on-the-web), hat keinen Plugin-Browser und lädt nicht die Plugins, die Sie auf Ihrem eigenen Computer installiert haben, oder die, die die `.claude/settings.json` Ihres Repositorys aktiviert. Für Plugins, die Ihre Organisation über verwaltete Einstellungen verteilt, siehe [Plugins für Ihre Organisation verwalten](/docs/de/plugins/org).

134 

135 Siehe [welche Teile Ihres Setups auch in einer Cloud-Sitzung verfügbar sind](/docs/de/cloud-environments#what-carries-over-from-your-setup) für den Rest Ihres Setups.

136 </Tab>

137</Tabs>

138 

139<h3 id="choose-an-install-scope">

140 Wählen Sie einen Installationsbereich

141</h3>

142 

143Der Installationsbereich eines Plugins entscheidet, wer das Plugin erhält und welche Einstellungsdatei es als aktiviert aufzeichnet:

144 

145* **User scope**: Das Plugin ist für Sie in jedem Projekt auf diesem Computer aktiviert. Der Eintrag geht in `enabledPlugins` in `~/.claude/settings.json`.

146* **Project scope**: Das Plugin ist für alle aktiviert, die in diesem Repository arbeiten. Der Eintrag geht in `.claude/settings.json`, das Sie committen.

147* **Local scope**: Das Plugin ist für Sie nur in diesem Repository aktiviert. Der Eintrag geht in `.claude/settings.local.json`.

148 

149Einige Plugins sind vom Autor so eingestellt, dass sie standardmäßig ausgeschaltet sind, über das Feld [`defaultEnabled`](/docs/de/plugins/manifest-reference#defaultenabled). Ein solches Plugin wird installiert, bleibt aber aus, bis Sie es mit `claude plugin enable <name>` in Ihrer Shell oder von der Registerkarte **Installed** von `/plugin` in einer Sitzung aktivieren.

150 

151Wenn das gleiche Plugin an mehreren Bereichen gesetzt ist, überschreibt die lokale Einstellung die Projekteinstellung, und die Projekteinstellung überschreibt die Benutzereinstellung. Siehe [Finden Sie, wo ein Plugin aktiviert ist](/docs/de/plugins/loading#find-where-a-plugin-is-enabled) für die vollständige Regel.

152 

153Das Terminal, die lokalen Sitzungen der Desktop-App und die VS Code-Erweiterung auf einem Computer lesen die gleichen Einstellungsdateien, daher ist ein Plugin, das Sie in einem von ihnen im Benutzerbereich installieren, auch in den anderen beiden verfügbar.

154 

155<h3 id="other-places-you-run-claude-code">

156 JetBrains, nicht-interaktive Ausführungen und das Agent SDK

157</h3>

158 

159Einige Orte, an denen Sie Claude Code ausführen, haben keinen eigenen Plugin-Browser:

160 

161* **JetBrains IDEs**: Das JetBrains-Plugin führt Claude Code im Terminal der IDE aus, daher verwenden Sie die Schritte der Registerkarte **Terminal** dort.

162* **`claude -p` und andere nicht-interaktive Ausführungen**: `/plugin` wird nicht ausgeführt, und Claude antwortet `/plugin isn't available in this environment.` Plugins, die Sie bereits installiert haben, werden geladen. Installieren und verwalten Sie sie von Ihrer Shell aus mit [`claude plugin`-Befehlen](#install-from-your-shell).

163* **Agent SDK**: Laden Sie Plugins über die Plugin-Option des SDK. Siehe [Plugins im Agent SDK laden](/docs/de/agent-sdk/plugins).

164 

165Wenn Claude Code meldet, dass ein Plugin, das in der `.claude/settings.json` des Repositorys aktiviert ist, nicht installiert ist, siehe [In Projekteinstellungen aktiviert, aber nicht installiert](/docs/de/plugins/loading#enabled-in-project-settings-but-not-installed).

166 

167<Tip>

168 Wenn Sie ein Plugin-Autor sind und eine Kopie Ihres Plugins auf der Festplatte testen, starten Sie Claude Code von Ihrer Shell aus mit `--plugin-dir`, um es für eine Sitzung zu laden, anstatt es zu installieren. Siehe [Flags, die ein Plugin für eine Sitzung laden](/docs/de/plugins/cli-reference#flags-that-load-a-plugin-for-one-session).

169</Tip>

170 

171<h3 id="plugins-from-your-claude-ai-account">

172 Plugins aus Ihrem claude.ai-Konto

173</h3>

174 

175Ihr claude.ai-Konto ist eine separate Quelle von Plugins, neben den Marketplaces, aus denen Sie installieren:

176 

177* **What arrives**: Jedes Plugin, das Sie für Ihr claude.ai-Konto aktivieren, und jedes Plugin, das Ihre Organisation für ihre Mitglieder aktiviert. In einer Terminal-Sitzung werden sie im Hintergrund synchronisiert, jedes Mal wenn Sie Claude Code starten, während Sie mit diesem Konto angemeldet sind; in Cowork-Sitzungen werden sie heruntergeladen, wenn die Sitzung startet.

178* **Where you see them**: in `/plugin` und `claude plugin list` unter der ID `<name>@synced`. Sie können eines ausschalten, es sei denn, Ihre Organisation verlangt es.

179* **What doesn't go the other way**: Plugins, die Sie mit `/plugin` oder `claude plugin install` installieren, bleiben auf diesem Computer und werden nicht zu Ihrem claude.ai-Konto hinzugefügt.

180 

181Für Synchronisierungszeitpunkt, Anmeldeanforderungen und Ausschalten der Synchronisierung siehe [Plugins, die von claude.ai synchronisiert werden](/docs/de/plugins/loading#synced-plugins).

182 

183<h3 id="install-from-your-shell">

184 Von Ihrer Shell installieren

185</h3>

186 

187Führen Sie `claude plugin install` in Ihrer Shell aus, um ein Plugin zu installieren, ohne eine Claude Code-Sitzung zu starten, zum Beispiel aus einem Setup-Skript.

188 

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

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

191* **The marketplace must be added first**: Auf einem Computer, auf dem noch niemand eine interaktive Claude Code-Sitzung geöffnet hat, ist der offizielle Marketplace nicht registriert, daher führt ein Skript, das von ihm installiert, zuerst `claude plugin marketplace add anthropics/claude-plugins-official` aus, bevor die Installation erfolgt.

192 

193```bash theme={null}

194claude plugin install formatter@your-org --scope project

195```

196 

197Der Befehl druckt `Successfully installed plugin: formatter@your-org (scope: project)`, wenn er fertig ist.

198 

199Einige Plugins installieren, indem sie einen Befehl ausführen, den ihr Marketplace benennt, genannt eine [`command`-Quelle](/docs/de/plugins/marketplace-reference#command-plugin-source). Claude Code zeigt Ihnen diesen Befehl und fragt Sie, ihn zu akzeptieren, bevor er ausgeführt wird. Ein Skript hat niemanden, um diese Aufforderung zu beantworten, daher übergeben Sie dort `--yes`, um es zu akzeptieren.

200 

201Für jedes `claude plugin install`-Flag siehe [plugin install](/docs/de/plugins/cli-reference#plugin-install).

202 

203<h2 id="add-a-marketplace">

204 Marketplace hinzufügen

205</h2>

206 

207Sie benötigen diesen Abschnitt nur, wenn das Plugin, das Sie möchten, nicht im offiziellen Marketplace von Anthropic ist, zum Beispiel eines, das ein Kollege veröffentlicht hat, oder eines aus dem Community-Marketplace von Anthropic.

208 

209Ein Marketplace ist ein Katalog von Plugins, und Claude Code muss einen Marketplace kennen, bevor Sie von ihm installieren können. Sie fügen einen Marketplace einmal hinzu. Danach erscheinen seine Plugins auf der Registerkarte **Discover** und installieren mit `/plugin install <plugin>@<marketplace>` in einer Sitzung oder `claude plugin install <plugin>@<marketplace>` in Ihrer Shell, wobei `<marketplace>` der Name ist, unter dem sich der Marketplace registriert hat. Um beides in einem Schritt zu tun, siehe [Marketplace hinzufügen und in einem Befehl installieren](#add-a-marketplace-and-install-in-one-command).

210 

211Führen Sie in einer Claude Code-Sitzung `/plugin marketplace add` gefolgt von der Quelle des Marketplace aus: ein GitHub-Repository, ein Git-Repository auf einem beliebigen Host, ein lokales Verzeichnis oder eine Datei, oder ein gehostetes `marketplace.json`.

212 

213| Quelle | Was Sie eingeben | Beispiel |

214| :--------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------- |

215| GitHub-Repository | `owner/repo`. Fügen Sie `#ref` hinzu, um einen Branch oder Tag zu fixieren. | `/plugin marketplace add anthropics/claude-code`, oder `/plugin marketplace add your-org/plugins#v1.2.0`, um den Tag `v1.2.0` zu fixieren |

216| Git-Repository auf einem beliebigen Host | Die vollständige Clone-URL. Fügen Sie `#ref` hinzu, um einen Branch oder Tag zu fixieren. | `/plugin marketplace add https://gitlab.example.com/your-group/your-marketplace.git#v1.0.0` |

217| Lokales Verzeichnis oder Datei | Ein relativer oder absoluter Pfad zu einem Verzeichnis, das `.claude-plugin/marketplace.json` enthält, oder zur JSON-Datei selbst. Beginnen Sie einen relativen Pfad mit `./` oder `../`, da Claude Code ein bloßes `name/name` als GitHub-Repository liest. | `/plugin marketplace add ./my-marketplace` |

218| Gehostetes `marketplace.json` | Seine `https://`-URL | `/plugin marketplace add https://example.com/marketplace.json` |

219 

220Von Ihrer Shell aus nimmt `claude plugin marketplace add` die gleichen Quellen.

221 

222<Tip>

223 `/plugin market` funktioniert auch als kürzere Form von `/plugin marketplace`.

224</Tip>

225 

226Fügen Sie das Präfix `https://` auf jeder URL ein, oder verwenden Sie das Formular `git@host:path` für SSH. Wenn Sie ein bloßes `gitlab.example.com/your-group/your-marketplace.git` eingeben, liest Claude Code es als GitHub `owner/repo`-Kurzform und lehnt es ab.

227 

228Wenn der Befehl erfolgreich ist, druckt er `Successfully added marketplace: <name>`, und die Plugins des Marketplace erscheinen auf der Registerkarte **Discover**, wenn Sie `/plugin` das nächste Mal öffnen, ohne dass ein Neuladen erforderlich ist. Wenn es fehlschlägt, stimmen Sie die Fehlermeldung in [Plugins fehlerbeheben](/docs/de/plugins/troubleshooting#add-a-marketplace) ab.

229 

230<h3 id="add-a-marketplace-and-install-in-one-command">

231 Marketplace hinzufügen und in einem Befehl installieren

232</h3>

233 

234Um ein Plugin aus einem Marketplace zu installieren, den Sie noch nicht hinzugefügt haben, führen Sie `/plugin install` in einer Claude Code-Sitzung aus und benennen Sie die Marketplace-Quelle mit `--marketplace`. Erfordert Claude Code v2.1.275 oder später.

235 

236```text theme={null}

237/plugin install deploy-helper --marketplace your-org/plugins

238```

239 

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

241 

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

243 

244<h3 id="add-a-private-marketplace">

245 Privaten Marketplace hinzufügen

246</h3>

247 

248Ein privater Marketplace ist einer in einem Repository, auf das Sie Anmeldedaten zum Klonen benötigen, auf GitHub oder einem anderen Git-Host. Sie fügen ihn mit dem gleichen `/plugin marketplace add`- oder `claude plugin marketplace add`-Befehl wie einen öffentlichen hinzu. Claude Code klont ihn mit den Git-Anmeldedaten, die bereits auf Ihrem Computer vorhanden sind, und fragt nie, daher hat jede Verbindungsweise eine Anforderung:

249 

250* **HTTPS**: Ihre Git-Credential-Helper gelten, daher funktioniert der Zugriff, den Sie mit `gh auth login`, dem macOS-Schlüsselbund oder `git-credential-store` einrichten. Interaktive Aufforderungen werden unterdrückt, daher schlägt ein Host, bei dem Sie sich noch nie authentifiziert haben, statt zu fragen, fehl.

251* **SSH**: Der Host muss bereits in Ihrer `known_hosts`-Datei sein und der Schlüssel muss ohne Passphrase-Aufforderung funktionieren, da die Host-Fingerprint- und Passphrase-Aufforderungen auch unterdrückt werden.

252* **GitHub `owner/repo`-Kurzform**: Claude Code prüft, ob Ihr SSH-Schlüssel sich bei `github.com` authentifiziert, klont dann über SSH, wenn ja, und über HTTPS, wenn nein. Setzen Sie [`CLAUDE_CODE_PLUGIN_PREFER_HTTPS=1`](/docs/de/env-vars#variables), um diese Prüfung zu überspringen und immer über HTTPS zu klonen.

253 

254Die gleichen Anmeldedaten gelten, wenn Sie `/plugin install`, `/plugin marketplace update` und `claude plugin update` ausführen.

255 

256Auf einem GitHub Enterprise Server-Host siehe [Plugin-Marketplaces auf GHES](/docs/de/github-enterprise-server#plugin-marketplaces-on-ghes) für die Anmeldedaten, die jede Operation benötigt.

257 

258Wenn Ihre Organisation den Marketplace für Sie über verwaltete Einstellungen registriert, fügen Sie ihn nicht selbst hinzu. Siehe [Plugins vorinstallieren und erforderlich machen](/docs/de/plugins/org#pre-install-and-require-plugins).

259 

260<h3 id="add-from-claude-ai">

261 Marketplace von claude.ai hinzufügen

262</h3>

263 

264In Terminal-Sitzungen, in denen [Plugins von Ihrem claude.ai-Konto synchronisiert werden](/docs/de/plugins/loading#synced-plugins), kann claude.ai auch Plugin-Marketplaces für Sie auflisten, wie die Plugin-Bibliothek Ihrer Organisation und Ihre eigenen claude.ai-Uploads. Sie fügen einen davon nach seinem Namen hinzu, anstatt nach einer Quelle. Das Hinzufügen eines Marketplace von claude.ai erfordert Claude Code v2.1.273 oder später.

265 

266Fügen Sie einen claude.ai-Marketplace vom `/plugin`-Panel oder von Ihrer Shell aus hinzu:

267 

268* **Inside a session**: Führen Sie `/plugin` aus und gehen Sie zur Registerkarte **Marketplaces**, die die Marketplaces von claude.ai auflistet. Wählen Sie einen dort aus, um ihn hinzuzufügen.

269* **From your shell**: Führen Sie `claude plugin marketplace list` aus, das sie in einem Abschnitt `From claude.ai:` druckt. Führen Sie dann `claude plugin marketplace add` mit dem Flag `--claudeai` und dem in der Liste angezeigten Namen aus.

270 

271Zum Beispiel fügt dieser Befehl einen Marketplace namens `claudeai-organization-library` hinzu:

272 

273```bash theme={null}

274claude plugin marketplace add --claudeai claudeai-organization-library

275```

276 

277Claude Code registriert den Marketplace unter einem lokalen Namen, der mit `claudeai-` beginnt, abgeleitet vom Namen, unter dem claude.ai ihn auflistet. Zum Beispiel wird ein Marketplace, der als "Organization library" aufgelistet ist, zu `claudeai-organization-library`. Installieren Sie seine Plugins unter diesem Namen, zum Beispiel mit `claude plugin install <plugin>@claudeai-organization-library`.

278 

279Wenn Sie sich abmelden oder sich bei einer anderen claude.ai-Organisation anmelden, bleibt der Marketplace konfiguriert, zeigt aber keine Plugins an, und die Plugins, die Sie bereits von ihm installiert haben, werden weiterhin geladen.

280 

281Der Abschnitt `From claude.ai:` kann auch Git-basierte Marketplaces auflisten, die über claude.ai geteilt werden, und druckt eine Quelle für jeden davon. Fügen Sie sie nach dieser Quelle wie in [Marketplace hinzufügen](#add-a-marketplace) hinzu, nicht mit `--claudeai`.

282 

283<h2 id="manage-installed-plugins">

284 Installierte Plugins verwalten

285</h2>

286 

287Die Registerkarte **Installed** in `/plugin` listet Ihre Plugins mit Aktionen auf, um jedes zu aktivieren, zu deaktivieren, zu aktualisieren oder zu deinstallieren. Führen Sie in einer Claude Code-Sitzung `/plugin` aus und drücken Sie **Tab**, um es zu erreichen, oder führen Sie `/plugin enable`, `/plugin disable` oder `/plugin uninstall` aus, um das Panel zu öffnen und diese Änderung dort vorzunehmen. Deaktivierte Plugins werden unter einer eingeklappten Kopfzeile am unteren Ende der Liste gruppiert. Verwenden Sie diese Tasten auf der Liste:

288 

289* Geben Sie ein, um nach Name oder Beschreibung zu filtern.

290* Drücken Sie **Space**, um das ausgewählte Plugin zu aktivieren oder zu deaktivieren, und **f**, um es zu favorisieren.

291* Drücken Sie **Enter**, um die Details eines Plugins zu öffnen. Das Menü dort bietet **Disable plugin** oder **Enable plugin**, **Update now** und **Uninstall**. Plugins, die Einstellungen vornehmen, bieten auch **Configure options**.

292 

293Die Registerkarte kann auch Plugins im Bereich **Managed** anzeigen. Ihre Organisation hat diese über [verwaltete Einstellungen](/docs/de/settings#settings-files) installiert, und Sie können sie hier nicht aktivieren, deaktivieren oder deinstallieren.

294 

295Für ein synchronisiertes Plugin, das Ihre Organisation auf claude.ai erforderlich macht, siehe [Plugins verwalten, die von claude.ai synchronisiert werden](#manage-plugins-synced-from-claude-ai).

296 

297Wenn Sie das `/plugin`-Panel mit ausstehenden Änderungen schließen, die Sie darin vorgenommen haben, führt Claude Code `/reload-plugins` für Sie aus, um sie anzuwenden. Wenn das Neuladen den [Prompt-Cache ungültig machen würde](/docs/de/prompt-caching#enabling-or-disabling-a-plugin), warnt es und lässt die Änderungen stattdessen ausstehend. Führen Sie `/reload-plugins --force` aus, um sie trotzdem anzuwenden.

298 

299<h3 id="manage-plugins-synced-from-claude-ai">

300 Plugins verwalten, die von claude.ai synchronisiert werden

301</h3>

302 

303Die Registerkarte **Installed** in `/plugin` listet auch die [Plugins, die von Ihrem claude.ai-Konto synchronisiert werden](/docs/de/plugins/loading#synced-plugins), mit `synced` als ihrer Quelle. Synchronisierte Plugins erscheinen in Terminal-Sitzungen auf Claude Code v2.1.273 oder später.

304 

305* **Enable or disable**: Verwenden Sie die Registerkarte **Installed**, es sei denn, Ihre Organisation hat das Plugin als erforderlich markiert.

306* **Remove**: Schalten Sie das Plugin auf claude.ai aus.

307 

308Wenn Claude Code ein hinzugefügtes, aktualisiertes oder entferntes Plugin in eine interaktive Sitzung synchronisiert, sehen Sie `Plugins changed. Run /reload-plugins to activate.` Führen Sie `/reload-plugins` aus, um die Änderung in dieser Sitzung zu laden, oder lassen Sie sie für das nächste Mal, wenn Sie Claude Code starten.

309 

310<h3 id="uninstall-a-plugin-the-project-enables">

311 Deinstallieren Sie ein Plugin, das das Projekt aktiviert

312</h3>

313 

314Wenn Sie **Uninstall** für ein Plugin wählen, das die `.claude/settings.json` dieses Repositorys aktiviert, ob von der Registerkarte **Installed** oder mit `/plugin uninstall`, fragt Claude Code, ob es für Sie deaktiviert oder für alle deinstalliert werden soll:

315 

316* **Disable for me**: Drücken Sie **y**. Claude Code schreibt `false` für das Plugin in Ihre `.claude/settings.local.json` und lässt es für das Projekt installiert.

317* **Uninstall for everyone**: Drücken Sie **u**. Claude Code entfernt das Plugin aus der gemeinsamen `.claude/settings.json`.

318 

319<h3 id="see-what-an-installed-plugin-adds-to-your-sessions">

320 Sehen Sie, was ein installiertes Plugin zu Ihren Sitzungen hinzufügt

321</h3>

322 

323Führen Sie in Ihrer Shell `claude plugin details <name>` für ein installiertes Plugin aus. Die Zeile `Always-on` ist die Anzahl der Token, die das Plugin zu jeder Sitzung hinzufügt, in der es aktiviert ist, und die Pro-Komponenten-Zeilen zeigen, welche Skill oder welcher Agent am meisten beiträgt. Für die vollständige Ausgabe und was jede Zahl bedeutet, siehe [Messen Sie, was ein Plugin kostet](/docs/de/plugins/measure#measure-what-a-plugin-costs).

324 

325<h3 id="find-plugins-you-no-longer-use">

326 Finden Sie Plugins, die Sie nicht mehr verwenden

327</h3>

328 

329Auf der Registerkarte **Installed** in `/plugin` erscheinen Plugins, die Sie selbst installiert haben und kürzlich nicht verwendet haben, unter einer Kopfzeile **Not used recently**, und die Details jedes Plugins zeigen eine Zeile **Last used**. Verwenden Sie diese Kopfzeile und diese Zeile, um Plugins zu finden, die immer noch Startup- und Kontextkosten hinzufügen, und deaktivieren oder deinstallieren Sie sie dann.

330 

331<h3 id="plugins-with-dependencies">

332 Plugins mit Abhängigkeiten

333</h3>

334 

335Ein Plugin kann andere Plugins deklarieren, von denen es abhängt. Wenn Sie ein solches Plugin aus einem Marketplace installieren, deaktivieren oder deinstallieren, handelt Claude Code auch mit diesen Abhängigkeiten:

336 

337* **Install**: Claude Code installiert und aktiviert auch die deklarierten Abhängigkeiten des Plugins im gleichen Bereich. Die Erfolgsmeldung listet sie auf.

338* **Enable**: Claude Code aktiviert auch die Abhängigkeiten des Plugins, die installiert, aber deaktiviert sind. Wenn eine deklarierte Abhängigkeit nicht installiert ist, schlägt die Aktivierung fehl und die Nachricht sagt Ihnen, sie zuerst zu installieren.

339* **Disable**: Wenn ein anderes aktiviertes Plugin das benötigte noch braucht, weigert sich Claude Code und druckt einen verketteten Befehl, der beide in der richtigen Reihenfolge deaktiviert.

340* **Uninstall**: Auto-installierte Abhängigkeiten bleiben, bis Sie `claude plugin prune` in Ihrer Shell ausführen; siehe [plugin prune](/docs/de/plugins/cli-reference#plugin-prune).

341 

342Wenn Sie das Plugin stattdessen mit `--plugin-dir` geladen haben, siehe [Testen Sie ein Plugin und seine Abhängigkeit lokal](/docs/de/plugins/dependencies#test-a-plugin-and-its-dependency-locally).

343 

344<h3 id="manage-plugins-from-your-shell">

345 Plugins von Ihrer Shell verwalten

346</h3>

347 

348Sie können Plugins auch verwalten, ohne eine Claude Code-Sitzung zu starten. Führen Sie in Ihrer Shell `claude plugin install`, `enable`, `disable` oder `uninstall` als gewöhnliche Terminal-Befehle aus; sie ändern die gleichen Einstellungen, die das `/plugin`-Panel tut. Jeder nimmt `--scope`, um einen Bereich anzuvisieren, und verwendet einen Standardbereich, wenn Sie ihn weglassen:

349 

350* `enable` und `disable` handeln mit dem spezifischsten Bereich, dessen Einstellungen das Plugin bereits auflisten.

351* `install` und `uninstall` handeln mit dem Benutzerbereich.

352 

353Zum Beispiel deaktivieren und reaktivieren diese Befehle ein Plugin, dann deinstallieren es im Projektbereich:

354 

355```bash theme={null}

356claude plugin disable formatter@your-org

357claude plugin enable formatter@your-org

358claude plugin uninstall formatter@your-org --scope project

359```

360 

361<h2 id="keep-plugins-updated">

362 Halten Sie Plugins aktualisiert

363</h2>

364 

365Plugins werden automatisch aktualisiert, wenn der Marketplace, aus dem sie stammen, Auto-Update aktiviert hat. Nachdem eine Sitzung startet, aktualisiert Claude Code diese Marketplaces und aktualisiert die On-Disk-Kopien der Plugins, die Sie von ihnen installiert haben.

366 

367Die laufende Sitzung behält die Versionen, die sie bereits geladen hat. Nach einer Aktualisierung sehen Sie `Plugin updated: <name> · Run /reload-plugins to apply`, und die nächste Sitzung lädt die neuen Versionen automatisch.

368 

369Dies sind die Auto-Update-Standardeinstellungen für jede Art von Marketplace:

370 

371* **On by default**: `claude-plugins-official` und die anderen [offiziellen Marketplace-Namen](/docs/de/plugins/security#official-marketplace-names) außer `knowledge-work-plugins` und `first-party-plugins`, plus [Marketplaces, die von claude.ai hinzugefügt werden](#add-from-claude-ai).

372* **Off by default**: jeder andere Marketplace, einschließlich des Community-Marketplace, Drittanbieter-Marketplaces und lokaler Entwicklungs-Marketplaces.

373 

374Für wann Auto-Update läuft, welche Plugins es überspringt, und die Umgebungsvariablen, die es ausschalten, siehe [Wenn Auto-Update läuft](/docs/de/plugins/loading#when-auto-update-runs).

375 

376<h3 id="turn-auto-update-on-or-off-for-a-marketplace">

377 Schalten Sie Auto-Update für einen Marketplace ein oder aus

378</h3>

379 

380Führen Sie in einer Claude Code-Sitzung `/plugin` aus und gehen Sie zur Registerkarte **Marketplaces**. Wählen Sie den Marketplace aus, dann wählen Sie **Enable auto-update** oder **Disable auto-update**.

381 

382<h3 id="update-one-plugin-now">

383 Aktualisieren Sie ein Plugin jetzt

384</h3>

385 

386Öffnen Sie in einer Sitzung das Plugin auf der Registerkarte **Installed** in `/plugin` und wählen Sie **Update now**, oder führen Sie in Ihrer Shell `claude plugin update <plugin>@<marketplace>` aus.

387 

388<h3 id="auto-update-from-a-private-marketplace">

389 Auto-Update von einem privaten Marketplace

390</h3>

391 

392Für einen privaten Marketplace siehe [Was Background-Auto-Update mit Anmeldedaten tut](/docs/de/plugins/host-marketplace#what-background-auto-update-does-with-credentials) für wie Background-Auto-Updates sich über SSH und HTTPS authentifizieren, und [Plugins fehlerbeheben](/docs/de/plugins/troubleshooting#add-a-marketplace) für die Nachrichten, die Sie sehen, wenn sie fehlschlagen.

393 

394<h2 id="manage-marketplaces">

395 Marketplaces verwalten

396</h2>

397 

398Die Registerkarte **Marketplaces** in `/plugin` listet jeden Marketplace auf, den Sie registriert haben, zusammen mit seiner Quelle. Wählen Sie einen aus, um seine Plugins zu durchsuchen, seine Auflistung zu aktualisieren, Auto-Update ein- oder auszuschalten, oder ihn zu entfernen.

399 

400Sie können Marketplaces auch mit Befehlen auflisten, aktualisieren und entfernen, von Ihrer Shell oder innerhalb einer Sitzung:

401 

402| Aktion | In Ihrer Shell | Innerhalb einer Sitzung |

403| :----------------------------------------- | :---------------------------------------- | :---------------------------------- |

404| Marketplaces auflisten | `claude plugin marketplace list` | `/plugin marketplace list` |

405| Auflistung eines Marketplace aktualisieren | `claude plugin marketplace update <name>` | `/plugin marketplace update <name>` |

406| Marketplace entfernen | `claude plugin marketplace remove <name>` | `/plugin marketplace remove <name>` |

407 

408Wenn Sie einen Marketplace entfernen, deinstalliert Claude Code jedes Plugin, das Sie von ihm installiert haben, und entfernt ihre `enabledPlugins`-Einträge aus Ihren Einstellungsdateien. Die Registerkarte **Marketplaces** benennt diese Plugins, bevor sie Sie zur Bestätigung auffordert.

409 

410<h2 id="next-steps">

411 Nächste Schritte

412</h2>

413 

414* [Anthropics Marketplaces](/docs/de/plugins/anthropic-marketplaces): wie sich der offizielle, Community- und Demo-Marketplace unterscheiden und wo Sie jeden durchsuchen können

415* [Plugin-Lade-Referenz](/docs/de/plugins/loading): warum ein Plugin geladen wurde, nicht geladen wurde, oder sich nach einer Aktualisierung nicht änderte

416* [Plugin-Sicherheit und Vertrauen](/docs/de/plugins/security): was Sie überprüfen sollten, bevor Sie ein Plugin aus einem Marketplace installieren, den Sie nicht kennen

417* [Plugins fehlerbeheben](/docs/de/plugins/troubleshooting): Installations- und Marketplace-Fehlermeldungen mit ihren Fixes

418* [Erstellen Sie ein Plugin](/docs/de/plugins/create): bauen Sie Ihr eigenes

plugins/manifest-reference.md +710 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Plugin-Manifest-Referenz

6 

7> Vollständige Referenz für plugin.json: jedes Feld mit seinem Typ und Standard, akzeptierte Pfadformen und die userConfig- und Umgebungsvariablenschemas.

8 

9Ein Plugin-Manifest ist die Datei `plugin.json` im Verzeichnis `.claude-plugin/` eines Plugins. Sie enthält die Metadaten des Plugins und die [`userConfig`](#user-configuration)-Werte, die Claude Code den Benutzer auffordert einzugeben. Sie deklariert auch alle Komponenten, die Sie inline definieren oder außerhalb ihres [Standardorts](#standard-layout) speichern.

10 

11Diese Referenz ist für Plugin-Ersteller und für Marketplace-Besitzer, die Komponentenfelder in einen Marketplace-Eintrag einfügen.

12 

13<Note>

14 Diese Fälle werden auf anderen Seiten behandelt:

15 

16 * **Erlernen des Plugin-Aufbaus**: Beginnen Sie mit [Plugin erstellen](/docs/de/plugins/create)

17 * **Was jede Komponente zur Laufzeit tut**: siehe [Plugin-Komponenten](/docs/de/plugins/components)

18</Note>

19 

20Beginnen Sie mit dem Abschnitt, der dem entspricht, was Sie nachschlagen:

21 

22* Ein Feld: die [Feldtabelle](#fields) gibt den Typ jedes Feldes, ob es erforderlich ist, seinen Standard und was es akzeptiert. [Pfadregeln](#path-rules) behandelt das `./`-Präfix und die Eindämmung für jeden Komponentenpfad

23* Eine `userConfig`-Option oder einen `channels`-Eintrag: die [Benutzerkonfiguration](#user-configuration) und [Kanäle](#channels)-Schemas

24* `${CLAUDE_PLUGIN_ROOT}` oder eine andere Variable, auf die ein Plugin verweisen kann: [Umgebungsvariablen](#environment-variables)

25* Wo die Dateien jeder Komponente hingehen: [Standardlayout](#standard-layout)

26* Eine Nachricht von `claude plugin validate`: die [Seite zur Fehlerbehebung](/docs/de/plugins/troubleshooting) listet jede Nachricht mit ihrer Lösung und Links zu den relevanten Abschnitten auf dieser Seite auf

27 

28<h2 id="manifest-file">

29 Manifest-Datei

30</h2>

31 

32Das Manifest ist optional. Ohne es lädt Claude Code die Komponenten, die es im [Standardlayout](#standard-layout) findet. Der Plugin-Name kommt dann aus dem Marketplace-Eintrag oder aus dem Verzeichnisnamen, wenn Sie das Plugin mit `--plugin-dir` laden.

33 

34Schreiben Sie ein Manifest, wenn Sie Metadaten, eine Komponente außerhalb ihres Standardverzeichnisses, `userConfig` oder eine inline Komponentendefinition möchten.

35 

36Speichern Sie das Manifest unter `.claude-plugin/plugin.json` im Plugin-Root. Legen Sie jede andere Plugin-Datei im Plugin-Root ab, nicht im `.claude-plugin/`-Verzeichnis. Das umfasst `skills/`, `commands/` und `hooks/`.

37 

38Das folgende Beispiel setzt die meisten Schlüssel in der [Feldtabelle](#fields). Es besteht die Validierung in einem Plugin-Verzeichnis, das jeden referenzierten Pfad enthält.

39 

40```json theme={null}

41{

42 "name": "deploy-tools",

43 "displayName": "Deploy Tools",

44 "version": "1.2.0",

45 "description": "Deployment commands, a review agent, and a status monitor",

46 "author": {

47 "name": "Example Team",

48 "email": "dev@example.com",

49 "url": "https://example.com"

50 },

51 "homepage": "https://example.com/docs/deploy-tools",

52 "repository": "https://github.com/example/deploy-tools",

53 "license": "MIT",

54 "keywords": ["deployment", "ci"],

55 "defaultEnabled": true,

56 "dependencies": ["secrets-vault"],

57 "metadata": { "catalogId": "cat-123" },

58 "skills": ["./extra-skills/"],

59 "commands": {

60 "status": {

61 "source": "./commands/status.md",

62 "description": "Show the current deployment status"

63 },

64 "about": {

65 "content": "Explain what the deploy-tools plugin provides.",

66 "description": "Describe this plugin"

67 }

68 },

69 "agents": ["./agents/reviewer.md"],

70 "hooks": "./config/extra-hooks.json",

71 "mcpServers": {

72 "deploy-api": {

73 "command": "node",

74 "args": ["${CLAUDE_PLUGIN_ROOT}/server.js"]

75 }

76 },

77 "lspServers": "./.lsp.json",

78 "outputStyles": "./styles/",

79 "experimental": {

80 "themes": "./themes/",

81 "monitors": "./config/monitors.json"

82 },

83 "userConfig": {

84 "api_token": {

85 "type": "string",

86 "title": "API token",

87 "description": "Token for the deployment API",

88 "sensitive": true

89 }

90 }

91}

92```

93 

94<h3 id="unrecognized-fields">

95 Nicht erkannte Felder

96</h3>

97 

98Ein nicht erkannter Top-Level-Schlüssel wird entfernt, und ein nicht erkannter Schlüssel in einer `userConfig`-Option, einem `channels`-Eintrag, einer `lspServers`-Konfiguration oder einem `monitors`-Eintrag wird abgelehnt:

99 

100* **Top-Level-Felder**: Das Feld wird entfernt und das Plugin wird geladen. `claude plugin validate` meldet jedes nicht erkannte Top-Level-Feld als Warnung

101* **Strikte Objekte**: `userConfig`-Optionen, `channels`-Einträge, `lspServers`-Konfigurationen und `monitors`-Einträge sind streng. Ein unbekannter Schlüssel in einem ist ein Fehler, und das Plugin wird nicht geladen

102 

103<h3 id="validate-the-manifest">

104 Manifest validieren

105</h3>

106 

107`claude plugin validate` ist die maßgebliche Überprüfung für ein Manifest. Führen Sie es von Ihrer Shell aus gegen das Plugin-Verzeichnis aus:

108 

109```bash theme={null}

110claude plugin validate ./my-plugin

111```

112 

113Der Befehl meldet eines dieser Ergebnisse:

114 

115* **`Validation passed`**: Das Manifest wird geladen

116* **`Validation passed with warnings`**: Das Manifest wird geladen, aber der Validator hat etwas gefunden, das zu beheben ist, z. B. ein unbekanntes Top-Level-Feld, das Claude Code entfernt, ein `name`, der nicht in Kebab-Case ist, oder ein fehlender `version`, `description` oder `author`. Übergeben Sie `--strict`, um Warnungen in CI in Fehler umzuwandeln

117* **`Validation failed`**: Das Manifest hat einen Typ-Mismatch, einen Pfad, der fehlt oder den Plugin-Root verlässt, oder einen unbekannten Schlüssel in einer `userConfig`-Option, einem `channels`-Eintrag, einer `lspServers`-Konfiguration oder einem `monitors`-Eintrag. Claude Code meldet das gleiche Problem, wenn es das Plugin lädt

118 

119<h2 id="fields">

120 Felder

121</h2>

122 

123Die Tabelle listet die Top-Level-Schlüssel in `plugin.json` auf. `name` ist der einzige erforderliche Schlüssel. Wenn ein Feldname ein Link ist, hat der verlinkte Abschnitt seine vollständigen Regeln.

124 

125Für Komponentenschlüssel wie `commands` und `hooks` zeigt [Komponentenpfadformen](#component-path-forms) jede akzeptierte Form mit einem Beispiel, und jeder Pfad folgt den [Pfadregeln](#path-rules) für das `./`-Präfix, Erweiterungen und Eindämmung.

126 

127| Feld | Typ | Beschreibung |

128| :----------------------------------- | :--------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

129| `$schema` | String | JSON-Schema-URL für Editor-Autovervollständigung. Claude Code ignoriert es beim Laden |

130| [`name`](#name) | String | Plugin-Identifier, erforderlich. Verwenden Sie Kebab-Case. Jede Komponente wird darunter namespaced |

131| [`displayName`](#displayname) | String | Name, der in der Benutzeroberfläche anstelle von `name` angezeigt wird |

132| [`version`](#version) | String | Versionszeichenfolge. Das Setzen hält Benutzer auf dieser Version, bis Sie sie ändern |

133| `description` | String | Kurze Erklärung, was das Plugin bietet |

134| `author` | Object | `name`, das erforderlich ist, plus optionale `email` und `url` |

135| `homepage` | String | Dokumentations-URL. Muss als URL analysierbar sein, oder das Plugin wird nicht geladen |

136| `repository` | String | Quell-Repository-URL. Nicht validiert |

137| `license` | String | SPDX-Identifier wie `MIT` oder `Apache-2.0` |

138| `keywords` | Array von Strings | Discovery-Tags |

139| [`metadata`](#metadata) | Object | Freiformobjekt für Ihre eigenen Daten. Claude Code liest es nicht |

140| [`defaultEnabled`](#defaultenabled) | Boolean | Ob das Plugin aktiviert startet, wenn der Benutzer es nicht gesetzt hat. Standard ist `true` |

141| [`dependencies`](#dependencies) | Array von Strings oder Objekten | Plugins, die aktiviert sein müssen, damit dieses funktioniert |

142| [`settings`](#settings) | Object | Einstellungen, die Claude Code anwendet, während das Plugin aktiviert ist. Nur `agent` und `subagentStatusLine` wirken sich aus |

143| [`userConfig`](#user-configuration) | Object | Werte, die Claude Code den Benutzer auffordert einzugeben, wenn das Plugin aktiviert ist |

144| [`channels`](#channels) | Array von Objekten | Nachrichtenkanäle, die das Plugin bereitstellt, jeweils an einen seiner MCP-Server gebunden |

145| `skills` | Pfad oder Array von Pfaden | Verzeichnisse zum Scannen nach Skills, jeweils ein Verzeichnis von `<name>/SKILL.md`-Ordnern oder ein Ordner mit `SKILL.md` direkt. `"."` benennt den Plugin-Root. Fügt zum Standard-`skills/`-Scan hinzu |

146| [`commands`](#commands) | Pfad, Array von Pfaden oder Objekt | Flache `.md`-Befehlsdateien, Verzeichnisse davon oder eine Objektzuordnung von Befehlsname zu `source` oder `content`. Ersetzt den Standard-`commands/`-Scan |

147| `agents` | Pfad oder Array von Pfaden | Agent-`.md`-Dateien. Verzeichnisse werden nicht akzeptiert. Ersetzt den Standard-`agents/`-Scan |

148| [`hooks`](#hooks) | Pfad, Objekt oder Array von beiden | `.json`-Hook-Dateien oder inline Hook-Konfiguration. Zusammen mit `hooks/hooks.json` geladen |

149| [`mcpServers`](#mcpservers) | Pfad, Objekt oder Array von beiden | `.json`-MCP-Konfigurationsdateien, `.mcpb`- oder `.dxt`-Bundles oder inline Server-Konfigurationen mit Namen als Schlüssel. Zusammen mit `.mcp.json` geladen; ein später deklarierter Server-Name ersetzt einen früheren |

150| [`lspServers`](#lspservers) | Pfad, Objekt oder Array von beiden | `.json`-LSP-Konfigurationsdateien oder inline Server-Konfigurationen mit Namen als Schlüssel. Zusammen mit `.lsp.json` geladen |

151| `outputStyles` | Pfad oder Array von Pfaden | Ausgabestil-Dateien oder Verzeichnisse. Ersetzt den Standard-`output-styles/`-Scan |

152| `workflows` | Pfad oder Array von Pfaden | [Workflow](/docs/de/workflows#distribute-a-workflow-in-a-plugin)-`.js`-Dateien oder Verzeichnisse. Ersetzt den Standard-`workflows/`-Scan |

153| `experimental` | Object | Container für `themes`, `monitors` und `evals`, deren Manifest-Form sich möglicherweise noch ändert |

154| `experimental.themes` | Pfad oder Array von Pfaden | Theme-Dateien oder Verzeichnisse. Ersetzt den Standard-`themes/`-Scan. Ein Top-Level-`themes`-Schlüssel wird immer noch geladen, mit einer `claude plugin validate`-Warnung |

155| [`experimental.monitors`](#monitors) | Pfad oder inline Array | Eine `.json`-Datei mit dem Monitors-Array oder das Array selbst. Standard ist `monitors/monitors.json`. Ein Top-Level-`monitors`-Schlüssel wird immer noch geladen, mit einer `claude plugin validate`-Warnung. Monitore laufen nur in interaktiven Sitzungen und nicht auf Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry |

156| `experimental.evals` | Pfad oder Array von Pfaden | Verzeichnis, das die [Eval-Fälle](/docs/de/plugin-evals#use-a-different-eval-directory) des Plugins enthält, wenn es nicht das Standard-`evals/`-Verzeichnis ist. `claude plugin eval --eval-dir` überschreibt es |

157 

158In der Spalte Typ ist ein Pfad ein String relativ zum Plugin-Root, z. B. `"./custom/commands"`.

159 

160<h3 id="name">

161 `name`

162</h3>

163 

164Der Plugin-Identifier. Er muss nicht leer sein, ohne Leerzeichen, `@`, `:`, Pfadtrennzeichen, Steuerzeichen oder bidirektionale Formatierungszeichen; verwenden Sie Kebab-Case.

165 

166Claude Code namespaced jede Komponente darunter, daher erscheint ein Agent `reviewer` im Plugin `deploy-tools` als `deploy-tools:reviewer`.

167 

168<h3 id="displayname">

169 `displayName`

170</h3>

171 

172Der Name, der in der Benutzeroberfläche anstelle von `name` angezeigt wird. Er kann Leerzeichen und beliebige Groß-/Kleinschreibung enthalten und wird nicht für Namespacing oder Lookup verwendet.

173 

174Für ein Marketplace-installiertes Plugin hat ein `displayName` im [Marketplace-Eintrag](/docs/de/plugins/marketplace-reference#plugin-entries) Vorrang vor diesem Wert.

175 

176<h3 id="version">

177 `version`

178</h3>

179 

180Eine Versionszeichenfolge, nicht gegen Semver überprüft. Das Setzen fixiert das Plugin auf diese Version, bis Sie es ändern; siehe [Versionen und Updates](/docs/de/plugins/loading#versions-and-updates). Ein Plugin mit einer [`command`-Quelle](/docs/de/plugins/marketplace-reference), ein Plugin aus einem [Marketplace, das auf claude.ai gehostet wird](/docs/de/plugins/install#add-from-claude-ai), und ein Plugin, das [an Ort und Stelle geladen wird](/docs/de/plugins/loading#find-plugins-on-disk) aus einem Marketplace, der als lokales Verzeichnis hinzugefügt wurde, werden nicht durch dieses Feld fixiert.

181 

182<h3 id="metadata">

183 `metadata`

184</h3>

185 

186Ein Freiformobjekt für Ihre eigenen Daten, z. B. Katalog- oder Berechtigungsfelder. Claude Code liest es nicht. Erfordert Claude Code v2.1.222 oder später.

187 

188<h3 id="defaultenabled">

189 `defaultEnabled`

190</h3>

191 

192Ob das Plugin aktiviert startet, wenn der Benutzer es nicht in [`enabledPlugins`](/docs/de/settings-reference#enabledplugins) gesetzt hat. Standard ist `true`. Ein Plugin, von dem ein aktiviertes Plugin abhängt, startet unabhängig aktiviert. Das gleiche Feld im Marketplace-Eintrag überschreibt dieses.

193 

194Sobald der `enabledPlugins`-Eintrag eines Benutzers geschrieben wird, bleibt er über Plugin-Updates hinweg bestehen, daher ändert das Ändern von `defaultEnabled` in einer späteren Version die Einstellung für einen bestehenden Benutzer nicht.

195 

196<h3 id="dependencies">

197 `dependencies`

198</h3>

199 

200Plugins, die aktiviert sein müssen, damit dieses funktioniert. Jeder Eintrag ist `"name"`, `"name@marketplace"` oder `{ "name": "...", "marketplace": "...", "version": "..." }`. Bare Namen werden gegen diesen Plugin-eigenen Marketplace aufgelöst. Siehe [Abhängigkeitsbeschränkungen](/docs/de/plugins/dependencies).

201 

202<h3 id="settings">

203 `settings`

204</h3>

205 

206Einstellungen, die Claude Code anwendet, während das Plugin aktiviert ist. Nur `agent` und `subagentStatusLine` wirken sich aus; andere Schlüssel werden beim Laden gelöscht. Eine `settings.json` im Plugin-Root hat Vorrang vor diesem Schlüssel. Siehe [Standardeinstellungen](/docs/de/plugins/components#default-settings).

207 

208<h2 id="component-path-forms">

209 Komponentenpfadformen

210</h2>

211 

212Jeder Komponentenschlüssel akzeptiert einen Pfad relativ zum Plugin-Root. `hooks`, `mcpServers`, `lspServers` und `experimental.monitors` akzeptieren auch inline Konfiguration, `commands` akzeptiert auch eine Objektzuordnung, und `mcpServers` akzeptiert auch MCP-Bundle-Pfade und URLs. Die folgenden Beispiele zeigen jede akzeptierte Form einmal. Für das, was jede Komponente zur Laufzeit tut, siehe [Plugin-Komponenten](/docs/de/plugins/components).

213 

214<h3 id="path-only-fields">

215 Nur-Pfad-Felder

216</h3>

217 

218`agents`, `skills`, `outputStyles`, `workflows` und `experimental.themes` nehmen einen Pfad oder ein Array von Pfaden. `agents`-Einträge müssen `.md`-Dateien sein, und `skills`-Einträge müssen Verzeichnisse sein. Die anderen drei akzeptieren ein Verzeichnis oder eine Datei.

219 

220```json theme={null}

221{

222 "agents": ["./custom-agents/reviewer.md", "./custom-agents/tester.md"],

223 "skills": ["./extra-skills/", "."],

224 "outputStyles": "./styles/"

225}

226```

227 

228<h3 id="commands">

229 `commands`

230</h3>

231 

232`commands` nimmt einen Pfad, ein Array von Pfaden oder eine Objektzuordnung. Ein Pfad benennt eine flache `.md`-Befehlsdatei oder ein Verzeichnis. In der Objektzuordnung wird jeder Schlüssel zum Befehlsnamen nach dem Plugin-Präfix. Zum Beispiel wird `"about"` im Plugin `deploy-tools` als `/deploy-tools:about` ausgeführt.

233 

234Jeder Wert setzt genau einen von `source` oder `content`, und ein Eintrag, der beide oder keinen setzt, schlägt die Validierung fehl. Die anderen Felder in dieser Tabelle sind optional:

235 

236| Feld | Typ | Beschreibung |

237| :------------- | :--------------- | :------------------------------------------------------------------------- |

238| `source` | string | Pfad zur Markdown-Datei des Befehls, relativ zum Plugin-Root |

239| `content` | string | Inline-Markdown für den Befehlstext, anstelle von `source` |

240| `description` | string | Beschreibung, die für den Befehl angezeigt wird |

241| `argumentHint` | string | Argument-Hinweis, der nach dem Befehlsnamen angezeigt wird, z. B. `[file]` |

242| `model` | string | Standardmodell für den Befehl |

243| `allowedTools` | array of strings | Tools, die der Befehl ohne Aufforderung verwenden darf |

244 

245Diese Zuordnung deklariert einen Befehl aus einer Datei und einen aus inline Inhalt:

246 

247```json theme={null}

248{

249 "commands": {

250 "status": { "source": "./commands/status.md", "argumentHint": "[env]" },

251 "about": { "content": "Explain what this plugin provides." }

252 }

253}

254```

255 

256<h3 id="hooks">

257 `hooks`

258</h3>

259 

260`hooks` nimmt einen `.json`-Dateipfad, ein inline Hooks-Objekt in der gleichen Form wie [`hooks` in `settings.json`](/docs/de/hooks#configuration), oder ein Array, das beide mischt. Für Hook-Ereignisse und Handler-Felder siehe die [Hooks-Referenz](/docs/de/hooks#hook-events).

261 

262Claude Code führt zusammen, was Sie mit `hooks/hooks.json` deklarieren, wenn diese Datei existiert.

263 

264```json theme={null}

265{

266 "hooks": [

267 "./config/extra-hooks.json",

268 {

269 "PostToolUse": [

270 {

271 "matcher": "Write|Edit",

272 "hooks": [

273 { "type": "command", "command": "\"${CLAUDE_PLUGIN_ROOT}\"/scripts/format.sh" }

274 ]

275 }

276 ]

277 }

278 ]

279}

280```

281 

282<h3 id="mcpservers">

283 `mcpServers`

284</h3>

285 

286`mcpServers` nimmt einen `.json`-Dateipfad, einen MCP-Bundle-Pfad oder eine URL, eine inline Zuordnung oder ein Array, das diese mischt. Für Server-Konfigurationsfelder siehe [Plugin-bereitgestellte MCP-Server](/docs/de/mcp#plugin-provided-mcp-servers).

287 

288Claude Code lädt zuerst `.mcp.json` im Plugin-Root, dann jede deklarierte Form in Reihenfolge. Ein später deklarierter Server-Name ersetzt einen früheren.

289 

290Ein `mcpServers`-Wert nimmt eine dieser Formen:

291 

292| Form | Beispielwert | Was Claude Code tut |

293| :---------------- | :------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------- |

294| `.json`-Dateipfad | `"./mcp/servers.json"` | Liest die Datei als `mcpServers`-Zuordnung |

295| MCP-Bundle-Pfad | `"./bundle.mcpb"` | Extrahiert das `.mcpb`- oder `.dxt`-Bundle in `.mcpb-cache/` im Plugin-Root und liest seine Server-Konfiguration |

296| MCP-Bundle-URL | `"https://example.com/server.mcpb"` | Lädt das Bundle in `.mcpb-cache/` herunter, dann liest es |

297| Inline-Zuordnung | `{ "deploy-api": { "command": "node", "args": ["${CLAUDE_PLUGIN_ROOT}/server.js"] } }` | Verwendet die Zuordnung als Server-Konfigurationen mit Namen als Schlüssel |

298 

299Ein Bundle-Pfad oder eine URL muss mit `.mcpb` oder `.dxt` enden. Jede andere Erweiterung schlägt die Validierung fehl.

300 

301<h3 id="lspservers">

302 `lspServers`

303</h3>

304 

305`lspServers` nimmt einen `.json`-Dateipfad, eine inline Zuordnung von Server-Name zu Konfiguration oder ein Array von beiden.

306 

307Claude Code lädt zuerst `.lsp.json` im Plugin-Root, dann jede deklarierte Konfiguration in Reihenfolge. Ein später deklarierter Server-Name ersetzt einen früheren.

308 

309Jede Server-Konfiguration ist ein striktes Objekt mit diesen Feldern. Ein unbekannter Schlüssel schlägt die Validierung fehl.

310 

311| Feld | Erforderlich | Beschreibung |

312| :---------------------- | :----------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

313| `command` | Ja | Language-Server-Binärdatei. Keine Leerzeichen, es sei denn, der Wert beginnt mit `/`; Argumente in `args` einfügen |

314| `extensionToLanguage` | Ja | Zuordnung von Dateierweiterung zu LSP-Sprach-ID, mindestens ein Eintrag. Schlüssel beginnen mit einem Punkt, z. B. `".go"` |

315| `args` | Nein | Argumente, die an den Server übergeben werden |

316| `transport` | Nein | Kommunikationstransport: `stdio` (Standard) oder `socket`. Claude Code akzeptiert `socket`, führt aber jeden Server über stdio aus, daher gelten die stdout-Protokollregeln für alle Server |

317| `env` | Nein | Umgebungsvariablen für den Server-Prozess |

318| `initializationOptions` | Nein | Optionen, die in der Initialize-Anfrage gesendet werden |

319| `settings` | Nein | Einstellungen, die von `workspace/didChangeConfiguration` gesendet werden |

320| `workspaceFolder` | Nein | Workspace-Ordnerpfad für den Server |

321| `startupTimeout` | Nein | Millisekunden zum Warten auf den Start, eine positive Ganzzahl |

322| `shutdownTimeout` | Nein | Millisekunden zum Warten auf ein ordnungsgemäßes Herunterfahren, eine positive Ganzzahl. Wenn das Timeout abläuft, beendet Claude Code den Server-Prozess. Wenn nicht gesetzt, gilt kein Timeout |

323| `restartOnCrash` | Nein | Ob der Server nach einem Absturz neu gestartet werden soll. Standard ist `true`. Setzen Sie auf `false`, um einen abgestürzten Server gestoppt zu lassen, anstatt ihn neu zu starten |

324| `maxRestarts` | Nein | Neustartversuche, bevor aufgegeben wird, null oder mehr |

325| `diagnostics` | Nein | Ob Diagnosen nach Bearbeitungen in den Kontext gepusht werden sollen. Standard ist `true` |

326 

327Diese inline Konfiguration führt `gopls` für `.go`-Dateien aus:

328 

329```json theme={null}

330{

331 "lspServers": {

332 "go": {

333 "command": "gopls",

334 "args": ["serve"],

335 "extensionToLanguage": { ".go": "go" }

336 }

337 }

338}

339```

340 

341Für die Language-Server, die Anthropic als Plugins veröffentlicht, und wie sich die Server zur Laufzeit verhalten, siehe [Code-Intelligenz](/docs/de/plugins/code-intelligence).

342 

343<h3 id="monitors">

344 `monitors`

345</h3>

346 

347`experimental.monitors` nimmt einen `.json`-Dateipfad oder das inline Array. Wenn Sie den Schlüssel weglassen, lädt Claude Code `monitors/monitors.json`, falls vorhanden.

348 

349Jeder Eintrag ist ein striktes Objekt mit diesen Feldern.

350 

351| Feld | Erforderlich | Beschreibung |

352| :------------ | :----------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

353| `name` | Ja | Identifier, eindeutig im Plugin |

354| `command` | Ja | Shell-Befehl, den Claude Code als persistenten Hintergrundprozess im Sitzungsarbeitsverzeichnis ausführt |

355| `description` | Ja | Kurze Zusammenfassung, die im Task-Panel und in Benachrichtigungszusammenfassungen angezeigt wird |

356| `when` | Nein | Mit `"always"`, dem Standard, startet der Monitor beim Sitzungsstart und beim Plugin-Reload. Mit `"on-skill-invoke:<skill>"` startet er das erste Mal, wenn dieser Skill ausgeführt wird |

357 

358Dieses inline Array deklariert einen Monitor, der das erste Mal startet, wenn der `deploy`-Skill ausgeführt wird:

359 

360```json theme={null}

361{

362 "experimental": {

363 "monitors": [

364 {

365 "name": "deploy-status",

366 "command": "\"${CLAUDE_PLUGIN_ROOT}\"/scripts/poll-deploy.sh",

367 "description": "Deployment status changes",

368 "when": "on-skill-invoke:deploy"

369 }

370 ]

371 }

372}

373```

374 

375Ein Monitor-`command` kann nicht auf `${user_config.*}` verweisen. Siehe [Felder, die durch eine Shell laufen](#fields-that-run-through-a-shell).

376 

377<h2 id="path-rules">

378 Pfadregeln

379</h2>

380 

381Jeder Komponentenpfad in einem Manifest ist relativ zum Plugin-Root und muss mit `./` beginnen. Ein Pfad wie `commands/foo.md` schlägt die Validierung fehl. `skills` und `mcpServers` akzeptieren jeweils eine Form außerhalb dieser Regel:

382 

383* **`skills`**: akzeptiert auch `"."`. Sowohl `"."` als auch `"./"` bezeichnen den Plugin-Root. Vor v2.1.221 schlugen `"."` die Manifest-Validierung fehl, daher verwenden Sie `"./"`, wenn das Plugin auf früheren Versionen geladen werden muss

384* **`mcpServers`**: akzeptiert auch eine `https://`-Bundle-URL

385 

386<h3 id="containment-and-existence">

387 Eindämmung und Existenz

388</h3>

389 

390Jeder Komponentenpfad muss sich im Plugin-Root auflösen und muss existieren. `claude plugin validate` überprüft nicht die `outputStyles`-, `lspServers`-, `monitors`- oder `themes`-Pfade, daher schlägt ein schlechter Pfad in diesen Feldern nur fehl, wenn das Plugin geladen wird:

391 

392* **Eindämmung**: Ein Pfad, der sich außerhalb des Plugin-Root auflöst, wird nicht geladen, und die `/plugin`-Registerkarte **Errors** zeigt `<component> path escapes plugin directory: <path>`. Ein Pfad mit `..` ist der übliche Fall, und `claude plugin validate` meldet ihn als `Path contains ".." which could be a path traversal attempt`

393* **Existenz**: Ein Pfad, der nicht existiert, wird nicht geladen, und die `/plugin`-Registerkarte **Errors** zeigt `<component> path not found: <path>`. `claude plugin validate` meldet ihn als `Path not found`

394 

395<h3 id="how-each-key-combines-with-its-default-location">

396 Wie jeder Schlüssel mit seinem Standardort kombiniert wird

397</h3>

398 

399Jeder Komponentenschlüssel ersetzt seinen Standardort, fügt zu ihm hinzu oder führt ihn zusammen:

400 

401* **Ersetzt den Standard**: `commands`, `agents`, `outputStyles`, `workflows`, `experimental.themes`, `experimental.monitors`. Wenn Sie `commands` setzen, wird das Standard-`commands/`-Verzeichnis nicht gescannt. Um den Standard zu behalten und mehr hinzuzufügen, listen Sie ihn explizit auf: `"commands": ["./commands/", "./extras/"]`

402* **Fügt zum Standard hinzu**: `skills`. Das `skills/`-Verzeichnis wird immer noch gescannt, und die aufgelisteten Verzeichnisse werden zusammen mit ihm geladen

403* **Führt zusammen**: `hooks`, `mcpServers`, `lspServers`. Die Standarddatei wird zuerst geladen, und was das Manifest deklariert, wird zusammengeführt, wie unter [Komponentenpfadformen](#component-path-forms) beschrieben

404 

405Wenn ein Plugin einen Standardordner wie `commands/` hat und auch den Manifest-Schlüssel setzt, der ihn ersetzt, lädt Claude Code die Manifest-Pfade und nicht den Ordner. `claude plugin list` und die `/plugin`-Schnittstelle zeigen dann die Warnung `Default <folder>/ folder is ignored because the manifest sets "<key>"`.

406 

407Um die Warnung zu vermeiden, setzen Sie den Schlüssel auf einen Pfad in diesem Ordner: `"commands": ["./commands/deploy.md"]` benennt eine Datei im Standardordner und erzeugt keine Warnung.

408 

409<h2 id="user-configuration">

410 Benutzerkonfiguration

411</h2>

412 

413`userConfig` deklariert Werte, die Claude Code den Benutzer auffordert einzugeben, wenn das Plugin aktiviert ist, damit Benutzer `settings.json` nicht selbst bearbeiten.

414 

415Schlüssel sind Identifier aus Buchstaben, Ziffern und Unterstrichen und können nicht mit einer Ziffer beginnen.

416 

417Jeder Wert ist ein striktes Objekt mit diesen Feldern. Ein unbekannter Schlüssel schlägt die Validierung fehl.

418 

419| Feld | Erforderlich | Beschreibung |

420| :------------ | :----------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

421| `type` | Ja | Einer von `string`, `number`, `boolean`, `directory` oder `file` |

422| `title` | Ja | Label, das im Konfigurationsdialog angezeigt wird |

423| `description` | Ja | Hilfetext, der unter dem Feld angezeigt wird |

424| `required` | Nein | Wenn `true`, akzeptiert der Konfigurationsdialog keinen leeren Wert |

425| `default` | Nein | Wert, der verwendet wird, wenn der Benutzer nichts bereitstellt: ein String, eine Zahl, ein Boolean oder ein Array von Strings |

426| `options` | Nein | Für `string`, die Werte, die das Feld akzeptiert, angezeigt als Picker in `/config`. Siehe [Feld auf feste Optionen beschränken](#limit-a-field-to-fixed-options). Erfordert Claude Code v2.1.271 oder später |

427| `multiple` | Nein | Für `string`, erlaubt ein Array von Strings |

428| `sensitive` | Nein | Wenn `true`, maskiert die Eingabe und speichert den Wert in sicherer Speicherung anstelle von `settings.json` |

429| `min` / `max` | Nein | Grenzen für `number` |

430 

431Jede Option jedes aktivierten Plugins erscheint auch als Zeile im `/config`-Panel, außer `sensitive`-Optionen und `multiple`-Listen. Die `/config`-Zeilen erfordern Claude Code v2.1.269 oder später.

432 

433Diese `userConfig` deklariert einen Endpunkt und ein maskiertes Token:

434 

435```json theme={null}

436{

437 "userConfig": {

438 "api_endpoint": {

439 "type": "string",

440 "title": "API endpoint",

441 "description": "Your team's API endpoint"

442 },

443 "api_token": {

444 "type": "string",

445 "title": "API token",

446 "description": "API authentication token",

447 "sensitive": true

448 }

449 }

450}

451```

452 

453<h3 id="limit-a-field-to-fixed-options">

454 Feld auf feste Optionen beschränken

455</h3>

456 

457Setzen Sie `options` auf ein `userConfig`-Feld, um Benutzer seinen Wert aus einer festen Liste auszuwählen.

458 

459Um ein `tone`-Feld auf drei Optionen zu beschränken, listen Sie sie in `options` auf und setzen Sie `default` auf eine davon:

460 

461```json theme={null}

462{

463 "userConfig": {

464 "tone": {

465 "type": "string",

466 "title": "Tone",

467 "description": "Voice for generated replies",

468 "options": ["neutral", "warm", "formal"],

469 "default": "neutral"

470 }

471 }

472}

473```

474 

475Wenn Sie `options` auf einem beliebigen Feld deklarieren, können Benutzer auf Claude Code-Versionen vor v2.1.271 das Plugin nicht laden.

476 

477`options` gilt für ein `string`-Feld, das nicht `multiple` oder `sensitive` ist. Setzen Sie `default` auf einen der aufgelisteten Werte, oder setzen Sie `required: true`, damit der Benutzer einen auswählen muss. Jede Option ist ein einfaches Label von 1 bis 64 Zeichen, und `claude plugin validate`, das Sie in Ihrer Shell ausführen, meldet alles andere, das es ablehnt. Ein Plugin, dessen `options` diese Regeln brechen, wird nicht geladen.

478 

479<h3 id="where-values-are-stored">

480 Wo Werte gespeichert werden

481</h3>

482 

483Nicht-sensitive Werte werden unter [`pluginConfigs`](/docs/de/settings-reference#pluginconfigs) in der `settings.json` des Benutzers gespeichert. Sensitive Werte gehen stattdessen in den sicheren Credential-Store der Plattform. Die [Einstellungsseite](/docs/de/settings-reference#pluginconfigs) listet auf, welche Einstellungsdateien `pluginConfigs` gelesen werden.

484 

485<h3 id="reference-a-saved-value">

486 Einen gespeicherten Wert referenzieren

487</h3>

488 

489Referenzieren Sie einen gespeicherten Wert, wo das Plugin ihn benötigt, in einer von zwei Formen:

490 

491* **`${user_config.KEY}`**: ersetzt in MCP-Server-Konfiguration, LSP-Server-Konfiguration, [Exec-Form](/docs/de/hooks#exec-form-and-shell-form)-Hook-`args` und Skill- und Agent-Inhalt. In Skill- und Agent-Inhalt werden nur nicht-sensitive Werte ersetzt, und ein sensitive Wert dort wird zu einem Platzhalter

492* **`CLAUDE_PLUGIN_OPTION_<KEY>`**: exportiert zu Hook-Prozessen für jede Option, mit `<KEY>` in Großbuchstaben. Ein Shell-Form-Hook liest `$CLAUDE_PLUGIN_OPTION_API_TOKEN` für `api_token`

493 

494<h3 id="fields-that-run-through-a-shell">

495 Felder, die durch eine Shell laufen

496</h3>

497 

498Shell-Form-Hook-Befehle, Monitor-Befehle und MCP-[`headersHelper`](/docs/de/mcp#use-dynamic-headers-for-custom-authentication) lehnen `${user_config.*}` ab. Eine Komponente, die darauf in einem dieser Felder verweist, schlägt mit einem [Fehler](/docs/de/errors#plugin-command-references-user-config) fehl, anstatt zu laufen, weil der Feldwert an eine Shell übergeben wird, die den ersetzten Wert neu analysieren würde.

499 

500Die Tabelle zeigt, wie der Wert stattdessen jedes dieser Felder erreichen kann.

501 

502| Feld | Wie der Wert es erreichen kann |

503| :---------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

504| Shell-Form-Hook-Befehle | Verwenden Sie [Exec-Form](/docs/de/hooks#exec-form-and-shell-form) mit `args`, oder lesen Sie `CLAUDE_PLUGIN_OPTION_<KEY>` aus der Hook-Umgebung |

505| Monitor-Befehle | Nicht durch Claude Code. Monitor-Prozesse erhalten `CLAUDE_PLUGIN_OPTION_<KEY>` nicht, daher muss das Monitor-Skript den Wert selbst abrufen |

506| MCP-`headersHelper` | Nicht durch Claude Code. Die Helper-Umgebung trägt `CLAUDE_PLUGIN_ROOT`, `CLAUDE_CODE_MCP_SERVER_NAME` und `CLAUDE_CODE_MCP_SERVER_URL`, aber keine Optionswerte, daher muss das Helper-Skript den Wert selbst abrufen |

507 

508<h2 id="channels">

509 Kanäle

510</h2>

511 

512`channels` deklariert die Nachrichtenkanäle, die ein Plugin bereitstellt, z. B. eine Brücke zu einer Chat-App. Wenn Sie einen deklarieren, kann Claude Code auffordern, die Kanalkonfiguration zu konfigurieren, wenn das Plugin aktiviert ist. Für wie der Server Nachrichten injiziert, siehe die [Kanäle-Referenz](/docs/de/channels-reference#package-as-a-plugin).

513 

514Jeder Eintrag ist ein striktes Objekt, das an einen der MCP-Server des Plugins gebunden ist, mit diesen Feldern:

515 

516| Feld | Erforderlich | Beschreibung |

517| :------------ | :----------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

518| `server` | Ja | Schlüssel des MCP-Servers in diesem Plugin's `mcpServers`, an den der Kanal gebunden ist |

519| `displayName` | Nein | Name, der im Konfigurationsdialog-Titel angezeigt wird. Standard ist der Server-Name |

520| `userConfig` | Nein | Optionen zum Auffordern, in der gleichen Form wie [Top-Level-`userConfig`](#user-configuration). Gespeicherte Werte ersetzen `${user_config.KEY}`-Referenzen in der Server-`env` |

521 

522Dieses Manifest bindet einen Kanal an den `telegram`-MCP-Server des Plugins und fordert ein Bot-Token auf, das sich in die Server-`env` ersetzt:

523 

524```json theme={null}

525{

526 "mcpServers": {

527 "telegram": {

528 "command": "node",

529 "args": ["${CLAUDE_PLUGIN_ROOT}/server.js"],

530 "env": { "BOT_TOKEN": "${user_config.bot_token}" }

531 }

532 },

533 "channels": [

534 {

535 "server": "telegram",

536 "displayName": "Telegram",

537 "userConfig": {

538 "bot_token": {

539 "type": "string",

540 "title": "Bot token",

541 "description": "Telegram bot token",

542 "sensitive": true

543 }

544 }

545 }

546 ]

547}

548```

549 

550<h2 id="environment-variables">

551 Umgebungsvariablen

552</h2>

553 

554Claude Code stellt drei Pfadvariablen für Plugin-Komponenten bereit. Referenzieren Sie sie als `${NAME}` in den Feldern, die unter [Wo jede Variable sich auflöst](#where-each-variable-resolves) aufgelistet sind, und lesen Sie sie als Umgebungsvariablen in den Prozessen, die sie erhalten.

555 

556| Variable | Löst sich auf zu | Verwenden Sie sie für |

557| :---------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------- |

558| `${CLAUDE_PLUGIN_ROOT}` | Absoluter Pfad der installierten Version des Plugins | Skripte, Binärdateien und Konfigurationsdateien, die mit dem Plugin gebündelt sind |

559| `${CLAUDE_PLUGIN_DATA}` | `~/.claude/plugins/data/<id>/`, erstellt bei erster Referenz und über Plugin-Updates hinweg beibehalten. `<id>` ist der Plugin-Identifier mit jedem Zeichen außer einem Buchstaben, einer Ziffer, `_` oder `-` ersetzt durch `-` | Installierte Abhängigkeiten wie `node_modules`, generierter Code und Caches |

560| `${CLAUDE_PROJECT_DIR}` | Das Projekt-Root | Projekt-lokale Skripte und Konfigurationsdateien |

561 

562`${CLAUDE_PLUGIN_ROOT}` ändert sich, wenn das Plugin aktualisiert wird, daher schreiben Sie keinen Zustand dort. Für wo sich der Root bewegt und wann das alte Verzeichnis bereinigt wird, siehe die [Ladenseite](/docs/de/plugins/loading).

563 

564Wenn Sie das Plugin von der letzten Stelle, an der es installiert ist, deinstallieren, wird das `${CLAUDE_PLUGIN_DATA}`-Verzeichnis gelöscht, es sei denn, Sie übergeben [`--keep-data`](/docs/de/plugins/cli-reference).

565 

566<h3 id="where-each-variable-resolves">

567 Wo jede Variable sich auflöst

568</h3>

569 

570In jeder Plugin-Komponente lösen sich `${...}`-Referenzen inline in spezifischen Feldern auf, und einige Komponenten erhalten die Variablen auch in ihrer Prozessumgebung:

571 

572| Plugin-Komponente | Felder, wo `${...}` sich auflöst | Exportiert zum Prozess |

573| :-------------------------------- | :------------------------------------------ | :------------------------------------------------------------------------------------------------ |

574| Hook-Befehle | Überall in `command` und `args` | `CLAUDE_PLUGIN_ROOT`, `CLAUDE_PLUGIN_DATA`, `CLAUDE_PROJECT_DIR` und `CLAUDE_PLUGIN_OPTION_<KEY>` |

575| Monitor-Befehle | Überall in `command` | Nicht exportiert |

576| MCP-`stdio`-Server | `command`, `args`, `env` | `CLAUDE_PLUGIN_ROOT`, `CLAUDE_PLUGIN_DATA` |

577| MCP-`http`-, `sse`-, `ws`-Server | `url`, `headers`, `headersHelper` | Nicht anwendbar |

578| LSP-Server | `command`, `args`, `env`, `workspaceFolder` | `CLAUDE_PLUGIN_ROOT`, `CLAUDE_PLUGIN_DATA`, `CLAUDE_PROJECT_DIR` |

579| Skill-, Befehls- und Agent-Inhalt | Überall im Markdown-Text | Nicht anwendbar |

580 

581Die Variablen sind nicht in der Umgebung von Befehlen vorhanden, die Claude durch das Bash-Tool ausführt, in der Hauptsitzung oder in einem Subagent. In Skill-, Befehls- und Agent-Inhalt schreiben Sie die `${...}`-Referenz stattdessen im Markdown-Text, und Claude Code ersetzt den Pfad inline, wenn es den Inhalt lädt.

582 

583<h3 id="quoting-and-path-separators">

584 Anführungszeichen und Pfadtrennzeichen

585</h3>

586 

587Halten Sie jeden ersetzten Pfad ein einzelnes Argument:

588 

589* **Hook-Befehle**: Verwenden Sie [Exec-Form](/docs/de/hooks#exec-form-and-shell-form) mit `args`, damit jeder Pfad ein Argument ohne Anführungszeichen ist

590* **Shell-Form-Hooks und Monitor-Befehle**: Wickeln Sie die Variable in doppelte Anführungszeichen ein, damit ein Pfad mit Leerzeichen ein Wort bleibt

591 

592Dieser Shell-Form-Hook führt ein Skript aus, das mit dem Plugin gebündelt ist:

593 

594```json theme={null}

595{

596 "hooks": {

597 "PostToolUse": [

598 {

599 "hooks": [

600 {

601 "type": "command",

602 "command": "\"${CLAUDE_PLUGIN_ROOT}\"/scripts/process.sh"

603 }

604 ]

605 }

606 ]

607 }

608}

609```

610 

611Auf Windows verwenden die ersetzten Pfade Schrägstriche, damit eine Shell Backslashes nicht als Escapes liest.

612 

613<h2 id="standard-layout">

614 Standardlayout

615</h2>

616 

617Jeder Komponententyp hat einen Standardort unter dem Plugin-Root, der verwendet wird, wenn das Manifest nicht anderswo verweist.

618 

619| Komponente | Standardort | Inhalt |

620| :------------------ | :--------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

621| Manifest | `.claude-plugin/plugin.json` | Plugin-Metadaten und Konfiguration. Optional |

622| Skills | `skills/` | Ein `<name>/SKILL.md` pro Skill. Ein Plugin mit `SKILL.md` im Root, kein `skills/` und kein `skills`-Schlüssel wird als einzelner Skill geladen |

623| Befehle | `commands/` | Flache Markdown-Befehlsdateien. Bevorzugen Sie `skills/` für neue Plugins |

624| Agenten | `agents/` | Agent-Markdown-Dateien. Unterordner sind Teil des [Agent-Namens](/docs/de/plugins/components#agents) |

625| Hooks | `hooks/hooks.json` | Hook-Konfiguration |

626| MCP-Server | `.mcp.json` | MCP-Server-Definitionen |

627| LSP-Server | `.lsp.json` | LSP-Server-Konfigurationen |

628| Ausgabestile | `output-styles/` | Ausgabestil-Markdown-Dateien |

629| Workflows | `workflows/` | Workflow-`.js`-Dateien |

630| Themes | `themes/` | Theme-JSON-Dateien |

631| Monitore | `monitors/monitors.json` | Das Monitors-Array |

632| Ausführbare Dateien | `bin/` | Dateien hier sind auf dem Bash-Tool's `PATH`, während das Plugin aktiviert ist, daher führt Claude sie als bloße Befehle aus. claude.ai und Cowork installieren kein Plugin, das dieses Verzeichnis hat, einschließlich eines, das Sie [durch claude.ai-Organisationseinstellungen verteilen](/docs/de/plugins/host-marketplace#distribute-through-organization-settings) |

633| Einstellungen | `settings.json` | `agent`- und `subagentStatusLine`-Standards, die angewendet werden, während das Plugin aktiviert ist |

634 

635Ein Plugin, das jeden Standardort verwendet, plus einen `scripts/`-Ordner, den seine Hooks aufrufen, ist wie folgt angeordnet:

636 

637```text theme={null}

638deploy-tools/

639├── .claude-plugin/

640│ └── plugin.json

641├── skills/

642│ └── deploy/

643│ └── SKILL.md

644├── commands/

645│ └── status.md

646├── agents/

647│ └── reviewer.md

648├── hooks/

649│ └── hooks.json

650├── monitors/

651│ └── monitors.json

652├── output-styles/

653│ └── terse.md

654├── themes/

655│ └── dracula.json

656├── workflows/

657│ └── release-audit.js

658├── bin/

659│ └── deploy-tool

660├── scripts/

661│ └── format.sh

662├── settings.json

663├── .mcp.json

664└── .lsp.json

665```

666 

667Um durch dieses Layout zu klicken und zu lesen, was jede Datei tut, öffnen Sie den [Plugin-Explorer](/docs/de/plugins/components#explore-the-plugin-directory).

668 

669Eine `CLAUDE.md` im Plugin-Root wird nicht als Kontext geladen, und `claude plugin validate` warnt, wenn es eine findet. Um Anweisungen einzuschließen, die in Claude's Kontext geladen werden, legen Sie sie in einen Skill.

670 

671<h2 id="marketplace-entries-and-the-manifest">

672 Marketplace-Einträge und das Manifest

673</h2>

674 

675Ein [Marketplace-Eintrag](/docs/de/plugins/marketplace-reference) akzeptiert jedes Feld auf dieser Seite neben [seinen eigenen Feldern](/docs/de/plugins/marketplace-reference#plugin-entries), einschließlich `strict`.

676 

677Das `strict`-Feld entscheidet, ob der Eintrag Komponenten zu einem Plugin hinzufügen darf, das sein eigenes `plugin.json` hat. Es ist standardmäßig `true`.

678 

679<h3 id="how-entry-fields-combine-with-plugin-json">

680 Wie Eintragsfelder mit `plugin.json` kombiniert werden

681</h3>

682 

683Der Eintrag dient entweder als Manifest, fügt Komponenten hinzu oder steht in Konflikt damit:

684 

685* **Kein `plugin.json`**: Der Eintrag ist das Manifest, unabhängig von `strict`. Eintrag `hooks` wird nur in der inline Objektform geladen. Für einen Dateipfad oder ein Array dort zeigt die `/plugin`-Registerkarte **Errors** einen `not yet supported in a marketplace entry`-Fehler

686* **`plugin.json` vorhanden, `strict` nicht gesetzt oder `true`**: Claude Code lädt das Manifest und hängt die `commands`, `agents`, `skills`, `outputStyles` und `themes` des Eintrags daran an. Für `hooks` ersetzen die Matcher des Eintrags für ein Ereignis die des Manifests für das gleiche Ereignis, und Ereignisse, die nur das Manifest deklariert, behalten ihre

687* **`plugin.json` vorhanden, `strict: false`**: Ein Eintrag, der `commands`, `agents`, `skills`, `hooks`, `outputStyles` oder `themes` deklariert, ist ein Konflikt, und das Plugin wird nicht geladen mit `Plugin <name> has conflicting manifests`

688 

689Wenn ein [Marketplace-Eintrag, dessen `source` das Marketplace-Root ist](/docs/de/plugins/marketplace-reference), spezifische `skills`-Unterverzeichnisse auflistet, werden nur diese Unterverzeichnisse geladen, und das Standard-`skills/`-Verzeichnis des Plugins wird nicht gescannt. Ein `skills`-Schlüssel im Manifest [fügt stattdessen zum Standard hinzu](#how-each-key-combines-with-its-default-location).

690 

691<h3 id="metadata-precedence">

692 Metadaten-Vorrang

693</h3>

694 

695Einige Metadatenfelder haben einen festen Vorrang unabhängig von `strict`:

696 

697* **`defaultEnabled` und Anzeigefelder**: Die `defaultEnabled` des Eintrags und seine [Anzeigefelder](/docs/de/plugins/marketplace-reference#entry-and-plugin-json) wie `displayName` überschreiben die des Manifests

698* **`version`**: Die `version` des Manifests überschreibt die des Eintrags

699* **`name`**: Wenn der Eintrag das Plugin unter einem anderen `name` als das Manifest auflistet, verwendet `enabledPlugins` den Eintragnamen, und Komponenten werden unter dem Manifest-Namen namespaced

700 

701Für die vollständige Vorrangtabelle siehe [Strict-Modus](/docs/de/plugins/marketplace-reference).

702 

703<h2 id="next-steps">

704 Nächste Schritte

705</h2>

706 

707* [Komponenten zu einem Plugin hinzufügen](/docs/de/plugins/components): Was jede Komponente zur Laufzeit tut, mit einem Beispiel, das validiert

708* [Marketplace-Referenz](/docs/de/plugins/marketplace-reference): Die Eintragsfelder, die ein Marketplace für Ihr Plugin setzen kann

709* [Plugin-Befehls-Referenz](/docs/de/plugins/cli-reference#plugin-validate): `claude plugin validate`-Flags und Ausgabe

710* [Plugins fehlerbeheben](/docs/de/plugins/troubleshooting#claude-plugin-validate-reports-errors): Jede Validierungsnachricht mit ihrer Lösung

Details

1> ## Documentation Index

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

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

4 

5# Marketplace-Referenz

6 

7> Vollständige Referenz für marketplace.json-Felder, Plugin-Einträge und die Plugin- und Marketplace-Quellobjekte mit Angabe ihrer Gültigkeitsbereiche.

8 

9`marketplace.json` ist die Datei, die einen Plugin-Marketplace definiert. Sie enthält den Namen des Marketplace, seinen Besitzer und einen Eintrag pro Plugin. Die Plugin-Quelle jedes Eintrags gibt an, woher Claude Code dieses Plugin abruft.

10 

11Eine Marketplace-Quelle ist ein separates Objekt, das angibt, woher Claude Code die Marketplace-Datei selbst abruft. Sie schreiben eine in den Einstellungen, oder Claude Code erstellt eine, wenn Sie `claude plugin marketplace add` ausführen.

12 

13Diese Referenz ist für Marketplace-Betreuer, die einen genauen Feldnamen oder -wert benötigen, und für Administratoren, die wissen müssen, welche `source`-Werte in [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces), [`strictKnownMarketplaces`](/docs/de/settings-reference#strictknownmarketplaces) und [`blockedMarketplaces`](/docs/de/plugins/org#restrict-what-users-can-install) gültig sind.

14 

15<Note>

16 Diese Fälle werden auf anderen Seiten behandelt:

17 

18 * **Erstellen oder Hosten eines Marketplace**: siehe [Marketplace erstellen](/docs/de/plugins/create-marketplace) und [Marketplace hosten und verwalten](/docs/de/plugins/host-marketplace)

19 * **Allowlist- und Blocklist-Rezepte**: siehe [Plugins für Ihre Organisation verwalten](/docs/de/plugins/org)

20</Note>

21 

22Finden Sie den Abschnitt für das, was Sie schreiben oder lesen:

23 

24* **Die Marketplace-Datei**: [Top-Level-Felder](#top-level-fields) und [Plugin-Einträge](#plugin-entries)

25* **Die `source` eines Eintrags**: [Plugin-Quellen](#plugin-sources)

26* **Ein `source`-Objekt in Einstellungen**: [Marketplace-Quellen](#marketplace-sources)

27* **Ausgabe von [`claude plugin validate <path>`](/docs/de/plugins/cli-reference)**: [Validierungsmeldungen](#validation-messages), die jede Meldung dem Feld zuordnet, das sie benennt

28 

29<h2 id="marketplace-file">

30 Marketplace-Datei

31</h2>

32 

33Speichern Sie die Marketplace-Datei unter `.claude-plugin/marketplace.json` im Verzeichnis Ihres Marketplace. Wenn Sie die Datei an einer anderen Stelle im Repository speichern, müssen Benutzer den Marketplace in [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces) mit `path` in seiner Quelle deklarieren, da `claude plugin marketplace add` keine Option dafür hat.

34 

35Das Verzeichnis, das `.claude-plugin/` enthält, wird als Marketplace-Root bezeichnet, und jede relative Plugin-Quelle wird von dort aus aufgelöst, nicht von `.claude-plugin/`.

36 

37Jeder Benutzer registriert einen Marketplace pro `name`, daher kann ein Benutzer nicht zwei Marketplaces mit demselben Namen gleichzeitig registriert haben.

38 

39Claude Code ignoriert einen unbekannten Top-Level-Schlüssel oder Plugin-Eintrag-Schlüssel, anstatt ihn abzulehnen, daher wird ein Tippfehler stillschweigend geladen. `claude plugin validate` meldet jeden unbekannten Schlüssel als Warnung.

40 

41<h3 id="reserved-names">

42 Reservierte Namen

43</h3>

44 

45Sie können Ihrem Marketplace keinen der folgenden Namen geben:

46 

47* **Offizielle Marketplace-Namen**: `claude-code-marketplace`, `claude-code-plugins`, `claude-plugins-official`, `anthropic-marketplace`, `anthropic-plugins`, `agent-skills`, `anthropic-agent-skills`, `life-sciences`, `knowledge-work-plugins`, `claude-for-legal`, `claude-for-financial-services`, `financial-services-plugins`, `first-party-plugins` und `claude-tag-plugins`. Reserviert, es sei denn, der Marketplace stammt von einer `github`- oder `git`-[Marketplace-Quelle](#marketplace-sources) unter `github.com/anthropics/`.

48* **Community-Marketplace-Namen**: `claude-community`, `claude-plugins-community` und `healthcare`. Reserviert nach der gleichen Regel wie die offiziellen Namen.

49* **Plugin-Verzeichnisnamen**: `anthropic-plugin-directory` und `claude-plugin-directory`. Reserviert nach der gleichen Regel wie die offiziellen Namen.

50* **Namen, die einen offiziellen Marketplace imitieren**: Namen wie `official-claude-plugins` oder `claude-plugins-v2` und jeder Name, der ein Nicht-ASCII-Zeichen enthält. Der Fehler ist `Marketplace name impersonates an official Anthropic/Claude marketplace`. Ein Steuerzeichen oder bidirektionales Formatierungszeichen in einem Namen meldet auch `Marketplace name cannot contain control or bidirectional-formatting characters`.

51* <span id="reserved-name-spellings" />**Eine andere Schreibweise eines reservierten Namens**: ein Name, der sich von einem reservierten Namen nur durch einen nachgestellten Punkt oder durch ein Symbol anstelle eines Bindestrichs unterscheidet, daher zählt `claude.code.plugins` als `claude-code-plugins`. `claude plugin validate` akzeptiert einen solchen Namen; das Hinzufügen des Marketplace schlägt mit [`is another spelling of "<reserved>", a reserved marketplace name`](/docs/de/errors#marketplace-name-is-another-spelling-of-a-reserved-name) fehl, und ein bereits unter einem registrierter Marketplace wird nicht mehr geladen. Diese Überprüfung erfordert Claude Code v2.1.280 oder später.

52* **Namen, die Claude Code für Plugins verwendet, die nicht von einem Marketplace stammen**: `inline` für Plugins, die mit [`--plugin-dir`](/docs/de/cli-reference) geladen werden, `builtin` für integrierte Plugins, `skills-dir` für Plugins, die automatisch von [`.claude/skills/`](/docs/de/skills) geladen werden, und `synced` für Plugins, die von Ihrem claude.ai-Konto synchronisiert werden. `claude-plugin-test` ist ebenfalls reserviert. `skills-dir` erscheint auch als `{"source": "skills-dir"}` in `strictKnownMarketplaces` und `blockedMarketplaces`, beschrieben unter [Quellwerte, die nur in Richtlinienlisten gültig sind](#source-values-valid-only-in-policy-lists).

53* **`npm`, `pip`, `uv`, `cargo`, `github` und `gh`**: reserviert in jeder Schreibweise. Diese Überprüfung erfordert Claude Code v2.1.275 oder später.

54* **Namen, die mit `claudeai-` beginnen**: reserviert für Marketplaces, die auf claude.ai gehostet werden. `claude plugin marketplace add` lehnt jeden anderen Marketplace ab, der einen mit `Cannot add marketplace "<name>": names starting with "claudeai-" are reserved for marketplaces hosted on claude.ai` verwendet.

55 

56<h2 id="top-level-fields">

57 Top-Level-Felder

58</h2>

59 

60Die Tabelle listet jeden Schlüssel auf, den Claude Code aus `marketplace.json` liest. `name`, `owner` und `plugins` sind erforderlich.

61 

62| Feld | Typ | Beschreibung |

63| :----------------------------------------- | :--------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

64| `name` | string | Marketplace-Bezeichner. Keine Leerzeichen, Steuerzeichen oder bidirektionalen Formatierungszeichen, kein `/` oder `\`, kein `..` und nicht `.`. Siehe [Reservierte Namen](#reserved-names). Benutzer geben ihn nach `@` ein, wenn sie ein Plugin installieren |

65| `owner` | object | Informationen zum Betreuer. `name` ist erforderlich; `email` und `url` sind optional |

66| `plugins` | array | [Plugin-Einträge](#plugin-entries). Jeder Eintrag wird einzeln validiert, daher führt ein ungültiger Eintrag nicht zum Fehlschlag des Marketplace |

67| `$schema` | string | JSON-Schema-URL für Editor-Autovervollständigung. Wird beim Laden ignoriert |

68| `description` | string | Marketplace-Beschreibung, die Benutzern angezeigt wird. `claude plugin validate` warnt, wenn sie fehlt |

69| `version` | string | Marketplace-Manifest-Version |

70| `metadata.description`, `metadata.version` | string | Alternativer Speicherort für `description` und `version` |

71| `metadata.pluginRoot` | string | Verzeichnis, unter dem sich bare Plugin-Quellnamen auflösen. Siehe [Relative Pfad-Plugin-Quelle](#relative-path-plugin-source). Erfordert Claude Code v2.1.239 oder später |

72| `forceRemoveDeletedPlugins` | boolean | Wenn `true`, wird ein Plugin, das Sie aus `plugins` entfernen, auf den Maschinen der Benutzer deinstalliert. Siehe [Marketplace hosten und verwalten](/docs/de/plugins/host-marketplace) |

73| `allowCrossMarketplaceDependenciesOn` | array of strings | Marketplace-Namen, deren Plugins als Abhängigkeiten von Plugins dieses Marketplace installiert werden dürfen. Wenn Sie ein Plugin installieren, gilt nur die Liste im eigenen Marketplace dieses Plugins für seine gesamte Abhängigkeitskette. Siehe [Plugin-Abhängigkeiten](/docs/de/plugins/dependencies) |

74| `renames` | object | Zuordnung von einem früheren Plugin-`name` zu seinem aktuellen Namen oder zu `null` für ein Plugin, das Sie entfernt haben. Erfordert Claude Code v2.1.193 oder später. Siehe [Marketplace hosten und verwalten](/docs/de/plugins/host-marketplace) |

75 

76<h2 id="plugin-entries">

77 Plugin-Einträge

78</h2>

79 

80Jedes Objekt im Top-Level-Array `plugins` von `marketplace.json` benennt ein Plugin und gibt an, woher es abgerufen werden soll. `name` und `source` sind erforderlich.

81 

82Ein Eintrag akzeptiert auch jedes [`plugin.json`-Feld](/docs/de/plugins/manifest-reference), wie `description`, `version`, `author`, `commands` und `hooks`. Für den Fall, dass diese Felder gelten, siehe [Wie ein Eintrag mit plugin.json kombiniert wird](#entry-and-plugin-json).

83 

84Die Tabelle listet die eigenen Felder des Eintrags und die Manifest-Felder auf, deren Bedeutung sich in einem Eintrag ändert.

85 

86| Feld | Typ | Beschreibung |

87| :--------------- | :--------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

88| `name` | string | Plugin-Bezeichner ohne Leerzeichen, Steuerzeichen oder bidirektionale Formatierungszeichen. Benutzer geben ihn vor `@` ein, wenn sie installieren, auch wenn die eigene `plugin.json` des Plugins einen anderen `name` setzt |

89| `source` | string or object | Woher das Plugin abgerufen werden soll. Siehe [Plugin-Quellen](#plugin-sources) |

90| `description` | string | Wird in [`/plugin`](/docs/de/plugins/install)-Auflistungen und Details angezeigt |

91| `version` | string | Versionszeichenfolge für das Plugin. Wenn `plugin.json` auch `version` setzt, hat `plugin.json` Vorrang und `claude plugin validate` warnt. Siehe [Plugin-Lade-Referenz](/docs/de/plugins/loading) |

92| `category` | string | Freie Kategorie zur Organisation des Katalogs |

93| `tags` | array of strings | Freie Tags für die Suche |

94| `strict` | boolean | Standard `true`. Ob `plugin.json` die definitive Quelle für die Komponenten des Plugins ist. Siehe [Strict-Modus](#strict-mode) |

95| `relevance` | object | Signale, die Claude Code mitteilen, wann das Plugin vorgeschlagen werden soll. Siehe [Plugins für Ihre Organisation empfehlen](/docs/de/plugins/relevance) |

96| `dependencies` | array | Plugins, die für dieses aktiviert sein müssen. Jedes Element ist `"name"`, `"name@marketplace"` oder ein Objekt. Siehe [Plugin-Abhängigkeiten](/docs/de/plugins/dependencies) |

97| `defaultEnabled` | boolean | Standard `true`. Ob das Plugin aktiviert startet, wenn der Benutzer es nicht in [`enabledPlugins`](/docs/de/settings-reference#enabledplugins) gesetzt hat. Der Eintragswert hat Vorrang vor `plugin.json` |

98| `displayName` | string | Benutzerfreundlicher Name, der in der Benutzeroberfläche angezeigt wird. Wenn weder der Eintrag noch die `plugin.json` des Plugins einen setzt, sehen Benutzer den `name` des Plugins |

99| `metadata` | object | Freies Objekt für Ihre eigenen Felder. Claude Code liest es nicht. Erfordert Claude Code v2.1.222 oder später |

100| `headers` | object | HTTP-Header, die Claude Code sendet, wenn es diesen Eintrag [Archiv](#archive-plugin-source) herunterlädt. Ein hier gesetzter Header ersetzt einen Header mit demselben Namen aus der [`headers`](#fields-by-type) der Marketplace-Quelle. Erfordert Claude Code v2.1.238 oder später |

101| `headersHelper` | string | Befehl, der die Archive-Download-Header dieses Eintrags als ein JSON-Objekt ausgibt, für eine Anmeldedaten, die abläuft. Der Eintrag muss auch [`"strict": false`](#strict-mode) setzen. Erfordert Claude Code v2.1.238 oder später. Siehe [Authentifizieren Sie Archive-Downloads](/docs/de/plugins/host-marketplace#authenticate-archive-downloads) |

102 

103<h3 id="entry-and-plugin-json">

104 Wie ein Eintrag mit plugin.json kombiniert wird

105</h3>

106 

107Die Felder des Eintrags gelten unterschiedlich für ein abgerufenes Plugin, das seine eigene `.claude-plugin/plugin.json` hat, und für eines, das nicht:

108 

109* **Keine `plugin.json`**: Der Eintrag ist das Manifest unabhängig von `strict`. Jedes Manifest-Feld im Eintrag gilt, einschließlich [`mcpServers`, `lspServers`, `userConfig` und `channels`](/docs/de/plugins/manifest-reference).

110* **`plugin.json` vorhanden**: `plugin.json` ist das Manifest. Der [Strict-Modus](#strict-mode) entscheidet, ob die sechs Komponentenfelder des Eintrags, `commands`, `agents`, `skills`, `hooks`, `outputStyles` und `themes`, damit kombiniert oder als Konflikt abgelehnt werden. Eintrag `mcpServers`, `lspServers`, `userConfig` und `channels` gelten nicht. Deklarieren Sie sie in `plugin.json`.

111 

112<h4 id="hooks-in-an-entry">

113 Hooks in einem Eintrag

114</h4>

115 

116Schreiben Sie Eintrag `hooks` als ein Inline-Objekt, das Hook-Ereignisnamen auf Matcher-Arrays abbildet. Wenn Sie einen Dateipfad oder ein Array schreiben, besteht `claude plugin validate`. Diese Hooks werden nie ausgeführt, und Claude Code meldet einen `not yet supported in a marketplace entry`-Fehler für das Plugin. Legen Sie dateibasierte Hooks in die [`hooks/hooks.json`](/docs/de/plugins/components) oder `plugin.json` des Plugins selbst.

117 

118<h4 id="display-fields">

119 Anzeigefelder

120</h4>

121 

122Sowohl der Eintrag als auch die eigene `plugin.json` des Plugins können die Anzeigefelder `displayName`, `description`, `author`, `homepage`, `repository`, `license` und `keywords` setzen. Benutzer sehen diese Werte in Plugin-Auflistungen und Details vor und nach der Installation:

123 

124* Für ein Feld, das Sie auf dem Eintrag setzen, sehen Benutzer den Wert des Eintrags, auch wenn `plugin.json` einen anderen setzt.

125* Für ein Feld, das der Eintrag nicht setzt, sehen Benutzer den `plugin.json`-Wert.

126 

127Vor der Installation kann Claude Code `plugin.json` nur für Einträge mit einer [relativen Pfad-Quelle](#relative-path-plugin-source) lesen, deren Plugin-Dateien sich im Marketplace selbst befinden. Für einen Eintrag mit einem anderen Quelltyp sehen Benutzer nur die eigenen Felder des Eintrags, bis sie das Plugin installieren.

128 

129<h3 id="strict-mode">

130 Strict-Modus

131</h3>

132 

133`strict` entscheidet, was passiert, wenn das abgerufene Plugin seine eigene `plugin.json` hat und der Eintrag auch eines der [Komponentenfelder](#entry-and-plugin-json) deklariert: `commands`, `agents`, `skills`, `hooks`, `outputStyles` oder `themes`. Mit `strict: true`, dem Standard, hängt Claude Code die Komponentenfelder des Eintrags an `plugin.json` an, außer `hooks`, dessen Matcher die des Manifest pro Ereignis ersetzen. Mit `strict: false` ist ein Eintrag, der ein Komponentenfeld deklariert, ein Konflikt, und das Plugin wird nicht geladen. Die Tabelle zeigt jede Kombination von `strict`, `plugin.json` und den Komponentenfeldern des Eintrags.

134 

135| `strict` | `plugin.json` | Komponentenfelder des Eintrags | Ergebnis |

136| :------------------- | :------------ | :----------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

137| any | absent | any | Der Eintrag ist das Manifest |

138| `true`, der Standard | present | any | `plugin.json` ist die Autorität. Claude Code hängt die Komponentenfelder des Eintrags daran an, außer `hooks`, deren Matcher [die des Manifest pro Ereignis ersetzen](/docs/de/plugins/manifest-reference#how-entry-fields-combine-with-plugin-json) |

139| `false` | present | none | `plugin.json` ist das Manifest, wie mit `true` |

140| `false` | present | one or more | Konflikt. Das Plugin wird nicht geladen mit `Plugin <name> has conflicting manifests: both plugin.json and marketplace entry specify components` |

141 

142<h2 id="plugin-sources">

143 Plugin-Quellen

144</h2>

145 

146Die `source` eines Plugin-Eintrags gibt an, woher Claude Code dieses eine Plugin abruft. Es ist entweder eine relative Pfad-Zeichenfolge oder ein Objekt, dessen eigener `source`-Schlüssel den Typ benennt, daher sieht ein Eintrag wie `"source": { "source": "github", "repo": "your-org/formatter" }` aus.

147 

148Die Tabelle listet jeden Plugin-Quelltyp und seine Felder auf.

149 

150| Typ | Felder | Notizen |

151| :------------- | :------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

152| Relativer Pfad | die Zeichenfolge selbst | Ein Verzeichnis im Marketplace, aufgelöst vom Marketplace-Root. Muss mit `./` beginnen, es sei denn, Sie schreiben einen [bare Name unter `metadata.pluginRoot`](#relative-path-plugin-source). `"."` allein bedeutet den Root selbst |

153| `github` | `repo`, `ref`, `sha` | GitHub-Repository in `owner/repo`-Form |

154| `url` | `url`, `ref`, `sha` | Jedes Git-Repository nach URL |

155| `git-subdir` | `url`, `path`, `ref`, `sha` | Ein Unterverzeichnis eines Git-Repository, abgerufen mit einem spärlichen partiellen Klon |

156| `npm` | `package`, `version`, `registry` | npm-Paket, abgerufen mit Ihrem npm-Client und entpackt ohne Ausführung von Installationsskripten |

157| `archive` | `url`, `sha256` | Zip-Archiv über HTTPS. Erfordert Claude Code v2.1.224 oder später |

158| `command` | `command`, `timeout`, `mode` | Verzeichnis, das von einem Befehl gedruckt wird, den Claude Code auf der Maschine des Benutzers ausführt. Erfordert Claude Code v2.1.229 oder später |

159 

160Die Namen `url` und `github` sind auch [Marketplace-Quell](#marketplace-sources)-Typen, wobei `url` einen direkten Link zu einer `marketplace.json`-Datei anstelle eines Git-Repository bedeutet. `git` existiert nur als Marketplace-Quelle, und `npm` existiert als beides. `git-subdir`, `archive` und `command` existieren nur als Plugin-Quellen.

161 

162Verwenden Sie einen relativen Pfad für ein Plugin in einem Unterverzeichnis des Marketplace-Repository selbst. Verwenden Sie `git-subdir` für ein Unterverzeichnis eines anderen Repository.

163 

164`github`, `url` und `git-subdir`-Quellen teilen die Felder `ref` und `sha`:

165 

166* **`ref`**: ein Branch oder Tag. Standardmäßig der Standard-Branch des Repository.

167* **`sha`**: eine vollständige 40-stellige Kleinbuchstaben-Commit-SHA. Wenn Sie sowohl `ref` als auch `sha` setzen, checkt Claude Code `sha` aus. Auf den meisten Git-Hosts, einschließlich GitHub, GitLab und Bitbucket, bedeutet dies, dass die Installation erfolgreich ist, auch wenn der Branch oder Tag, der von `ref` benannt wird, seitdem upstream gelöscht wurde, solange der Commit noch vom Repository erreichbar ist. Einige Server, wie AWS CodeCommit, unterstützen das Abrufen von Commits nach SHA nicht. Auf diesen Servern muss `ref` noch existieren und der angeheftete Commit muss von ihm erreichbar sein.

168 

169Für die Art, wie jeder Typ abgerufen, zwischengespeichert und versioniert wird, siehe [Plugin-Lade-Referenz](/docs/de/plugins/loading).

170 

171<h3 id="relative-path-plugin-source">

172 Relative Pfad-Plugin-Quelle

173</h3>

174 

175Der Pfad wird vom Marketplace-Root aufgelöst. `./plugins/formatter` ist `<root>/plugins/formatter`, obwohl sich die Marketplace-Datei in `<root>/.claude-plugin/` befindet.

176 

177Ein Pfad, der `..` enthält, schlägt die Validierung fehl. Auf macOS und Linux lehnt Claude Code einen Eintragspfad ab, der irgendwo nach dem führenden `./` einen Backslash enthält, daher schreiben Sie den Pfad mit Schrägstrichen.

178 

179```json theme={null}

180{ "name": "formatter", "source": "./plugins/formatter" }

181```

182 

183Ein relativer Pfad wird nur aufgelöst, wenn Claude Code die Dateien des Marketplace hat, daher überprüfen Sie den [Marketplace-Quell](#marketplace-sources)-Typ:

184 

185* **`github`, `git`, `file` und `directory`**: Claude Code hat die Dateien des Marketplace.

186* **`url`**: Claude Code ruft nur `marketplace.json` ab, daher können sich relative Pfade nicht auflösen. Geben Sie jedem Plugin stattdessen eine Objekt-Quelle, wie `github` oder `git-subdir`.

187* **`settings`**: relative Pfade werden sofort abgelehnt.

188 

189<h4 id="bare-names-under-pluginroot">

190 Bare Names unter pluginRoot

191</h4>

192 

193Ein bare Name ist ein einzelner Verzeichnisname ohne `/`, wie `"formatter"`. Um bare Names anstelle von `./`-Pfaden zu schreiben, setzen Sie [`metadata.pluginRoot`](#top-level-fields) auf das Verzeichnis, unter dem sie sich auflösen. Mit `"pluginRoot": "./plugins"` wird `"source": "formatter"` zu `./plugins/formatter` aufgelöst. Erfordert Claude Code v2.1.239 oder später.

194 

195`metadata.pluginRoot` hat diese Grenzen:

196 

197* Es muss selbst ein relativer Pfad im Marketplace sein.

198* Es hat keine Auswirkung auf eine Quelle, die bereits mit `./` beginnt.

199* Eine Quelle, die ein `/` enthält, wie `team-a/formatter`, ist kein bare Name und benötigt immer noch das `./`-Präfix, auch wenn `metadata.pluginRoot` gesetzt ist.

200 

201<h3 id="github-plugin-source">

202 github Plugin-Quelle

203</h3>

204 

205`repo` nimmt `owner/repo`. `ref` und `sha` sind optional.

206 

207```json theme={null}

208{

209 "name": "formatter",

210 "source": {

211 "source": "github",

212 "repo": "your-org/formatter",

213 "ref": "v2.0.0",

214 "sha": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0"

215 }

216}

217```

218 

219<h3 id="url-plugin-source">

220 url Plugin-Quelle

221</h3>

222 

223`url` ist eine vollständige Git-URL: `https://`, `http://`, `file://` oder `git@`. Ein `.git`-Suffix ist nicht erforderlich, daher funktionieren Azure DevOps- und AWS CodeCommit-URLs wie geschrieben. Dieser Typ nimmt keine `owner/repo`-Kurzform.

224 

225```json theme={null}

226{

227 "name": "formatter",

228 "source": {

229 "source": "url",

230 "url": "https://gitlab.example.com/your-group/formatter.git",

231 "ref": "main"

232 }

233}

234```

235 

236<h3 id="git-subdir-plugin-source">

237 git-subdir Plugin-Quelle

238</h3>

239 

240`url` akzeptiert eine vollständige Git-URL oder GitHub `owner/repo`-Kurzform. `path` ist das Unterverzeichnis, das das Plugin enthält, und Claude Code lädt nur dieses Unterverzeichnis herunter.

241 

242```json theme={null}

243{

244 "name": "formatter",

245 "source": {

246 "source": "git-subdir",

247 "url": "https://github.com/your-org/monorepo.git",

248 "path": "tools/formatter"

249 }

250}

251```

252 

253<h3 id="npm-plugin-source">

254 npm Plugin-Quelle

255</h3>

256 

257Eine `npm`-Quelle nimmt diese Felder:

258 

259* `package`: ein Paketname oder ein scoped Name wie `@your-org/formatter`

260* `version`: eine Version oder ein Bereich

261* `registry`: eine Registry-URL für ein Paket, das nicht in der Standard-Registry ist

262 

263Claude Code ruft das Paket mit Ihrem npm-Client ab. Die Installationsskripte des Pakets, wie `preinstall` oder `postinstall`, werden nie ausgeführt, und seine Abhängigkeiten werden während des Abrufs nicht installiert. Wenn das Paket eine unterstützte Lockdatei neben seiner `package.json` hat, installiert Claude Code diese [Node.js-Paketabhängigkeiten](/docs/de/plugins/loading#node-js-package-dependencies) in einem separaten Schritt, auch mit deaktivierten Skripten.

264 

265```json theme={null}

266{

267 "name": "formatter",

268 "source": {

269 "source": "npm",

270 "package": "@your-org/formatter",

271 "version": "^2.0.0",

272 "registry": "https://npm.example.com"

273 }

274}

275```

276 

277<h3 id="archive-plugin-source">

278 archive Plugin-Quelle

279</h3>

280 

281`url` muss `https://` verwenden und kann nicht auf einen Loopback-, Link-Local- oder Cloud-Metadaten-Host verweisen.

282 

283Der Plugin-Root kann sich oben im Zip oder ein Verzeichnis darunter befinden.

284 

285`sha256` ist der Digest des Archivs als 64 Hex-Zeichen, Großbuchstaben oder Kleinbuchstaben. Wenn Sie ihn setzen, lehnt Claude Code einen Download ab, der nicht übereinstimmt.

286 

287```json theme={null}

288{

289 "name": "formatter",

290 "source": {

291 "source": "archive",

292 "url": "https://artifacts.example.com/formatter-2.0.0.zip",

293 "sha256": "6bfa50e3d2e00c052b46abe51fff89346ac803e45771f76dcf6df1ab74cca5e1"

294 }

295}

296```

297 

298<h3 id="command-plugin-source">

299 command Plugin-Quelle

300</h3>

301 

302Verwenden Sie eine `command`-Quelle, wenn ein auf der Maschine des Benutzers installiertes Tool das Plugin-Verzeichnis erzeugt, wie eine IDE, die ihr Plugin für die Toolchain rendert, die der Benutzer ausgewählt hat. Claude Code führt den Befehl aus, wenn der Benutzer das Plugin installiert oder aktualisiert, und [erneut einmal pro Sitzung](/docs/de/plugins/loading#when-a-command-source-re-runs), daher erhalten Benutzer die geänderte Ausgabe des Tools ohne Neuinstallation.

303 

304Eine `command`-Quelle nimmt diese Felder:

305 

306* `command`: ein Shell-Befehl, der den absoluten Pfad des Plugin-Verzeichnisses als eine Zeile druckt und mit 0 beendet. Claude Code zeigt Benutzern die ganze Zeichenfolge zur Überprüfung an, bevor sie ausgeführt wird. Schreiben Sie sie als druckbares ASCII, höchstens 500 Zeichen, ohne vier oder mehr Leerzeichen hintereinander.

307* `timeout`: eine ganze Zahl von Sekunden von 1 bis 600. Standardmäßig 60.

308* `mode`: `copy`, der Standard, oder `link`. Siehe [Copy-Modus und Link-Modus](#copy-mode-and-link-mode).

309 

310```json theme={null}

311{

312 "name": "formatter",

313 "source": {

314 "source": "command",

315 "command": "my-tool claude-plugin-path",

316 "timeout": 120

317 }

318}

319```

320 

321Für die Art, wie Benutzer den Befehl akzeptieren, siehe [Aus Ihrer Shell installieren](/docs/de/plugins/install#install-from-your-shell). Für das, was Benutzer sehen, nachdem Sie ihn ändern, siehe [Ändern Sie den Befehl einer Befehlsquelle](/docs/de/plugins/host-marketplace#change-the-command-of-a-command-source). Administratoren schalten Befehlsquellen mit [`disableCommandPluginSources`](/docs/de/settings-reference#disablecommandpluginsources) aus.

322 

323<h4 id="what-the-command-must-do">

324 Was der Befehl tun muss

325</h4>

326 

327Schreiben Sie den Befehl, um diese Anforderungen zu erfüllen:

328 

329* **Shell und Arbeitsverzeichnis**: Claude Code führt den Befehl durch `sh` oder auf Windows durch `cmd.exe` aus dem Home-Verzeichnis des Benutzers aus. Geben Sie einen absoluten Pfad oder einen Befehl auf `PATH` an.

330* **Ausgabe**: drucken Sie genau eine Zeile auf stdout, den absoluten Pfad des Plugin-Verzeichnisses, und beenden Sie mit 0 innerhalb von `timeout` Sekunden.

331* **Verzeichnisinhalte**: das Verzeichnis enthält das vollständige Plugin, wenn der Befehl beendet wird. Der Pfad kann sich von Lauf zu Lauf unterscheiden.

332 

333<h4 id="output-that-fails-the-install-or-update">

334 Ausgabe, die die Installation oder Aktualisierung fehlschlagen lässt

335</h4>

336 

337Die Installation oder Aktualisierung schlägt fehl, wenn der Befehl mit Nicht-Null beendet wird, länger als `timeout` läuft oder etwas anderes als einen absoluten Pfad druckt. Es schlägt auch fehl, wenn das gedruckte Verzeichnis eines dieser ist:

338 

339* **Kein Plugin-Inhalt**: das gedruckte Verzeichnis hat keinen Plugin-Inhalt auf seiner obersten Ebene, wie ein `.claude-plugin/`-Verzeichnis oder ein `skills/`-, `commands/`-, `agents/`- oder `hooks/`-Verzeichnis.

340* **Das Verzeichnis der Sitzung selbst**: das gedruckte Verzeichnis ist das, in dem Claude Code gestartet wurde, oder eines seiner übergeordneten Verzeichnisse.

341* **Ein Netzwerkpfad**: auf Windows ist der gedruckte Pfad ein UNC-Pfad.

342* **Zu groß zum Kopieren**: im Copy-Modus ist das Verzeichnis größer als 256 MiB oder hat mehr als 20.000 Einträge.

343 

344<h4 id="copy-mode-and-link-mode">

345 Copy-Modus und Link-Modus

346</h4>

347 

348`mode` entscheidet, ob Claude Code das gedruckte Verzeichnis kopiert oder es an Ort und Stelle verwendet:

349 

350* **`copy`**: Claude Code kopiert das Verzeichnis in den Plugin-Cache und leitet die [Plugin-Version](/docs/de/plugins/loading#how-claude-code-computes-the-version) von einem Hash der kopierten Dateien ab. Ihr Tool kann das Verzeichnis nach dem Beenden des Befehls löschen oder umschreiben. Ein erneuter Lauf, der identische Dateien erzeugt, zählt als aktuell.

351* **`link`**: Claude Code füllt den Cache-Eintrag des Plugins mit einem Link zu jedem Top-Level-Eintrag des gedruckten Verzeichnisses und lädt die Dateien an Ort und Stelle. Nichts wird kopiert, Dateiinhalte werden nicht gehasht, und die Größenlimits gelten nicht. Verwenden Sie es für ein Verzeichnis, das zu groß zum Kopieren ist, wie einen gerenderten SDK-Export.

352 

353Ein Link-Modus-Plugin hat diese Anforderungen:

354 

355* **Halten Sie das Verzeichnis an Ort und Stelle**: Claude Code lädt das Plugin bei jedem Start durch die Links, daher muss das gedruckte Verzeichnis bleiben, wo es ist, solange das Plugin installiert bleibt.

356* **Drucken Sie einen anderen Pfad, um neuen Inhalt zu signalisieren**: die Version kommt vom echten Pfad des gedruckten Verzeichnisses und seinen Top-Level-Einträgen, nicht von den Dateien darin.

357* **Halten Sie Top-Level-Symlinks im Verzeichnis**: die Installation schlägt fehl, wenn ein Top-Level-Eintrag ein Symlink ist, der außerhalb des gedruckten Verzeichnisses verweist.

358* **Schließen Sie `node_modules` ein**: Claude Code überspringt die [Node.js-Paketabhängigkeitsinstallation](/docs/de/plugins/loading#node-js-package-dependencies) für ein Link-Modus-Plugin, daher drucken Sie ein Verzeichnis, das bereits die Pakete enthält, die das Plugin benötigt.

359* **Sitzungen, die im Verzeichnis gestartet werden**: eine Sitzung, die im gedruckten Verzeichnis oder irgendwo darunter gestartet wird, lädt das Plugin nicht.

360* **Nicht auf Windows**: Claude Code lehnt die Installation eines Link-Modus-Plugins auf Windows ab. Deklarieren Sie `"mode": "copy"` dort.

361 

362<h2 id="marketplace-sources">

363 Marketplace-Quellen

364</h2>

365 

366Eine Marketplace-Quelle gibt an, woher Claude Code eine `marketplace.json` abruft. Die CLI erstellt eine für Sie, wenn Sie einen Marketplace hinzufügen, und Sie schreiben eine selbst in Einstellungen:

367 

368* **[`claude plugin marketplace add`](/docs/de/plugins/cli-reference)**: Claude Code erstellt die Quelle aus der Zeichenfolge, die Sie übergeben.

369* **[`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces)**: Sie schreiben die Quelle selbst als das `source`-Objekt.

370* **[`strictKnownMarketplaces`](/docs/de/settings-reference#strictknownmarketplaces) und [`blockedMarketplaces`](/docs/de/plugins/org#restrict-what-users-can-install)**: Administratoren schreiben Quellen in diese zwei Richtlinienlisten. `strictKnownMarketplaces` ist die Allowlist und `blockedMarketplaces` ist die Blocklist.

371 

372Die Typnamen `url`, `git` und `github` bedeuten etwas anderes in einer Marketplace-Quelle als in einer [Plugin-Quelle](#plugin-sources):

373 

374| Typname | Als Marketplace-Quelle | Als Plugin-Quelle |

375| :------- | :--------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------ |

376| `url` | Ein direkter Link zu einer `marketplace.json`-Datei mit Feldern `url`, `headers` und `headersHelper` | Ein Git-Repository zum Klonen mit Feldern `url`, `ref` und `sha` |

377| `git` | Ein Git-Repository zum Klonen mit Feldern `url`, `ref`, `path` und `sparsePaths` | Existiert nicht |

378| `github` | Ein GitHub-Repository mit Feldern `repo`, `ref`, `path` und `sparsePaths` | Ein GitHub-Repository mit Feldern `repo`, `ref` und `sha` und kein `path` |

379 

380Die Tabelle listet jeden Marketplace-Quelltyp mit seinen Feldern, der `claude plugin marketplace add`-Eingabe, die ihn erzeugt, und was er in jedem der drei Einstellungsschlüssel tut.

381 

382| Typ | Felder | `marketplace add`-Eingabe | `extraKnownMarketplaces` | `strictKnownMarketplaces` | `blockedMarketplaces` |

383| :------------ | :----------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------- |

384| `url` | `url`, `headers`, `headersHelper` | Eine `http://`- oder `https://`-URL, die keine Git-Form entspricht | Lädt | Erlaubt die gleiche URL | Blockiert die gleiche URL |

385| `github` | `repo`, `ref`, `path`, `sparsePaths` | `owner/repo`, `owner/repo@ref` oder `owner/repo#ref` | Lädt | Erlaubt das gleiche `repo`, `ref` und `path`. `repo` kann `owner/*` sein | Blockiert das gleiche und eine `git`-URL zum gleichen Repository |

386| `git` | `url`, `ref`, `path`, `sparsePaths` | Eine `user@host:path`-URL oder eine `https://`-URL, die mit `.git` endet, `/_git/` enthält oder ein github.com- oder gitlab.com-Repository benennt. `#ref` heftet einen ref an | Lädt | Erlaubt die gleiche URL, `ref` und `path` | Blockiert das gleiche und andere Schreibweisen des gleichen github.com-Repository |

387| `npm` | `package` | Nicht erzeugt | Schlägt zu laden fehl: `NPM marketplace sources not yet implemented` | Parst aber passt nichts, weil sich nichts als `npm`-Marketplace registriert | Parst aber passt nichts |

388| `file` | `path` | Ein Pfad zu einer `.json`-Datei | Lädt | Erlaubt den gleichen Pfad | Blockiert den gleichen Pfad |

389| `directory` | `path` | Ein Pfad zu einem Verzeichnis | Lädt | Erlaubt den gleichen Pfad | Blockiert den gleichen Pfad |

390| `settings` | `name`, `plugins`, `owner` | Nicht erzeugt | Lädt | Erlaubt einen Eintrag mit dem gleichen `name` und identischen `plugins` | Blockiert den gleichen `name` |

391| `skills-dir` | none | Nicht erzeugt | Schlägt zu laden fehl: `Unsupported marketplace source type` | Hält [Skills-Verzeichnis-Plugins](/docs/de/plugins/org#keep-skills-directory-plugins-loading) beim Laden, während eine Allowlist gesetzt ist. Siehe [Quellwerte, die nur in Richtlinienlisten gültig sind](#source-values-valid-only-in-policy-lists) | Stoppt Skills-Verzeichnis-Plugins vom Laden |

392| `hostPattern` | `hostPattern` | Nicht erzeugt | Schlägt zu laden fehl: `Unsupported marketplace source type` | Erlaubt `github`-, `git`- und `url`-Quellen, deren Host passt | Blockiert diese Quellen |

393| `pathPattern` | `pathPattern` | Nicht erzeugt | Schlägt zu laden fehl: `Unsupported marketplace source type` | Erlaubt `file`- und `directory`-Quellen, deren `path` passt | Blockiert diese Quellen |

394 

395<h3 id="fields-by-type">

396 Felder nach Typ

397</h3>

398 

399Die Tabelle listet jedes Marketplace-Quellfeld auf, das einen Standard, eine Einschränkung oder eine typspezifische Bedeutung hat.

400 

401| Feld | Typen | Beschreibung |

402| :-------------- | :-------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

403| `url` | `url` | Link zur `marketplace.json`-Datei. Claude Code lädt nur diese Datei herunter, daher können die Plugins des Marketplace keine [relativen Pfad-Quellen](#relative-path-plugin-source) verwenden |

404| `url` | `git` | Das Git-Repository zum Klonen |

405| `headers` | `url` | Zuordnung von HTTP-Headern, die Claude Code mit dem Abruf sendet, für authentifizierte Hosts |

406| `headersHelper` | `url` | Befehl, der Header druckt, deren Werte zu kurzlebig sind, um sie in `headers` aufzulisten. Erfordert Claude Code v2.1.238 oder später. Siehe [Authentifizieren Sie Archive-Downloads](/docs/de/plugins/host-marketplace#authenticate-archive-downloads) |

407| `repo` | `github` | In `marketplace add` und `extraKnownMarketplaces` muss `repo` ein Repository benennen. `marketplace add` lehnt `owner/*` als keine gültige `owner/repo`-Kurzform ab; in `extraKnownMarketplaces` nimmt Claude Code es wörtlich und der Klon schlägt fehl |

408| `ref` | `github`, `git` | Branch oder Tag. Standardmäßig der Standard-Branch des Repository |

409| `path` | `github`, `git` | Der Pfad der Marketplace-Datei im Repository. Standardmäßig `.claude-plugin/marketplace.json` |

410| `path` | `file` | Die Marketplace-Datei selbst. Claude Code liest sie an Ort und Stelle und nimmt das Verzeichnis zwei Ebenen oben als Marketplace-Root, daher halten Sie die Datei unter `<root>/.claude-plugin/marketplace.json` |

411| `path` | `directory` | Der Marketplace-Root, das Verzeichnis, das `.claude-plugin/marketplace.json` enthält |

412| `sparsePaths` | `github`, `git` | Array von Verzeichnissen für einen spärlichen Checkout, wie `[".claude-plugin", "plugins"]`. `claude plugin marketplace add --sparse` setzt es |

413| `skipLfs` | `github`, `git` | Akzeptiert und hat keine Auswirkung. Siehe [Halten Sie Plugin-Dateien aus Git LFS](/docs/de/plugins/host-marketplace#keep-plugin-files-out-of-git-lfs) |

414| `name` | `settings` | Muss dem `extraKnownMarketplaces`-Schlüssel entsprechen und kann kein [reservierter Name](#reserved-names) sein |

415| `plugins` | `settings` | Der Inline-Katalog ohne gehostete Datei. Jedes Element nimmt `name`, `source`, `description`, `version`, `strict`, `headers` und `headersHelper`. Schreiben Sie die `source` jedes Elements als einen Objekttyp, weil ein relativer Pfad kein Repository zum Auflösen gegen hat |

416 

417<h3 id="source-values-valid-only-in-policy-lists">

418 Quellwerte, die nur in Richtlinienlisten gültig sind

419</h3>

420 

421`hostPattern`, `pathPattern`, `skills-dir` und die `owner/*`-Form von `repo` sind nur in den zwei Richtlinienlisten gültig, `strictKnownMarketplaces` und `blockedMarketplaces`:

422 

423* **`hostPattern` und `pathPattern`**: reguläre Ausdrücke, die Claude Code gegen eine Quelle testet, bevor er von ihr abruft.

424* **`skills-dir`**: keine Quelle. Wenn Sie `strictKnownMarketplaces` überhaupt setzen, [Skills-Verzeichnis-Plugins](/docs/de/plugins/org#keep-skills-directory-plugins-loading) stoppen das Laden, bis Sie `{"source": "skills-dir"}` zu dieser Liste hinzufügen.

425* **`owner/*`**: als ein `github` `repo`-Wert passt jedes Repository unter genau diesem GitHub-Besitzer. Erfordert Claude Code v2.1.223 oder später.

426 

427Für die Reihenfolge der Übereinstimmung, exakte `ref`-Semantik und Rezepte, siehe [Plugins für Ihre Organisation verwalten](/docs/de/plugins/org).

428 

429<h3 id="source-objects-in-settings">

430 Quellobjekte in Einstellungen

431</h3>

432 

433Ein `extraKnownMarketplaces`-Wert ist eine Zuordnung vom Marketplace-Namen zu einem Objekt mit `source`. Dieser Eintrag registriert einen Marketplace aus einem Git-Repository bei seinem `main`-Branch:

434 

435```json theme={null}

436{

437 "extraKnownMarketplaces": {

438 "your-marketplace": {

439 "source": {

440 "source": "git",

441 "url": "https://git.example.com/your-org/your-marketplace.git",

442 "ref": "main"

443 }

444 }

445 }

446}

447```

448 

449`strictKnownMarketplaces` und `blockedMarketplaces` sind Arrays von Quellobjekten. Diese Allowlist lässt einen GitHub-Besitzer und einen internen Host zu:

450 

451```json theme={null}

452{

453 "strictKnownMarketplaces": [

454 { "source": "github", "repo": "your-org/*" },

455 { "source": "hostPattern", "hostPattern": "^git\\.example\\.com$" }

456 ]

457}

458```

459 

460<h2 id="validation-messages">

461 Validierungsmeldungen

462</h2>

463 

464`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](/docs/de/plugins/cli-reference#plugin-validate).

465 

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

467 

468Eine Meldung mit dem Präfix eines Eintrag-Index und `plugin.json →`, wie `plugins[2] plugin.json →`, ist über die eigenen Dateien dieses Plugins. [`claude plugin validate` meldet Fehler](/docs/de/plugins/troubleshooting#claude-plugin-validate-reports-errors) listet diese Meldungen mit ihren Fixes auf.

469 

470Warnungen, die Claude Desktop-Flaggennamen erwähnen, die Claude Code akzeptiert, aber Claude Desktop ablehnt, weil Claude Desktop strengere Namenregeln hat.

471 

472Die Tabelle ordnet Marketplace-Level-Meldungen dem Feld zu, das jede betrifft.

473 

474| Meldung | Ebene | Feld |

475| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------ | :------------------------------------------------------------------------------------------------------------------------------ |

476| `Marketplace must have a name` | Error | `name` ist leer |

477| `Marketplace name cannot contain spaces. Use kebab-case (e.g., "my-marketplace")` | Error | `name` |

478| `Marketplace name cannot contain path separators (/ or \), ".." sequences, or be "."` | Error | `name` |

479| `Marketplace name impersonates an official Anthropic/Claude marketplace` | Error | `name`. Siehe [Reservierte Namen](#reserved-names) |

480| `Marketplace name cannot contain control or bidirectional-formatting characters` | Error | `name` enthält ein Steuerzeichen, wie ein Escape oder eine Zeilenumbruch, oder ein Unicode-Bidirektionales-Formatierungszeichen |

481| `Marketplace name "inline" is reserved for --plugin-dir session plugins`, und die `builtin`-, `skills-dir`-, `synced`-, `claude-plugin-test`-, `npm`-, `pip`-, `uv`-, `cargo`-, `github`- und `gh`-Varianten | Error | `name` |

482| `Author name cannot be empty` | Error | `owner.name` |

483| `Plugin name cannot contain spaces. Use kebab-case (e.g., "my-plugin")` | Error | `plugins[i].name` |

484| `Plugin name cannot contain control or bidirectional-formatting characters` | Error | `plugins[i].name` |

485| `Duplicate plugin name "x" found in marketplace` | Error | Zwei Einträge teilen einen `name` |

486| `plugins.i.source: Invalid input` | Error | Die `source` des Eintrags passt zu keinem Typ. Siehe [Ungültige Eingabe auf einer Quelle](#invalid-input-on-a-source) |

487| `plugins[i].source: Path contains "..": <path>` | Error | Ein relativer `source`, der dem Marketplace-Root entkommt |

488| `source.source: 'unsupported' is a parse-time placeholder and cannot be authored` | Error | `plugins[i].source` |

489| `Plugin "x" sets headersHelper but is not "strict": false` | Error | `plugins[i].headersHelper`, auf einem `archive`-Eintrag |

490| `chain does not resolve (<reason>) — target must be a name in plugins[], a key in renames, or null` | Error | `renames.<old>` |

491| `target "x" is not a valid plugin name (PluginIdSchema)` | Error | `renames.<old>` |

492| `Unknown field 'x'. Claude Code ignores it at load time.` | Warning | Der benannte Schlüssel auf der obersten Ebene, unter `metadata`, in einem Eintrag oder unter der `relevance` eines Eintrags |

493| `Marketplace has no plugins defined` | Warning | `plugins` ist leer |

494| `Plugin "x" sets headers/headersHelper, which only apply to "archive" sources; they have no effect on this entry.` | Warning | `plugins[i].headers` oder `plugins[i].headersHelper`, auf einem Eintrag, dessen `source` nicht `archive` ist |

495| `Plugin "x" fetches its archive with a headersHelper but sets no sha256 pin` | Warning | `plugins[i].source.sha256` |

496| `Header "x" is a request-routing/identity header that catalog entries may not set; Claude Code drops it at download time.` | Warning | `plugins[i].headers.<name>` |

497| `Local source "x" is or traverses a symlink, so <path> was not read` | Warning | `plugins[i].source` |

498| `No marketplace description provided. Adding a description helps users understand what this marketplace offers` | Warning | `description` |

499| `Entry declares version "x" but <path>/plugin.json says "y". At install time, plugin.json wins` | Warning | `plugins[i].version`, auf einem relativen Pfad-Eintrag |

500| `'relevance' must be an object containing topic and signals; got <type>. It will be ignored at load time.` | Warning | `plugins[i].relevance` |

501| `'metadata' must be a free-form object; got <type>. It will be ignored at load time.` | Warning | `plugins[i].metadata` |

502| `'experimental' must be an object containing component declarations; got <type>. It will be ignored at load time.` | Warning | `plugins[i].experimental` |

503| `Marketplace name "x" is reserved in Claude Desktop` | Warning | `name` ist `org`, `org-provisioned` oder `unknown`. Claude Desktop lehnt den Marketplace ab |

504| `Marketplace name "x" is not accepted by Claude Desktop (letters, digits, ".", "_", "-"; must start alphanumeric; max 128 chars)` | Warning | `name`. Claude Desktop lehnt den Marketplace ab |

505| `Plugin name "x" is not accepted by Claude Desktop (letters, digits, ".", "_", "-"; must start alphanumeric; max 128 chars)` | Warning | `plugins[i].name`. Claude Desktop lässt den Eintrag fallen |

506 

507<h3 id="invalid-input-on-a-source">

508 Ungültige Eingabe auf einer Quelle

509</h3>

510 

511`Invalid input` auf einer `source` bedeutet, dass das Objekt keinem Quelltyp entsprach. Überprüfen Sie diese Ursachen:

512 

513* Ein relativer Pfad, der nicht mit `./` beginnt, außer `"."` oder einem [bare Name unter `metadata.pluginRoot`](#relative-path-plugin-source)

514* Ein `npm` `package`, das `..` enthält

515* Ein `source`-Typ, der nicht einer der [Plugin-Quellen](#plugin-sources) ist

516* Ein bekannter Typ mit einem erforderlichen Feld, das fehlt oder den falschen Typ hat, wie `github` ohne `repo`

517 

518<h3 id="failures-that-validation-doesn’t-catch">

519 Fehler, die die Validierung nicht erfasst

520</h3>

521 

522`claude plugin validate` meldet nicht jeden Fehler. Ein Eintrag `hooks`, der als Dateipfad oder Array geschrieben wird, besteht die Validierung, und der Fehler erscheint nur, wenn das Plugin lädt, wie [Hooks in einem Eintrag](#hooks-in-an-entry) beschreibt. Fehler beim Abrufen einer `source` erscheinen auch nur nach der Installation, nicht in der Validierung.

523 

524[`claude plugin list`](/docs/de/plugins/cli-reference) zeigt ein Plugin, das nicht geladen wurde, mit seinem Fehler, und [Plugins beheben](/docs/de/plugins/troubleshooting) behandelt die Lade-Zeit-Zeichenfolgen.

525 

526<h2 id="next-steps">

527 Nächste Schritte

528</h2>

529 

530* [Marketplace erstellen](/docs/de/plugins/create-marketplace): Erstellen Sie einen Marketplace aus diesen Feldern und installieren Sie ihn lokal

531* [Marketplace hosten und verwalten](/docs/de/plugins/host-marketplace): Wo Sie die Datei ablegen und wie Benutzer Änderungen erhalten

532* [Plugin-Manifest-Referenz](/docs/de/plugins/manifest-reference): Die `plugin.json`-Felder, die ein Eintrag überschreiben kann

533* [Plugins für Ihre Organisation verwalten](/docs/de/plugins/org): Allowlist- und Blocklist-Rezepte, die diese Quellwerte verwenden

plugins/measure.md +193 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Kosten und Nutzung von Plugins messen

6 

7> Messen Sie die Token-Kosten eines Claude Code-Plugins, finden Sie heraus, ob es noch verwendet wird, und wählen Sie die Telemetrie-Events für organisationsweite Plugin-Fragen aus.

8 

9Jede Sitzung, in der ein Plugin aktiviert ist, enthält die Namen und Beschreibungen seiner Skills, Agents und Commands im Kontext von Claude, und diese Token werden gegen die Nutzung des Benutzers angerechnet, unabhängig davon, ob das Plugin verwendet wird oder nicht. Diese Seite zeigt, wie Sie diese Zahl für ein Plugin sehen, wie Sie sie reduzieren, wenn Sie das Plugin verwalten, und wo die Nutzung angezeigt wird, damit Sie feststellen können, ob ein Plugin noch verwendet wird.

10 

11Diese Seite ist für Plugin-Autoren und Verwalter. Wenn Sie Claude Code für eine Organisation verwalten, behandelt [Messung über eine Flotte](#measure-across-a-fleet) die gleichen Fragen auf jedem Computer.

12 

13<Note>

14 Diese Fälle werden auf anderen Seiten behandelt:

15 

16 * **Testen, wie zuverlässig das Plugin Claudes Verhalten ändert**: siehe [Plugins mit Evals testen](/docs/de/plugin-evals)

17 * **Trimmen des Kontexts Ihrer eigenen Sitzung**: siehe [Installierte Plugins verwalten](/docs/de/plugins/install#manage-installed-plugins) und die Seite [Kontextfenster](/docs/de/context-window)

18</Note>

19 

20Beginnen Sie mit [Messen Sie, was ein Plugin kostet](#measure-what-a-plugin-costs).

21 

22<h2 id="measure-what-a-plugin-costs">

23 Messen Sie, was ein Plugin kostet

24</h2>

25 

26Um zu sehen, was ein Plugin zu Claudes Kontext hinzufügt, führen Sie [`claude plugin details`](/docs/de/plugins/cli-reference#plugin-details) mit dem Namen des Plugins aus. Sie führen es in Ihrer Shell aus, nicht an der Eingabeaufforderung einer laufenden Claude Code-Sitzung. Das Plugin muss geladen sein: installiert, in einem Skills-Verzeichnis oder mit `--plugin-dir` im gleichen Befehl übergeben, wie in `claude --plugin-dir ./formatter plugin details formatter`.

27 

28Dieses Beispiel liest ein installiertes Plugin namens `formatter`, das zwei Skills, einen Command, einen Agent, einen Hook und einen MCP-Server hat:

29 

30```bash theme={null}

31claude plugin details formatter

32```

33 

34```text theme={null}

35formatter 1.0.0

36 Description: Formats and lints code on save

37 Source: formatter@my-marketplace

38 

39Component inventory

40 Skills (3) format-all, format-code, lint-fix

41 Agents (1) style-reviewer

42 Hooks (1) PostToolUse (harness-only — no model context cost)

43 MCP servers (1) formatter-tools (tool schemas resolved at runtime; not counted)

44 LSP servers (0)

45 

46Projected token cost

47 Always-on: ~146 tok added to every session

48 

49Per-component (rounded)

50 component always-on on-invoke

51 format-code ~40 ~30

52 lint-fix ~50 ~30

53 style-reviewer ~40 ~40

54 format-all < 20 ~30

55 

56 On-invoke cost is paid each time a skill or agent fires.

57 Token counts are estimates and may differ from actual usage.

58```

59 

60Jeder Teil der Ausgabe beantwortet eine andere Frage:

61 

62* **Component inventory**: was Claude Code im Plugin gefunden hat. Commands werden mit Skills gezählt, daher erscheint `format-all` unter `Skills`. Hooks und MCP-Server erhalten keine Kostenschätzung und keine Pro-Komponenten-Zeile; um zu sehen, was die MCP-Tools eines Plugins hinzufügen, führen Sie `/context` in einer Sitzung mit aktiviertem Plugin aus und lesen Sie die Kategorie `MCP tools`.

63* **Always-on**: die Token, die die Namen und Beschreibungen der Skills, Agents und Commands des Plugins zu jeder Sitzung hinzufügen, in der das Plugin aktiviert ist, unabhängig davon, ob etwas ausgeführt wird. Dies ist die Zahl, die jeder Benutzer trägt, und die zu reduzierende.

64* **Per-component**: jede Zeile teilt einen Skill, Agent oder Command in seinen Always-on-Anteil und seine On-invoke-Kosten auf, die nur geladen werden, wenn diese Komponente ausgeführt wird. Verwenden Sie die Always-on-Spalte, um zu finden, welche Komponente am meisten beiträgt.

65 

66<h3 id="lower-the-always-on-figure">

67 Reduzieren Sie die Always-on-Zahl

68</h3>

69 

70Wenn Sie das Plugin verwalten, reduzieren diese Änderungen, was es zu jeder Sitzung hinzufügt. Wenn Sie es nur verwenden, sind Ihre Optionen, es zu deaktivieren oder zu deinstallieren; siehe [Installierte Plugins verwalten](/docs/de/plugins/install#manage-installed-plugins).

71 

72Die Always-on-Zahl zählt den Namen jeder Komponente plus ihre `description` und `when_to_use` Frontmatter. Um sie zu reduzieren:

73 

74* Verkürzen Sie Skill- und Agent-Beschreibungen.

75* Teilen Sie ein großes Plugin auf, damit Benutzer nur die Komponenten installieren, die sie benötigen.

76 

77Die Beschreibung eines Skills ist auch das, wogegen Claude eine Anfrage abgleicht, daher kann eine kürzere verhindern, dass der Skill ausgelöst wird. Nachdem Sie Beschreibungen gekürzt haben, überprüfen Sie das Auslösen mit einem [`tool_used: Skill` Grader](/docs/de/plugin-evals#create-your-first-eval-suite) in Ihrer Eval-Suite.

78 

79Für das, was jeder Komponententyp beiträgt, siehe [Plugin-Komponenten](/docs/de/plugins/components).

80 

81<h3 id="cost-shown-to-users-before-install">

82 Kosten, die Benutzern vor der Installation angezeigt werden

83</h3>

84 

85Plugins im offiziellen Marketplace zeigen ihre Kosten Benutzern vor der Installation an. In `/plugin`, wenn ein Benutzer die Plugin-Liste eines Marketplace durchsucht und ein Plugin auswählt, zeigt der Detailbereich einen Abschnitt **Context cost** mit einer Zeile `Every turn:` und einer Zeile `When invoked:`. Wenn die Always-on-Zahl 2.000 Token oder mehr beträgt, wird die Zeile `Every turn:` hervorgehoben.

86 

87Ein Plugin in Ihrem eigenen Marketplace hat keinen Abschnitt **Context cost**.

88 

89<h2 id="check-whether-a-plugin-is-used">

90 Überprüfen Sie, ob ein Plugin verwendet wird

91</h2>

92 

93Claude Code meldet die Nutzung eines Plugins nicht an seinen Autor zurück. Die Nutzung wird auf dem Computer jeder Person aufgezeichnet, die das Plugin installiert hat, daher hängt das, was Sie erfahren können, von Ihrer Beziehung zu diesen Personen ab:

94 

95* **Sie verwalten Claude Code für ihre Organisation**: die OpenTelemetry-Events und die Analytics API zählen Installationen und Skill-Aktivierungen auf jedem Computer. Siehe [Messung über eine Flotte](#measure-across-a-fleet).

96* **Sie sind Teamkollegen, die Sie fragen können**: Claudes eigenes Claude Code zeigt jedem Benutzer, ob er das Plugin noch verwendet, an vier Stellen: das [`/plugin` Panel](#not-used-recently-in-/plugin), [`/skill-doctor`](#find-skills-that-never-run), [`/doctor`](#unused-plugins-in-/doctor) und [`/usage`](#usage-share-in-/usage). Alle vier sind Commands, die der Benutzer an der Claude Code-Eingabeaufforderung in einer Sitzung auf seinem eigenen Computer ausführt.

97* **Keines von beiden**: Sie haben kein Nutzungssignal von Claude Code für dieses Plugin.

98 

99<h3 id="not-used-recently-in-/plugin">

100 Nicht kürzlich verwendet in `/plugin`

101</h3>

102 

103Auf der Registerkarte **Installed** von `/plugin` wird ein Plugin, das der Benutzer aus einem Marketplace installiert hat, unter einer Kopfzeile **Not used recently** verschoben, sobald es mindestens 14 Tage und 10 Sitzungen lang nicht verwendet wurde. Die Details des Plugins zeigen auch eine Zeile `Last used:`. Für das, was Benutzer mit dieser Kopfzeile und Zeile tun, siehe [Finden Sie Plugins, die Sie nicht mehr verwenden](/docs/de/plugins/install#find-plugins-you-no-longer-use).

104 

105Die Kopfzeile **Not used recently** wird niemals angezeigt für:

106 

107* Plugins, die mit `--plugin-dir` oder aus einem Skills-Verzeichnis geladen werden

108* Plugins, die durch verwaltete Einstellungen aktiviert werden, oder aus einem [Seed-Verzeichnis](/docs/de/plugins/org#seed-containers-and-ci) bereitgestellt werden

109* Plugins, die ein Theme, einen Output-Stil, einen Monitor oder einen Workflow enthalten, da diese ohne eine verfolgbare Invokation verwendet werden

110 

111Der [Language Server](/docs/de/plugins/components#lsp-servers) eines Plugins wird als verwendet gezählt, wenn er Diagnosen liefert oder eine Code-Navigationsanfrage beantwortet, daher wird ein LSP-Plugin, dessen Server in Ihren Sitzungen aktiv ist, nicht als ungenutzt aufgelistet.

112 

113Wenn die Organisation des Benutzers [`strictKnownMarketplaces`](/docs/de/plugins/org#restrict-what-users-can-install) setzt, werden weder die Kopfzeile noch die Zeile `Last used:` angezeigt.

114 

115<h3 id="find-skills-that-never-run">

116 Finden Sie Skills, die nie ausgeführt werden

117</h3>

118 

119Führen Sie `/skill-doctor` aus, um zu sehen, was jeder Ihrer Skills kostet und wie oft er verwendet wird. Es kennzeichnet Skills, die in Claudes Skill-Listing vorhanden sind, aber nie aufgerufen wurden, einschließlich Skills aus Plugins.

120 

121In einer interaktiven Sitzung wird der Bericht auf der Registerkarte **Stats** des `/plugin`-Managers geöffnet. Siehe [Finden Sie ungenutzte Skills](/docs/de/skills#find-unused-skills) für das, was der Bericht abdeckt und wo er verfügbar ist.

122 

123<h3 id="unused-plugins-in-/doctor">

124 Ungenutzte Plugins in `/doctor`

125</h3>

126 

127Die `/doctor`-Überprüfung listet jeden benutzerinstallierten Skill, MCP-Server und Plugin auf und empfiehlt, die nicht verwendeten zu deaktivieren. Siehe [`/doctor` in der Befehlsreferenz](/docs/de/commands#all-commands).

128 

129<h3 id="usage-share-in-/usage">

130 Nutzungsanteil in `/usage`

131</h3>

132 

133In einem Pro-, Max-, Team- oder Enterprise-Plan teilt die `/usage`-Aufschlüsselung die aktuelle Nutzung als Anteil des Gesamtbetrags auf Skills, Subagents, Plugins und MCP-Server auf. Siehe [Verwenden des `/usage`-Befehls](/docs/de/costs#using-the-/usage-command).

134 

135<h2 id="measure-across-a-fleet">

136 Messung über eine Flotte

137</h2>

138 

139Wenn Sie Claude Code für eine Organisation verwalten, können Sie Plugin-Kosten und -Nutzung auf jedem Computer aus einer dieser Quellen messen:

140 

141* **OpenTelemetry-Events**: Claude Code exportiert diese an Ihr eigenes Backend, sobald Sie [einen Exporter konfigurieren](/docs/de/monitoring-usage). Siehe [OpenTelemetry-Events für Plugin-Installationen und -Nutzung](#pick-the-opentelemetry-event-for-each-question).

142* **Analytics API**: von Anthropics Aufzeichnungen bereitgestellt, ohne dass ein Exporter erforderlich ist. Siehe [Abfragen der Analytics API](#query-the-analytics-api).

143 

144<h3 id="pick-the-opentelemetry-event-for-each-question">

145 OpenTelemetry-Events für Plugin-Installationen und -Nutzung

146</h3>

147 

148Diese OpenTelemetry-Events und Attribute beantworten jede Plugin-Frage von Ihrem Backend:

149 

150| Frage | OpenTelemetry-Event oder Attribut |

151| :------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

152| Welche Plugins werden installiert und von wo | [`claude_code.plugin_installed`](/docs/de/monitoring-usage#plugin-installed-event), eine pro Installation |

153| Welche Plugins sind in wie vielen Sitzungen aktiv | [`claude_code.plugin_loaded`](/docs/de/monitoring-usage#plugin-loaded-event), eine pro aktiviertem Plugin beim Sitzungsstart |

154| Welche Skills werden aktiviert und welches Plugin besitzt sie | [`claude_code.skill_activated`](/docs/de/monitoring-usage#skill-activated-event), mit `plugin.name` und `marketplace.name` für Plugin-Skills |

155| Was die Hooks eines Plugins melden | [`claude_code.hook_plugin_metrics`](/docs/de/monitoring-usage#hook-plugin-metrics-event), nur für Hooks in offiziellen Marketplace-Plugins ausgegeben |

156| Was ein Plugin in API-Ausgaben kostet | `plugin.name` und `marketplace.name` auf dem [Cost Counter](/docs/de/monitoring-usage#cost-counter), gesetzt, wenn der aktive Skill oder Subagent zu einem Plugin gehört |

157 

158<h3 id="redacted-plugin-names-in-your-backend">

159 Redigierte Plugin-Namen in Ihrem Backend

160</h3>

161 

162Plugins aus dem offiziellen Marketplace melden ihren Plugin-Namen und Marketplace-Namen an Ihr Backend wörtlich. Der Name jedes anderen Plugins wird standardmäßig redigiert oder weggelassen, einschließlich eines Plugins aus dem eigenen Marketplace Ihrer Organisation. Der [Trust Tier](/docs/de/plugins/security#find-plugins-in-telemetry) des Plugins entscheidet, welcher.

163 

164Um echte Namen bei einigen Events zu erhalten, setzen Sie die Umgebungsvariable [`OTEL_LOG_TOOL_DETAILS`](/docs/de/monitoring-usage#common-configuration-variables) auf `1` auf den Computern, die Telemetrie exportieren, zum Beispiel im `env`-Block der gleichen [verwalteten Einstellungen](/docs/de/monitoring-usage#administrator-configuration), die den Exporter konfigurieren:

165 

166| Event | Standard | Mit `OTEL_LOG_TOOL_DETAILS=1` |

167| :------------------------------------ | :------------------------------------------------------------------------------------------------------ | :----------------------------------------------------------- |

168| `plugin_loaded` | `plugin.name` und `marketplace.name` sind die Literalzeichenfolge `third-party` | Echte Namen |

169| `plugin_installed`, `skill_activated` | `plugin.name` und `marketplace.name` weggelassen; bei `skill_activated` ist `skill.name` `custom_skill` | Echte Namen |

170| Cost Counter | `plugin.name` ist `third-party`; `marketplace.name` abwesend | Echter `plugin.name`; `marketplace.name` immer noch abwesend |

171 

172Bei `plugin_loaded` identifiziert `plugin_id_hash` standardmäßig immer noch jedes Plugin, daher können Sie unterschiedliche Drittanbieter-Plugins zählen.

173 

174<h3 id="query-the-analytics-api">

175 Abfragen der Analytics API

176</h3>

177 

178Im Enterprise-Plan beantwortet die Analytics API „welche Plugins installiert und ruft meine Organisation auf" aus Anthropics Aufzeichnungen auf, ohne dass ein Exporter erforderlich ist. [`GET /v1/organizations/analytics/plugins`](https://platform.claude.com/docs/en/api/admin/analytics/plugins/list) gibt pro Plugin, pro Tag Installations- und Invokationszählungen über Claude Code und Cowork zurück, die Sie nach Benutzer, RBAC-Gruppe oder Produkt gruppieren können.

179 

180Plugin-Aktivität, die Anthropic ohne Plugin-Namen erreicht, wird in einer aggregierten Zeile `third-party` angezeigt. [Finden Sie Plugins in der Telemetrie](/docs/de/plugins/security#find-plugins-in-telemetry) sagt, welche Plugins Claude Code nach Namen meldet.

181 

182Authentifizieren Sie die Anfrage mit einem API-Schlüssel, der den Bereich `read:analytics` hat, den ein Primary Owner wie unter [Zugriff auf Daten programmgesteuert](/docs/de/analytics#access-data-programmatically) beschrieben erstellt.

183 

184Siehe die [Endpoint-Referenz](https://platform.claude.com/docs/en/api/admin/analytics/plugins/list) für die Parameter und Antwortfelder.

185 

186<h2 id="next-steps">

187 Nächste Schritte

188</h2>

189 

190* [Plugins mit Evals testen](/docs/de/plugin-evals): Messen Sie, wie zuverlässig das Plugin Claude lenkt, nicht nur was es kostet

191* [Reduzieren Sie die Always-on-Zahl](#lower-the-always-on-figure): Was Sie im Plugin ändern müssen, um seine Pro-Turn-Kosten zu reduzieren

192* [Plugin-Sicherheit und Vertrauen](/docs/de/plugins/security#find-plugins-in-telemetry): Welche Telemetrie-Felder Plugin-Namen tragen und wann sie redigiert werden

193* [Überwachung der Nutzung](/docs/de/monitoring-usage): Die vollständige OpenTelemetry-Event-Referenz

plugins/org.md +460 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Verwalten Sie Claude Code-Plugins für Ihre Organisation

6 

7> Kontrollieren Sie, welche Plugins Claude Code auf jedem Computer in Ihrer Organisation installiert und zulässt, durch verwaltete Einstellungen.

8 

9Mit verwalteten Einstellungen können Sie entscheiden, welche Plugins Claude Code auf jedem Computer in Ihrer Organisation installiert und zulässt. Benutzer können diese nicht überschreiben. Sie stellen sie entweder als [serverseitig verwaltete Einstellungen](/docs/de/server-managed-settings) aus der claude.ai-Administratorkonsole oder als endpunktseitig verwaltete Einstellungen über MDM oder eine `managed-settings.json`-Datei bereit. Die meisten Steuerelemente auf dieser Seite wirken sich nur auf verwaltete Einstellungen aus.

10 

11Diese Seite ist für Administratoren bestimmt, und die Einstellungen hier regeln Claude Code.

12 

13<Note>

14 Diese Fälle werden auf anderen Seiten behandelt:

15 

16 * **Installieren von Plugins für sich selbst**: Beginnen Sie bei [Plugins installieren](/docs/de/plugins/install)

17 * **Kontrollieren, welche Plugins Mitglieder in claude.ai und Cowork verwenden können**: siehe [Verwalten Sie Plugins für Ihre Organisation](https://support.claude.com/en/articles/13837433) im Hilfecenter

18 * **Die Plugins-Seite in den Administratoreinstellungen von claude.ai**: [**Organisationseinstellungen > Plugins & Skills**](https://claude.ai/admin-settings/skills?tab=inventory) aktiviert Plugins für die claude.ai-Konten der Mitglieder, und diese erreichen Claude Code als [synchronisierte Plugins](/docs/de/plugins/loading#synced-plugins). Es werden keine der Schlüssel auf dieser Seite gesetzt

19</Note>

20 

21Die Abschnitte folgen der Reihenfolge, die die meisten Rollouts durchlaufen: [Plugins erforderlich machen](#pre-install-and-require-plugins) für alle oder pro Repository, [Container und CI seeding](#seed-containers-and-ci), [einschränken](#restrict-what-users-can-install), was Benutzer selbst hinzufügen können, [Aktualisierungsrichtlinie festlegen](#set-update-policy), dann [überprüfen](#audit-and-review), was installiert ist. Um jede Richtlinienschlüssel an einem Ort zu überprüfen, siehe die [Kontrollmatrix](#control-matrix).

22 

23<h2 id="pre-install-and-require-plugins">

24 Plugins vorinstallieren und erforderlich machen

25</h2>

26 

27Ein Marketplace ist ein Katalog von Plugins, die Claude Code aus einem Git-Repository, einer URL oder einem lokalen Pfad abruft. Sobald Sie einen Marketplace auf einem Computer registrieren, kann Claude Code Plugins daraus installieren.

28 

29Um Plugins für eine Flotte zu installieren, setzen Sie zwei Schlüssel zusammen in [verwalteten Einstellungen](/docs/de/managed-settings), die Richtliniendatei oder die serverseitig bereitgestellte Richtlinie, die jeder Computer in Ihrer Organisation liest: `extraKnownMarketplaces` registriert einen Marketplace auf jedem Computer, und `enabledPlugins` benennt die zu installierenden und aktivierenden Plugins. [Wählen Sie einen Bereitstellungsmechanismus](#choose-a-delivery-mechanism) behandelt, wie verwaltete Einstellungen jeden Computer erreichen.

30 

31<h3 id="choose-a-delivery-mechanism">

32 Wählen Sie einen Bereitstellungsmechanismus

33</h3>

34 

35Verwaltete Einstellungen erreichen einen Computer über einen von drei Bereitstellungsmechanismen:

36 

37* **Serverseitig verwaltete Einstellungen**: Setzen Sie die Plugin-Schlüssel als JSON unter [**Organisationseinstellungen > Claude Code > Verwaltete Einstellungen**](https://claude.ai/admin-settings/claude-code). Erfordert eine [Eigentümerrolle](/docs/de/server-managed-settings#access-control) in Ihrer Claude-Organisation. Eine Cloud-Sitzung ruft diese Einstellungen ab, bevor sie Plugins installiert.

38* **MDM-Richtlinien**: Unter macOS stellen Sie eine plist bereit, deren oberste Schlüssel die Einstellungsschlüssel sind. Unter Windows speichern Sie das gesamte JSON-Dokument als Zeichenkette in einem Registrierungswert. Die plist-Domäne und der Registrierungsschlüssel befinden sich unter [Wo jeder Mechanismus die Richtlinie speichert](/docs/de/managed-settings#where-each-mechanism-stores-the-policy).

39* **Verwaltete Einstellungsdatei**: Platzieren Sie eine `managed-settings.json` im Systempfad der Plattform. Sie können auch Dateien zum `managed-settings.d/`-Drop-in-Verzeichnis daneben hinzufügen. Die Dateipfade pro Plattform befinden sich unter [Wo jeder Mechanismus die Richtlinie speichert](/docs/de/managed-settings#where-each-mechanism-stores-the-policy), und die Drop-in-Zusammenführungsregeln befinden sich unter [Teilen Sie eine dateibasierte Richtlinie auf Teams auf](/docs/de/managed-settings#split-a-file-based-policy-across-teams).

40 

41Verwenden Sie serverseitig verwaltete Einstellungen, wenn Sie eine Claude for Teams- oder Enterprise-Organisation auf claude.ai haben und Ihre Geräte nicht alle unter MDM stehen. Verwenden Sie andernfalls eine MDM-Richtlinie oder die verwaltete Einstellungsdatei. Für den Kompromiss siehe [Wählen Sie zwischen serverseitig verwalteten und endpunktseitig verwalteten Einstellungen](/docs/de/server-managed-settings#choose-between-server-managed-and-endpoint-managed-settings).

42 

43<h4 id="which-managed-source-applies-on-a-machine">

44 Welche verwaltete Quelle gilt auf einem Computer

45</h4>

46 

47Standardmäßig gilt nur eine dieser drei Quellen auf einem Computer. Claude Code verwendet die erste, die einen Richtlinienschlüssel bereitstellt, und prüft zuerst serverseitig verwaltete Einstellungen, dann MDM-Richtlinien, dann die verwaltete Einstellungsdatei. Wenn serverseitig verwaltete Einstellungen auch nur einen unabhängigen Richtlinienschlüssel bereitstellen, ignoriert Claude Code die Plugin-Schlüssel in einer MDM-Richtlinie oder verwalteten Einstellungsdatei auf diesem Computer, mit Ausnahme der [Schlüssel, die es aus jeder Quelle liest](/docs/de/managed-settings#keys-read-from-every-admin-source).

48 

49Um stattdessen jede Quelle anzuwenden, setzen Sie [`managedSourcesBehavior`](/docs/de/managed-settings#compose-every-managed-source) auf `"merge"`.

50 

51[Wie Claude Code verwaltete Quellen kombiniert](/docs/de/managed-settings#how-claude-code-combines-managed-sources) listet auch die Schlüssel auf, die Claude Code in beiden Modi aus jeder Quelle liest.

52 

53<h3 id="require-a-marketplace-and-its-plugins">

54 Erforderlich machen eines Marketplace und seiner Plugins

55</h3>

56 

57Fügen Sie den Marketplace unter `extraKnownMarketplaces` hinzu, gekennzeichnet durch den eigenen `name` des Marketplace aus seiner `marketplace.json`. Fügen Sie dann jedes Plugin unter `enabledPlugins` als `plugin-name@marketplace-name` hinzu. Jeder Marketplace-Eintrag enthält ein `source`-Objekt mit einem `source`-Feld, das den Typ benennt, z. B. `github`. Dieses verwaltete Einstellungsbeispiel registriert einen Organisations-Marketplace und erzwingt zwei Plugins daraus:

58 

59```json theme={null}

60{

61 "extraKnownMarketplaces": {

62 "your-marketplace": {

63 "source": { "source": "github", "repo": "your-org/your-marketplace" },

64 "autoUpdate": true

65 }

66 },

67 "enabledPlugins": {

68 "code-formatter@your-marketplace": true,

69 "deploy-helper@your-marketplace": true

70 }

71}

72```

73 

74Nachdem die Einstellungen einen Computer erreichen, registriert Claude Code den Marketplace und installiert die beiden Plugins zu Beginn der nächsten Sitzung des Benutzers. Benutzer sehen sie in `/plugin`, und das Deaktivieren eines Plugins in ihrem eigenen Bereich stoppt nicht das Laden, da verwaltete Einstellungen Vorrang vor jedem anderen Bereich haben.

75 

76Um ein Plugin in jedem Bereich zu blockieren und es aus der Marketplace-Auflistung auszublenden, setzen Sie es stattdessen auf `false` in den verwalteten `enabledPlugins`.

77 

78Passen Sie die Felder `autoUpdate` und `source` für Ihren Marketplace an:

79 

80* **`autoUpdate`**: `true` hält den Marketplace und seine Plugins im Hintergrund aktualisiert, und `false` schaltet das aus. Siehe [Aktualisierungsrichtlinie festlegen](#set-update-policy).

81* **`source`**: `github` ist einer von mehreren Quellentypen. Eine `git`-Quelle benötigt eine `url` für GitLab oder einen internen Host, und eine `url`-Quelle benötigt die Adresse einer gehosteten `marketplace.json`. Jede Quellenform befindet sich in der [Marketplace-Referenz](/docs/de/plugins/marketplace-reference).

82 

83Wenn der Marketplace ein privates Git-Repository ist, benötigt jeder Benutzer Lesezugriff darauf. Das Klonen eines Git-basierten Marketplace wird mit Git auf dem Computer des Benutzers ausgeführt, wobei gespeicherte Anmeldedaten verwendet werden und keine Eingabeaufforderungen angezeigt werden. Für Benutzer ohne Git-Host-Konten verwenden Sie stattdessen einen [Seed](#seed-containers-and-ci).

84 

85Ein verwalteter Eintrag überschreibt auch einen gleichnamigen Marketplace-Eintrag oder eine `--plugin-dir`-Kopie aus einer anderen Quelle:

86 

87* **Marketplaces**: Ein verwalteter Marketplace-Eintrag ersetzt einen Eintrag mit niedrigerer Priorität mit demselben Namen, und die Felder der beiden Einträge werden nicht zusammengeführt.

88* **`--plugin-dir`-Kopien**: `--plugin-dir` lädt ein Plugin aus einem lokalen Verzeichnis für eine Sitzung. Für das, was passiert, wenn der Name dieser Kopie mit einem Plugin übereinstimmt, das Ihre verwalteten `enabledPlugins` benennen, siehe [Namenskonflikte](/docs/de/plugins/loading#name-conflicts).

89 

90Der offizielle Marketplace von Anthropic `claude-plugins-official` benötigt keinen `extraKnownMarketplaces`-Eintrag, wenn `enabledPlugins` eines seiner Plugins auf `true` setzt. Dieser `name@claude-plugins-official`-Eintrag deklariert den Marketplace selbst, überall wo diese Schlüssel gelten. Wenn Sie keines seiner Plugins aktivieren und es trotzdem auf jedem Computer registriert haben möchten, geben Sie ihm einen expliziten Eintrag, wie [Erlauben Sie den offiziellen Marketplace und Ihren eigenen](#allow-the-official-marketplace-and-your-own) zeigt.

91 

92<h3 id="require-plugins-per-repository">

93 Erforderlich machen von Plugins pro Repository

94</h3>

95 

96Um die Mitwirkenden eines Repositories statt Ihrer ganzen Flotte abzudecken, setzen Sie `extraKnownMarketplaces` und `enabledPlugins` in der `.claude/settings.json` dieses Repositories. Die `extraKnownMarketplaces`-Einträge gelten nur in einem Ordner, den der Mitwirkende vertraut hat, und in einem nicht vertrauenswürdigen Ordner ignoriert Claude Code sie ohne Meldung:

97 

98* **Interaktive Sitzungen**: Claude Code registriert den Marketplace nur, nachdem der Mitwirkende den [Workspace-Vertrauensdialog](/docs/de/permissions#what-runs-before-you-trust-a-folder) für diesen Ordner akzeptiert hat.

99* **[Nicht-interaktive `-p`-Läufe](/docs/de/headless)**: Die Einträge gelten nur in einem Ordner, dessen Vertrauen der Benutzer bereits interaktiv akzeptiert hat, oder dessen `hasTrustDialogAccepted`-Flag Sie in `~/.claude.json` setzen.

100 

101Ein Plugin, das der Marketplace durch einen relativen Pfad auflistet, wird aus der Marketplace-Kopie geladen, sobald die `extraKnownMarketplaces`-Einträge des Repositories gelten. Ein Plugin, dessen Marketplace-Eintrag stattdessen auf eine externe Quelle verweist, z. B. das eigene GitHub-Repository des Plugins, wird nicht allein aus den Repository-Einstellungen installiert. Jeder Mitwirkende sieht `Plugin "<name>" is enabled in project settings but isn't installed`, bis er `claude plugin install <name>@<marketplace> --scope project` ausführt, wie [Plugins installieren](/docs/de/plugins/install) beschreibt.

102 

103Wenn Sie eine lokale `directory`- oder `file`-Quelle mit einem relativen Pfad verwenden, wird der Pfad gegen den Haupt-Checkout Ihres Repositories aufgelöst. Wenn Sie Claude Code aus einem Git-Worktree ausführen, verweist der Pfad immer noch auf den Haupt-Checkout, sodass alle Worktrees denselben Marketplace-Speicherort gemeinsam nutzen.

104 

105Um ein Bundle von Plugins mit Abhängigkeiten bereitzustellen, setzen Sie das Bundle-Plugin in `enabledPlugins`, wie [Plugin-Abhängigkeiten](/docs/de/plugins/dependencies) beschreibt.

106 

107<h3 id="when-each-surface-applies-the-plugin-keys">

108 Wenn jede Oberfläche die Plugin-Schlüssel anwendet

109</h3>

110 

111Die Tabelle zeigt, wann jede Art von Claude Code-Sitzung `extraKnownMarketplaces` und `enabledPlugins` anwendet, aus verwalteten Einstellungen und aus der `.claude/settings.json` eines Repositories. Für die Desktop-App und die IDE-Erweiterungen siehe [Ein Plugin installieren](/docs/de/plugins/install#install-a-plugin).

112 

113| Oberfläche | Verwaltete `extraKnownMarketplaces` und `enabledPlugins` | Repository `.claude/settings.json` |

114| :------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------- |

115| Terminal, interaktiv | Angewendet beim Sitzungsstart auf jedem Computer, der die Einstellungen erhält | `extraKnownMarketplaces` angewendet nach Vertrauen; `enabledPlugins` angewendet beim Sitzungsstart |

116| `-p` und CI | Angewendet beim Sitzungsstart, mit Installationen im Hintergrund | `extraKnownMarketplaces` nur in vertrauenswürdigen Ordnern; `enabledPlugins` angewendet |

117| Cloud-Sitzungen | In einer von Anthropic gehosteten Umgebung erreichen nur serverseitig verwaltete Einstellungen die Sitzung, die auf sie wartet, bevor sie Plugins installiert. MDM-Richtlinien und verwaltete Einstellungsdateien bleiben auf dem Computer des Benutzers. Für eine selbstgehostete Umgebung siehe [Wo und wann eine Richtlinie gilt](/docs/de/managed-settings#where-and-when-a-policy-applies) | Siehe die **Cloud-Sitzung**-Registerkarte unter [Ein Plugin installieren](/docs/de/plugins/install#install-a-plugin) |

118 

119In einem `-p`- oder CI-Lauf werden Marketplaces und Plugins im Hintergrund installiert, sodass ein Plugin in der ersten Runde fehlen kann. Setzen Sie `CLAUDE_CODE_SYNC_PLUGIN_INSTALL=1`, um den Lauf warten zu lassen, bis die Installation vor seiner ersten Abfrage abgeschlossen ist.

120 

121<h3 id="confirm-the-rollout">

122 Bestätigen Sie den Rollout

123</h3>

124 

125Überprüfen Sie, dass der Marketplace und die Plugins auf einem Computer oder in einem CI-Lauf angekommen sind:

126 

127* **Auf einem Computer**: Starten Sie Claude Code und führen Sie `/plugin` aus. Der Marketplace und die Plugins sind aufgelistet.

128* **In CI**: Führen Sie `claude -p` mit `--output-format stream-json --verbose` aus. Das `init`-Ereignis listet die geladenen Plugins unter `plugins` auf.

129 

130<h2 id="seed-containers-and-ci">

131 Container und CI seeding

132</h2>

133 

134Für Container-Images und CI-Runner, die zur Laufzeit nicht klonen können, füllen Sie ein Plugin-Verzeichnis zur Build-Zeit vor und verweisen Sie `CLAUDE_CODE_PLUGIN_SEED_DIR` darauf. Claude Code registriert die Marketplaces des Seeds beim Start und lädt Plugin-Caches aus dem Seed an Ort und Stelle, ohne zu klonen.

135 

136Ein Seed dient auch Benutzern, die kein Git-Host-Konto haben.

137 

138<Note>

139 In CI/CD-Umgebungen konfigurieren Sie einen Git-Anmeldedaten-Helper, bevor Sie Plugins aus privaten Repositories installieren. Auf GitHub Actions exportieren Sie ein Token mit Lesezugriff auf das Marketplace-Repository als `GH_TOKEN`, führen dann `gh auth setup-git` aus. Das Standard-Workflow-Token kann nur auf das eigene Repository des Workflows zugreifen, daher benötigt ein privater Marketplace in einem anderen Repository ein persönliches Zugriffstoken oder App-Token.

140</Note>

141 

142<Steps>

143 <Step title="Installieren Sie in den Seed zur Build-Zeit">

144 Setzen Sie `CLAUDE_CODE_PLUGIN_CACHE_DIR` auf den Seed-Pfad, damit der Marketplace und die Plugins dort statt in `~/.claude/plugins` installiert werden:

145 

146 ```bash theme={null}

147 CLAUDE_CODE_PLUGIN_CACHE_DIR=/opt/claude-seed claude plugin marketplace add your-org/your-marketplace

148 CLAUDE_CODE_PLUGIN_CACHE_DIR=/opt/claude-seed claude plugin install code-formatter@your-marketplace

149 ```

150 

151 Der Seed hat das gleiche Layout wie `~/.claude/plugins`: `known_marketplaces.json`, `marketplaces/<name>/` und `cache/<marketplace>/<plugin>/<version>/`. Sie können den Seed an einem anderen Pfad als dem, an dem Sie ihn erstellt haben, bereitstellen.

152 </Step>

153 

154 <Step title="Verweisen Sie die Laufzeit auf den Seed">

155 Setzen Sie `CLAUDE_CODE_PLUGIN_SEED_DIR=/opt/claude-seed` in der Umgebung des Containers. Um mehrere Seeds zu verwenden, trennen Sie ihre Pfade mit `:` auf Unix oder `;` unter Windows. Claude Code verwendet den ersten Seed, der einen bestimmten Marketplace oder Plugin-Cache enthält.

156 </Step>

157 

158 <Step title="Aktivieren Sie die Plugins">

159 Die Plugins in einem Seed sind nicht von selbst aktiviert. Setzen Sie `enabledPlugins` für jedes Seed-Plugin, das Sie geladen haben möchten, in verwalteten Einstellungen oder in der `.claude/settings.json` des Repositories.

160 </Step>

161</Steps>

162 

163Um einen Seed zu überprüfen, führen Sie `claude -p` mit `--output-format stream-json --verbose` im Image aus. In der `plugins`-Liste des `init`-Ereignisses befindet sich der `path` jedes geladenen Plugins unter dem Seed, z. B. `/opt/claude-seed/cache/your-marketplace/code-formatter/1.0.0`.

164 

165Seed-Marketplaces folgen diesen Regeln:

166 

167* **Schreibgeschützt**: Claude Code schreibt niemals in den Seed und erzwingt `autoUpdate` aus für Seed-Marketplaces.

168* **Seed-Einträge haben Vorrang**: Beim Start überschreibt ein im Seed deklarierter Marketplace den Eintrag des Benutzers mit demselben Namen. Benutzer deaktivieren ein Seed-Plugin mit `claude plugin disable`, nicht durch Entfernen des Marketplace.

169* **Aktualisierung und Entfernung schlagen fehl**: `claude plugin marketplace update <name>` und `remove` ohne `--scope` auf einem Seed-Marketplace schlagen mit einer Meldung fehl, die das Seed-Verzeichnis benennt.

170* **Richtlinie gilt immer noch**: Die [Zulassungsliste und Blockliste](#restrict-what-users-can-install) überprüfen auch die aufgezeichnete Quelle eines Seed-Marketplace. Erlauben Sie die Quelle, aus der Sie den Seed erstellt haben.

171 

172Für Flotten ohne ausgehenden Git-Zugriff kombinieren Sie einen Seed mit `directory`- oder `file`-Marketplace-Quellen auf einer gemeinsamen Bereitstellung. Setzen Sie auch `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1`, was auch [Plugin-Auto-Update](/docs/de/plugins/loading#when-auto-update-runs) ausschaltet. Wenn ein Proxy verfügbar ist, siehe [Proxy-Konfiguration](/docs/de/network-config#proxy-configuration) für die zu setzenden Variablen.

173 

174<h2 id="restrict-what-users-can-install">

175 Einschränken, was Benutzer installieren können

176</h2>

177 

178Die verwaltete `strictKnownMarketplaces`-Zulassungsliste und die `blockedMarketplaces`-Blockliste bestimmen, aus welchen Marketplace-Quellen Plugins stammen dürfen. Die Quelle eines Marketplace ist das Git-Repository, die URL oder der lokale Pfad, von dem Claude Code es abruft. Beide Listen entsprechen der Quelle des Marketplace, aus dem ein Plugin stammt, nicht dem eigenen Eintrag des Plugins in diesem Marketplace.

179 

180Für die häufige Sperrung, die den offiziellen Marketplace und Ihren eigenen zulässt, siehe [Den offiziellen Marketplace und Ihren eigenen zulassen](#allow-the-official-marketplace-and-your-own). Kombinieren Sie dies mit [`disableSideloadFlags`](#control-matrix), damit Benutzer Plugins nicht aus einem lokalen Verzeichnis oder einer URL laden können.

181 

182Beide Listen gelten vor dem Download und erneut beim Sitzungsstart:

183 

184* **Vor einem Download**: Die Listen gelten, wenn ein Benutzer einen Marketplace hinzufügt und bei jedem Install, Update, Refresh und Auto-Update.

185* **Beim Sitzungsstart**: Die Listen gelten erneut für bereits installierte Plugins, sodass ein installiertes Plugin, dessen Marketplace-Quelle nicht mehr übereinstimmt, nicht geladen wird. `/plugin` listet es mit `Marketplace "<name>" is not in the allowed marketplace list` oder `Marketplace "<name>" is blocked by enterprise policy` auf.

186 

187Wo die beiden Listen durchgesetzt werden, hängt davon ab, wo Sie sie festlegen:

188 

189* **Die claude.ai-Admin-Konsole**: Claude Code erzwingt beide Listen in den Sitzungen, die [server-verwaltete Einstellungen lesen](/docs/de/managed-settings#where-and-when-a-policy-applies). claude.ai überprüft sie auch, wenn jemand in Ihrer Organisation einen neuen Marketplace aus einem Git-Repository auf claude.ai oder aus **Anpassen** in der Claude Desktop-App außerhalb der Code-Registerkarte hinzufügt. Dies umfasst einen Marketplace, den ein Mitglied für sein eigenes Konto hinzufügt, und einen, der für die gesamte Organisation unter [**Organisationseinstellungen > Plugins**](https://claude.ai/admin-settings/plugins) hinzugefügt wird. claude.ai lehnt ein Repository ab, das die Zulassungsliste nicht zulässt oder das die Blockliste nennt. Es überprüft einen Marketplace nicht erneut, der an beiden Stellen hinzugefügt wurde, bevor Sie die Listen festlegten, und es überprüft hochgeladene Plugins nicht.

190* **Eine verwaltete Einstellungsdatei, eine Richtlinie auf Betriebssystemebene oder eine andere verwaltete Quelle**: Claude Code erzwingt beide Listen, wo es diese Quelle liest. claude.ai liest sie nicht.

191 

192Während eine Zulassungsliste festgelegt ist oder eine Blockliste eine andere Quelle als [`skills-dir`](#blocklist-with-blockedmarketplaces) nennt, wird ein Plugin, dessen Marketplace Claude Code nicht finden kann, nicht geladen. `/plugin` zeigt den Richtlinienfehler dafür an, anstatt einen Fehler „nicht gefunden" anzuzeigen. Der häufige Fall ist ein veralteter `enabledPlugins`-Eintrag für einen Marketplace, den niemand registriert hat.

193 

194<h3 id="control-matrix">

195 Kontrollmatrix

196</h3>

197 

198Die Tabelle listet jeden Plugin-Richtlinienschlüssel auf, was er erzwingt und was er nicht kann.

199 

200| Schlüssel | Was er erzwingt | Was er nicht kann |

201| :----------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

202| `strictKnownMarketplaces` | Zulassungsliste von Marketplace-Quellen. `[]` blockiert jede Quelle, einschließlich des offiziellen Marketplace. Alias: `allowedMarketplaces` | Registriert keinen Marketplace, schränkt Einträge in einem zulassenen Marketplace nicht ein oder blockiert `--plugin-dir` nicht |

203| `blockedMarketplaces` | Blockliste von Marketplace-Quellen, überprüft vor der Zulassungsliste | Blockiert keinen Marketplace, der bereits aus einer Quelle registriert ist, die nicht übereinstimmt |

204| `syncClaudeAiPlugins` | Setzen Sie auf `false`, um zu verhindern, dass Claude Code die Plugins herunterlädt und lädt, die [von claude.ai synchronisiert werden](/docs/de/plugins/loading#synced-plugins) für das Konto jedes Benutzers. Erfordert Claude Code v2.1.273 oder später | Schaltet kein synchronisiertes Plugin aus. Dafür setzen Sie `"<name>@synced": false` in [`enabledPlugins`](/docs/de/settings-reference#enabledplugins) |

205| `enabledPlugins` | `true` erzwingt das Aktivieren, `false` blockiert in jedem Bereich und verbirgt das Plugin | Installiert kein Plugin, dessen Marketplace nicht registriert oder zulässig ist |

206| `disableSideloadFlags` | Lehnt `--plugin-dir`, `--plugin-url`, `--agents`, die Agent SDK `plugins`-Option und nicht-SDK `--mcp-config` beim Start ab und lehnt Ordner ab, die in der [`CLAUDE_CODE_PLUGIN_DIRS`](/docs/de/env-vars#variables)-Variable benannt sind, auf die gleiche Weise | Schränkt `.mcp.json`, `claude mcp add` oder SDK-bereitgestellte Server nicht ein. Kombinieren Sie mit [`allowedMcpServers`](/docs/de/managed-mcp) |

207| `disableCommandPluginSources` | Blockiert Plugins mit einer `command`-Quelle vor Installation, Update oder Laden. Eine `command`-Quelle ist eine, deren Plugin-Verzeichnis durch Ausführung eines Befehls auf dem Computer erzeugt wird. Wenn nicht gesetzt, nimmt es den Wert von `allowManagedHooksOnly` an | Beeinflusst andere Quellentypen nicht |

208| `allowManagedHooksOnly` | Schränkt ein, welche Hooks ausgeführt werden. Siehe [`allowManagedHooksOnly`](/docs/de/settings-reference#allowmanagedhooksonly) | Vertraut Hooks von Plugins nicht, die Benutzer selbst aktivieren |

209| `strictPluginOnlyCustomization` | Blockiert Skills, Agents, Hooks und MCP-Server, die nicht von einem Plugin, verwalteten Einstellungen oder Claude Code-Built-ins stammen. Setzen Sie auf `true`, um alle vier Typen abzudecken, oder auf ein Array von `skills`, `agents`, `hooks` und `mcp`-Werten wie `["skills", "hooks"]`, um einige abzudecken | Schränkt nicht ein, welche Plugins Benutzer installieren. Kombinieren Sie mit `strictKnownMarketplaces` |

210| `pluginSuggestionMarketplaces` | Marketplaces, deren Plugins als Installationsvorschläge angezeigt werden können. Siehe [Plugins empfehlen](#recommend-plugins) | Beeinflusst die integrierten Tipps nicht |

211| `pluginTrustMessage` | Fügt Ihren Text zur Vertrauenswarnung an, die `/plugin` vor der Installation eines Plugins anzeigt | Ändert den Text der Warnung selbst nicht |

212| `allowedChannelPlugins` | Ersetzt die Standardliste von Plugins, die Kanalnachrichten pushen dürfen. Erfordert `channelsEnabled: true` | Siehe [Einschränken, welche Channel-Plugins ausgeführt werden können](/docs/de/channels#restrict-which-channel-plugins-can-run) |

213| [`CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL=1`](/docs/de/env-vars) | Stoppt interaktive Terminal-Sitzungen von der automatischen Registrierung des offiziellen Marketplace | Entfernt keinen bereits registrierten Marketplace. Die Zulassungsliste und Blockliste geben die gleiche automatische Registrierung ohne sie ein. Ein Computer, der einmal damit gestartet wurde, setzt die automatische Registrierung nicht fort, nachdem Sie es deaktiviert haben |

214 

215Jeder Schlüssel in der Tabelle ist eine verwaltete Einstellung, außer `enabledPlugins`, `syncClaudeAiPlugins` und `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL`:

216 

217* **`enabledPlugins`**: Sie können es in jedem Bereich festlegen, und verwaltete Einstellungen sperren es.

218* **`syncClaudeAiPlugins`**: Jeder Benutzer kann es auch in seinen eigenen Benutzer- oder lokalen Einstellungen festlegen. Siehe seinen [Bereich in der Einstellungsreferenz](/docs/de/settings-reference#syncclaudeaiplugins).

219* **`CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL`**: Dies ist eine Umgebungsvariable, die Sie über den verwalteten `env`-Block bereitstellen, der unter [Updates für die gesamte Flotte ausschalten](#turn-updates-off-for-the-whole-fleet) angezeigt wird.

220 

221Jeder Einstellungsschlüssel hier hat einen Eintrag in der [Einstellungsreferenz](/docs/de/settings-reference).

222 

223<h4 id="aliases-for-the-marketplace-keys">

224 Aliase für die Marketplace-Schlüssel

225</h4>

226 

227`strictKnownMarketplaces` kann auch als `allowedMarketplaces` geschrieben werden, und `extraKnownMarketplaces` kann auch als `additionalMarketplaces` geschrieben werden.

228 

229* **Version**: Die Aliase erfordern Claude Code v2.1.232 oder später, und ältere Clients ignorieren sie. Behalten Sie in einer Datei, die eine gemischte Flotte liest, die kanonischen Namen.

230* **Beide Schreibweisen gesetzt**: Wenn eine Datei beide Schreibweisen setzt, gilt der Wert des kanonischen Schlüssels.

231 

232<h3 id="allowlist-with-strictknownmarketplaces">

233 Zulassungsliste mit `strictKnownMarketplaces`

234</h3>

235 

236Setzen Sie die Zulassungsliste auf eine Liste dieser Quellobjekte. Die meisten Einträge stimmen genau überein, `hostPattern`- und `pathPattern`-Einträge stimmen als reguläre Ausdrücke überein, und `github`-Besitzer-Wildcards stimmen nach Besitzer überein:

237 

238* **`github`**: `{ "source": "github", "repo": "your-org/approved-plugins" }`, mit optionalem `ref` und `path`.

239* **`github`-Besitzer-Wildcard**: `{ "source": "github", "repo": "your-org/*" }` stimmt mit jedem Repository unter diesem Besitzer überein. Das `*` muss für den gesamten Repository-Namen stehen. Claude Code ignoriert Einträge wie `*/plugins` und `your-org/tools-*` als ungültig, sodass sie nichts abgleichen. Erfordert Claude Code v2.1.223 oder später.

240* **`git`**: `{ "source": "git", "url": "https://gitlab.example.com/tools/plugins.git" }`, mit optionalem `ref` und `path`.

241* **`url`**: `{ "source": "url", "url": "https://plugins.example.com/marketplace.json" }`, mit optionalen `headers`.

242* **`file` und `directory`**: `{ "source": "file", "path": "/opt/marketplace/marketplace.json" }` oder `{ "source": "directory", "path": "/opt/marketplace/plugins" }`, mit absoluten Pfaden.

243* **`hostPattern`**: `{ "source": "hostPattern", "hostPattern": "^github\\.example\\.com$" }`, abgeglichen gegen den Host von `github`, `git` und `url`-Quellen. Das Muster stimmt überall im Hostnamen überein, daher verankern Sie es mit `^` und `$` wie gezeigt, um den gesamten Host abzugleichen. Eine `github`-Quelle zählt immer als `github.com`. Verwenden Sie einen `hostPattern`-Eintrag für einen GitHub Enterprise Server oder GitLab-Host, auf dem Entwickler ihre eigenen Marketplaces erstellen. Die [GHES-Seite](/docs/de/github-enterprise-server#allowlist-ghes-marketplaces-in-managed-settings) hat das durchgearbeitete Beispiel.

244* **`pathPattern`**: `{ "source": "pathPattern", "pathPattern": "^/opt/approved/" }`, abgeglichen gegen den `path` von `file`- und `directory`-Quellen. Das Muster stimmt überall im Pfad überein, daher beginnen Sie es mit `^`, um ein Verzeichnispräfix zu fixieren. `".*"` erlaubt jeden lokalen Pfad.

245* **`skills-dir`**: `{ "source": "skills-dir" }` hält [Skills-Verzeichnis-Plugins](#keep-skills-directory-plugins-loading) beim Laden unter einer Zulassungsliste und stimmt mit keinem Marketplace überein.

246 

247<h4 id="how-entries-match">

248 Wie Einträge abgleichen

249</h4>

250 

251Ein `url`-Eintrag stimmt mit seinem `url`-Wert überein; `headers` werden nicht verglichen. Für `github`- und `git`-Einträge müssen `repo` oder `url`, `ref` und `path` alle übereinstimmen oder auf beiden Seiten fehlen:

252 

253* Ein Eintrag ohne `ref` deckt keine Quelle mit `ref: "main"` ab.

254* Ein Eintrag für `your-org/your-marketplace` deckt keine `git`-URL ab, die das gleiche Repository klont.

255* Ein nachgestellter Schrägstrich, ein `.git`-Suffix oder `ssh://` anstelle von `https://` ist ein anderer Wert. Wenn ein Marketplace von mehr als einer URL geklont werden kann, bevorzugen Sie einen `hostPattern`-Eintrag.

256 

257Besitzer-Wildcard-Einträge folgen den genauen Regeln für `ref` und stimmen mit jedem `path` im Repository überein, es sei denn, der Eintrag fixiert einen. Wildcard-Matching ist auf der Zulassungsliste case-sensitiv.

258 

259<h4 id="keep-skills-directory-plugins-loading">

260 Skills-Verzeichnis-Plugins laden halten

261</h4>

262 

263Skills-Verzeichnis-Plugins sind die Plugins, die Benutzer unter `~/.claude/skills/` oder in einem Projekt `.claude/skills/` in Ordnern behalten, die ein `.claude-plugin/plugin.json` tragen. Wenn Sie eine Zulassungsliste ohne einen `{ "source": "skills-dir" }`-Eintrag festlegen, werden sie nicht geladen. Einfache [Skills](/docs/de/skills), d. h. ein `SKILL.md` ohne dieses Manifest, werden weiterhin geladen.

264 

265<h4 id="marketplaces-hosted-on-claude-ai">

266 Auf claude.ai gehostete Marketplaces

267</h4>

268 

269Die Zulassungsliste und Blockliste stimmen mit einem [auf claude.ai gehosteten Marketplace](/docs/de/plugins/install#add-from-claude-ai) nach seinem Host überein. Um einen zuzulassen oder zu blockieren, fügen Sie einen `hostPattern`-Eintrag hinzu, der `claude.ai` zu `strictKnownMarketplaces` oder `blockedMarketplaces` abgleicht. Auf der Zulassungsliste lässt ein solcher Eintrag die Marketplaces Ihrer Organisation auf claude.ai und die claude.ai-Standard-Marketplaces zu, aber nicht einen Marketplace aus den eigenen claude.ai-Uploads eines Mitglieds oder einen, dessen Bereich claude.ai nicht angegeben hat. Erfordert Claude Code v2.1.273 oder später.

270 

271<h4 id="lock-every-source-out">

272 Jede Quelle sperren

273</h4>

274 

275Eine leere Zulassungsliste, `[]`, sperrt jede Marketplace-Quelle, einschließlich des offiziellen Marketplace.

276 

277Diese Sperrung deckt nicht die Plugins ab, die [von claude.ai synchronisiert werden](/docs/de/plugins/loading#synced-plugins), die Claude Code aus dem Konto jedes Benutzers herunterlädt, anstatt aus einem Marketplace. Um diese auch zu stoppen, setzen Sie [`syncClaudeAiPlugins`](/docs/de/settings-reference#syncclaudeaiplugins) in verwalteten Einstellungen auf `false` oder schalten Sie Skills für Ihre Organisation auf claude.ai aus.

278 

279<h3 id="blocklist-with-blockedmarketplaces">

280 Blockliste mit `blockedMarketplaces`

281</h3>

282 

283`blockedMarketplaces` nimmt die gleichen Quellobjekte wie [`strictKnownMarketplaces`](#allowlist-with-strictknownmarketplaces) und wird zuerst überprüft, sodass eine Quelle auf beiden Listen blockiert wird. Blocklisten-Matching ist breiter als Zulassungslisten-Matching:

284 

285* Git-URLs werden kanonisiert, sodass die `git@`- und `https://`-Formen, `.git`-Suffixe und nachgestellte Schrägstriche eines `github.com`-Repositorys alle den gleichen Eintrag abgleichen.

286* Ein `github`-Eintrag blockiert auch die äquivalente `git`-URL und umgekehrt.

287* Für einen `owner/*`-Eintrag ist der Besitzervergleich case-insensitiv.

288* Ein Eintrag ohne `ref` oder `path` blockiert jeden ref und path der Repositorys, die er abgleicht.

289 

290Dieser Eintrag blockiert jedes Repository unter einem GitHub-Besitzer:

291 

292```json theme={null}

293{

294 "blockedMarketplaces": [

295 { "source": "github", "repo": "untrusted-org/*" }

296 ]

297}

298```

299 

300Die `url`-Einträge in `blockedMarketplaces` gelten auch, wenn ein Benutzer eine `https://`-Repository-URL hinzufügt, die Claude Code [klont, anstatt zu fetchen](/docs/de/plugins/cli-reference#plugin-marketplace-add), wie eine einfache `github.com`- oder `gitlab.com`-Repository-URL. Der Benutzer kann diese URL nicht hinzufügen, wenn ein Eintrag sie nennt. Der Abgleich ignoriert das `.git`-Suffix und jeden ref, den der Benutzer nach `#` anhängt. Erfordert Claude Code v2.1.232 oder später.

301 

302Ein `{ "source": "skills-dir" }`-Eintrag hier stoppt [Skills-Verzeichnis-Plugins](#keep-skills-directory-plugins-loading) vom Laden, sowohl von `~/.claude/skills/` als auch von einem Projekt `.claude/skills/`.

303 

304Eine Blockliste, die nur diesen Eintrag nennt, zählt nicht als aktive Einschränkung, sodass sie nicht [Plugins, deren Marketplace Claude Code nicht finden kann](#restrict-what-users-can-install), vom Laden stoppt.

305 

306<h3 id="allow-the-official-marketplace-and-your-own">

307 Den offiziellen Marketplace und Ihren eigenen zulassen

308</h3>

309 

310Die meisten Organisationen lassen den offiziellen Marketplace und ihren eigenen zu und registrieren beide, sodass jeder Computer sie hat. Diese verwaltete Einstellungsrichtlinie lässt beide Marketplaces zu, registriert beide, erzwingt zwei Plugins und lehnt `--plugin-dir` ab:

311 

312```json theme={null}

313{

314 "strictKnownMarketplaces": [

315 { "source": "github", "repo": "anthropics/claude-plugins-official" },

316 { "source": "github", "repo": "your-org/*" },

317 { "source": "skills-dir" }

318 ],

319 "extraKnownMarketplaces": {

320 "claude-plugins-official": {

321 "source": { "source": "github", "repo": "anthropics/claude-plugins-official" }

322 },

323 "your-marketplace": {

324 "source": { "source": "github", "repo": "your-org/your-marketplace" }

325 }

326 },

327 "enabledPlugins": {

328 "code-formatter@your-marketplace": true,

329 "deploy-helper@your-marketplace": true

330 },

331 "disableSideloadFlags": true

332}

333```

334 

335Auf einem Computer mit dieser Richtlinie schlägt das Hinzufügen einer Quelle außerhalb der Liste fehl, z. B. `/plugin marketplace add https://example.com/other-marketplace.git`, mit einer Nachricht, die `is blocked by enterprise policy` gefolgt von den zulassenen Quellen enthält. `claude --plugin-dir ./x` beendet sich mit einer Nachricht, die `disableSideloadFlags` nennt.

336 

337Der `{ "source": "skills-dir" }`-Eintrag hält [Skills-Verzeichnis-Plugins](#keep-skills-directory-plugins-loading) unter dieser Zulassungsliste laden. Entfernen Sie diesen Eintrag und sie werden nicht geladen.

338 

339Registrieren Sie beide Marketplaces mit expliziten `extraKnownMarketplaces`-Einträgen, wie diese Richtlinie es tut, anstatt sich auf die Zulassungsliste oder auf die Selbstregistrierung des offiziellen Marketplace zu verlassen:

340 

341* **Die Zulassungsliste registriert nichts**: Ein `extraKnownMarketplaces`-Eintrag tut es, und er muss selbst die Zulassungsliste bestehen. Claude Code weigert sich, einen verwalteten Marketplace zu registrieren, dessen Quelle die Zulassungsliste nicht abgleicht.

342* **Der offizielle Marketplace registriert sich nur in einer interaktiven Terminal-Sitzung**: Auch dort registriert er sich nur, wenn die Zulassungsliste es zulässt. Ein `-p`-Lauf oder ein Terminal, das an eine Cloud-Sitzung angehängt ist, registriert es nie.

343* **Ein blockierter Versuch wird erinnert**: Wenn ein Computer jemals unter einer Richtlinie lief, die den offiziellen Marketplace blockierte, zeichnet Claude Code den blockierten Versuch auf und versucht nicht erneut, nachdem die Richtlinie geändert wird. Eine `[]`-Sperrung ist eine solche Richtlinie. Dieser Computer registriert ihn wieder nur durch einen `extraKnownMarketplaces`-Eintrag wie den in dieser Richtlinie, einen `enabledPlugins`-Eintrag für eines seiner Plugins oder ein manuelles `/plugin marketplace add`.

344 

345<h2 id="set-update-policy">

346 Aktualisierungsrichtlinie festlegen

347</h2>

348 

349Sie können die Aktualisierungsrichtlinie pro Marketplace, für die ganze Flotte oder pro Benutzergruppe durch Release-Kanäle festlegen.

350 

351<h3 id="turn-auto-update-on-or-off-per-marketplace">

352 Schalten Sie Auto-Update pro Marketplace ein oder aus

353</h3>

354 

355Plugin-Auto-Update läuft im Hintergrund nach dem Start für Marketplaces, die es eingeschaltet haben. Für welche Marketplaces es standardmäßig eingeschaltet ist, siehe [Wenn Auto-Update läuft](/docs/de/plugins/loading#when-auto-update-runs). Um für die Flotte zu entscheiden, setzen Sie `"autoUpdate": true` oder `false` auf einem verwalteten `extraKnownMarketplaces`-Eintrag:

356 

357* Wenn der verwaltete Eintrag das Feld setzt, lehnt Claude Code den `/plugin`-Toggle des Benutzers mit einem Fehler ab, der mit `Auto-update for '<name>' is set by` beginnt.

358* Wenn der verwaltete Eintrag das Feld nicht setzt, bleibt der Toggle des Benutzers erhalten.

359 

360<h3 id="turn-updates-off-for-the-whole-fleet">

361 Schalten Sie Updates für die ganze Flotte aus

362</h3>

363 

364Um Plugin-Auto-Update für jeden Marketplace auszuschalten, setzen Sie `DISABLE_AUTOUPDATER` im verwalteten `env`-Block, wie dieses Beispiel zeigt. Die gleiche Variable stoppt auch Claude Code's eigene Updates:

365 

366```json theme={null}

367{

368 "env": {

369 "DISABLE_AUTOUPDATER": "1"

370 }

371}

372```

373 

374Um Claude Code's eigene Updates zu stoppen, aber Plugin-Auto-Update zu behalten, fügen Sie `"FORCE_AUTOUPDATE_PLUGINS": "1"` zum gleichen Block hinzu. Die anderen [Umgebungsvariablen, die Plugin-Auto-Update stoppen](/docs/de/plugins/loading#when-auto-update-runs), funktionieren auf die gleiche Weise.

375 

376`DISABLE_AUTOUPDATER` deckt keine Plugins mit einer [`command`-Quelle](/docs/de/plugins/marketplace-reference#command-plugin-source) ab. Claude Code führt den Befehl jedes aktivierten Plugins jede Sitzung erneut aus und installiert die Ausgabe, wenn sie sich geändert hat. Für das, was diese Läufe stoppt, siehe [Wenn eine Command-Quelle erneut läuft](/docs/de/plugins/loading#when-a-command-source-re-runs).

377 

378<h3 id="assign-release-channels-to-user-groups">

379 Weisen Sie Release-Kanäle Benutzergruppen zu

380</h3>

381 

382Um stabile und Early-Access-Kanäle zu betreiben, hosten Sie zwei Marketplaces, die auf verschiedene refs der gleichen Plugins verweisen. Geben Sie dann jeder Benutzergruppe ihren eigenen Marketplace durch entweder separate endpunktseitig verwaltete Einstellungen oder eine Gateway-Richtlinie. Serverseitig verwaltete Einstellungen aus der Administratorkonsole [gelten für jeden Benutzer in Ihrer Organisation](/docs/de/server-managed-settings#current-limitations), daher können sie nicht verschiedene Einstellungen verschiedenen Gruppen zuweisen.

383 

384* Stellen Sie separate [endpunktseitig verwaltete Einstellungen](/docs/de/managed-settings#delivery-mechanisms), z. B. eine verwaltete Einstellungsdatei oder ein MDM-Profil, für die Geräte jeder Gruppe bereit. Um zu überprüfen, ob die Datei oder das Profil pro Gruppe auf einem Gerät gilt, das auch eine organisationsweite Quelle hat, siehe [Wie Claude Code verwaltete Quellen kombiniert](/docs/de/managed-settings#precedence-within-the-managed-tier).

385* Definieren Sie eine [Claude Apps Gateway-Richtlinie](/docs/de/claude-apps-gateway-config#managed) pro Gruppe. Das Gateway wendet die erste Richtlinie an, deren Abgleichsregel zu einem Benutzer passt, daher ordnen Sie die Richtlinien so, dass jeder Benutzer die Richtlinie seiner Gruppe erreicht. Die `extraKnownMarketplaces`-Karte dieser Richtlinie wird nicht mit einer anderen Richtlinie zusammengeführt, daher listen Sie jeden Marketplace auf, den die Gruppe benötigt, nicht nur ihren Kanal-Marketplace.

386 

387Mit beiden Mechanismen erhält die stabile Gruppe diese Konfiguration:

388 

389```json theme={null}

390{

391 "extraKnownMarketplaces": {

392 "stable-tools": {

393 "source": { "source": "github", "repo": "your-org/stable-tools" }

394 }

395 }

396}

397```

398 

399Die Early-Access-Gruppe erhält stattdessen `latest-tools`. Um die beiden Marketplaces einzurichten, siehe [Betreiben Sie Release-Kanäle](/docs/de/plugins/host-marketplace#run-release-channels).

400 

401<h2 id="recommend-plugins">

402 Plugins empfehlen

403</h2>

404 

405Marketplace-Besitzer können `relevance`-Signale an Einträge anhängen, damit Claude Code das Plugin vorschlägt, wenn ein Projekt übereinstimmt.

406 

407Vorschläge aus einem Marketplace erscheinen nur, wenn er auf dem Computer des Benutzers registriert ist, Sie seinen Namen in `pluginSuggestionMarketplaces` in verwalteten Einstellungen auflistet, und Sie seine Quelle in der gleichen Richtlinie deklarieren. Deklarieren Sie die Quelle entweder als den `extraKnownMarketplaces`-Eintrag des Marketplace oder als einen Zulassungslisten-Eintrag. Der offizielle Marketplace benötigt nur den Namen. Siehe [Aktivieren Sie Vorschläge in verwalteten Einstellungen](/docs/de/plugins/relevance#enable-suggestions-in-managed-settings).

408 

409<h2 id="audit-and-review">

410 Überprüfen und überprüfen

411</h2>

412 

413OpenTelemetry-Ereignisse und die Analytics-API sagen Ihnen, was Ihre Flotte installiert und ausführt.

414 

415Für das, was ein Plugin auf einem Computer ausführen kann und was jede Vertrauensstufe erlaubt, lesen Sie [Plugin-Sicherheit](/docs/de/plugins/security), bevor Sie einen Marketplace genehmigen.

416 

417<h3 id="opentelemetry-events">

418 OpenTelemetry-Ereignisse

419</h3>

420 

421`claude_code.plugin_installed` zeichnet jede Installation auf, und `claude_code.plugin_loaded` zeichnet jedes aktivierte Plugin beim Sitzungsstart auf. Beide Ereignisse redigieren oder weglassen Namen von Drittanbieter-Plugins und Marketplaces, es sei denn, Sie setzen `OTEL_LOG_TOOL_DETAILS=1`, wie [Redigierte Plugin-Namen in Ihrem Backend](/docs/de/plugins/measure#redacted-plugin-names-in-your-backend) zeigt. Feldlisten befinden sich unter [Plugin-Installationsereignis](/docs/de/monitoring-usage#plugin-installed-event) und [Plugin-Ladeereignis](/docs/de/monitoring-usage#plugin-loaded-event).

422 

423<h3 id="analytics-api">

424 Analytics-API

425</h3>

426 

427Im Enterprise-Plan gibt `GET /v1/organizations/analytics/plugins` pro Plugin, pro Tag Install- und Aufrufraten über Claude Code und Cowork zurück. Sie können die Raten nach Benutzer oder RBAC-Gruppe gruppieren. Plugin-Aktivität, die Anthropic ohne einen Plugin-Namen erreicht, erscheint in einer aggregierten `third-party`-Zeile. Siehe die [Endpunkt-Referenz](https://platform.claude.com/docs/en/api/admin/analytics/plugins/list) und [Greifen Sie programmgesteuert auf Daten zu](/docs/de/analytics#access-data-programmatically) für den Schlüssel, den sie benötigt.

428 

429<h2 id="plan-for-what-managed-settings-can’t-enforce">

430 Planen Sie, was verwaltete Einstellungen nicht erzwingen können

431</h2>

432 

433Diese Anfragen aus Sicherheitsüberprüfungen haben keinen dedizierten Schlüssel im aktuellen Einstellungsschema. Die nächsten vorhandenen Steuerelemente sind:

434 

435* **Pro-Benutzer- oder Pro-Gruppen-Targeting**: Jeder Plugin-Schlüssel gilt für jeden Benutzer, der die Einstellungen erhält. Serverseitig verwaltete Einstellungen stellen eine Konfiguration pro Organisation bereit. Für Pro-Gruppen-Richtlinie verwenden Sie separate endpunktseitig verwaltete Einstellungen oder Gateway-Richtlinien, wie unter [Weisen Sie Release-Kanäle Benutzergruppen zu](#assign-release-channels-to-user-groups).

436* **Einschränken von Einträgen in einem zulässigen Marketplace**: Die Zulassungsliste erfüllt Marketplace-Quellen. Um ein Plugin aus einem zulässigen Marketplace zu blockieren, setzen Sie es auf `false` in verwalteten `enabledPlugins`.

437* **Verstecken Sie `/plugin`**: Kein Schlüssel deaktiviert den Befehl. Das nächste Äquivalent kombiniert eine Zulassungsliste, die nur Ihren Marketplace benennt, verwaltete `enabledPlugins`-Einträge für die Plugins, die Sie bereitstellen, und `disableSideloadFlags`.

438* **Gating `--plugin-dir` durch die Zulassungsliste**: Die Zulassungsliste deckt `--plugin-dir` nicht ab. `disableSideloadFlags` tut es.

439* **Erzwingen Sie die claude.ai-Plugin-Toggles durch diese Schlüssel**: [**Organisationseinstellungen > Plugins & Skills**](https://claude.ai/admin-settings/skills?tab=inventory) setzt nicht die Schlüssel auf dieser Seite. Was Mitglieder und Ihre Organisation dort einschalten, erreicht die CLI als [synchronisierte Plugins](/docs/de/plugins/loading#synced-plugins), die ihre eigenen Steuerelemente haben.

440 

441<h2 id="troubleshoot-policy">

442 Richtlinie fehlerbeheben

443</h2>

444 

445Wenn sich die Plugin-Richtlinie auf einem Computer nicht wie erwartet verhält, überprüfen Sie zuerst diese Symptome:

446 

447* **Die verwaltete Datei wurde nicht geparst**: Wenn eine `managed-settings.json` kein gültiges JSON ist, weigert sich Claude Code zu starten und druckt [einen Fehler, der die Datei benennt](/docs/de/errors#managed-settings-document-could-not-be-parsed). Eine Datei, die geparst wird, aber einen ungültigen Eintrag hat, behält den Rest ihrer Richtlinie. Siehe [Ungültige Einträge in verwalteten Einstellungen](/docs/de/managed-settings#invalid-entries-in-managed-settings).

448* **Die verwaltete Quelle wurde nicht geladen**: Führen Sie `/status` aus und suchen Sie nach `Enterprise managed settings` in der `Setting sources`-Zeile. Wenn es fehlt, wurde die Quelle nicht geladen.

449* **Ein Benutzer meldet `blocked by enterprise policy`**: Die Meldung benennt den Marketplace oder seine Quelle. Für eine Zulassungsliste listet sie auch die zulässigen Quellen auf. Die benutzerorientierten Einträge befinden sich unter [Fehlerbehebung für Plugins](/docs/de/plugins/troubleshooting).

450* **Ein Plugin, das der Benutzer in `~/.claude/settings.json` deaktiviert hat, lädt immer noch**: Eine andere Einstellungsquelle hat es erneut aktiviert, z. B. ein verwalteter `enabledPlugins`-Eintrag, der es erzwingt. `/plugin` und `claude plugin list` zeigen `Disabled in ~/.claude/settings.json but still loads` mit dieser Einstellungsquelle.

451 

452<h2 id="next-steps">

453 Nächste Schritte

454</h2>

455 

456* [Marketplace-Referenz](/docs/de/plugins/marketplace-reference#marketplace-sources): Die `source`-Werte, die `extraKnownMarketplaces`, `strictKnownMarketplaces` und `blockedMarketplaces` akzeptieren

457* [Hosten und verwalten Sie einen Marketplace](/docs/de/plugins/host-marketplace): Betreiben Sie den Marketplace, auf den Ihre Richtlinie verweist

458* [Plugin-Sicherheit und Vertrauen](/docs/de/plugins/security): Was ein Plugin auf einem Computer tun kann und wie man eines vor der Installation überprüft

459* [Serverseitig verwaltete Einstellungen](/docs/de/server-managed-settings): Stellen Sie diese Schlüssel aus der claude.ai-Administratorkonsole bereit

460* [Fehlerbehebung für Plugins](/docs/de/plugins/troubleshooting#blocked-by-your-organization): Die Meldungen, die Benutzer sehen, wenn die Richtlinie sie blockiert

plugins/overview.md +142 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Plugins-Übersicht

6 

7> Verstehen Sie, was ein Claude Code-Plugin ist, wann Sie eines statt einer eigenständigen Skill oder eines MCP-Servers benötigen, und welche Seite Sie lesen müssen, um eines zu installieren oder zu erstellen.

8 

9Ein Claude Code-Plugin ist ein Verzeichnis von Skills, Agents, Hooks, MCP-Servern oder anderen Komponenten, die Claude Code als eine Einheit installiert und lädt. Die meisten Plugins stammen aus einem Marketplace, der ein Katalog ist, der Plugins auflistet und anzeigt, wo man sie abruft. Sie können auch ein Plugin aus einem Ordner laden, den Ihnen jemand gibt, oder [Ihr eigenes erstellen](/docs/de/plugins/create).

10 

11<Note>

12 Wenn Sie claude.ai Chat oder Cowork verwenden und nicht Claude Code, siehe [Plugins auf claude.ai und in Cowork](https://claude.com/docs/plugins/overview).

13</Note>

14 

15Um jetzt ein Plugin auszuprobieren, führen Sie `/plugin` in einer Claude Code-Terminalsitzung aus und installieren Sie eines aus der Registerkarte **Discover**, die die Plugins aus Anthropics offiziellem Marketplace und jedem Marketplace auflistet, den Sie hinzugefügt haben. Von dort aus:

16 

17* [Plugins installieren und verwalten](/docs/de/plugins/install): die vollständigen Installationsschritte, Bereiche und andere Oberflächen

18* [Ein Plugin erstellen](/docs/de/plugins/create): Erstellen Sie Ihr eigenes

19* [Entscheiden Sie, ob Sie ein Plugin benötigen](#decide-whether-you-need-a-plugin): ob ein Plugin das richtige Werkzeug für das ist, was Sie möchten

20 

21<h2 id="understand-what-a-plugin-is">

22 Verstehen Sie, was ein Plugin ist

23</h2>

24 

25Ein Plugin ist ein Verzeichnis von Komponenten, normalerweise mit einem Manifest. Das Manifest, eine JSON-Datei unter `.claude-plugin/plugin.json`, gibt dem Plugin seinen Namen und kann eine Version, eine Beschreibung und andere [Metadaten](/docs/de/plugins/manifest-reference) hinzufügen. Die Komponenten sind das, was das Plugin zu Claude Code hinzufügt, wie zum Beispiel:

26 

27* [**Skills**](/docs/de/plugins/components#skills): `SKILL.md`-Anweisungen, die Claude lädt, wenn relevant, und die Sie auch als Befehl ausführen können

28* [**Agents**](/docs/de/plugins/components#agents): Subagent-Definitionen, an die Claude delegieren kann

29* [**Hooks**](/docs/de/plugins/components#hooks): Befehle, die Claude Code an Punkten in seinem Lebenszyklus ausführt, z. B. nach jeder Bearbeitung

30* [**MCP-Server**](/docs/de/plugins/components#mcp-servers): Tool-Server, mit denen sich Claude Code verbindet, während das Plugin aktiviert ist

31 

32Dieses Diagramm zeigt ein Plugin namens `my-plugin`, das eine Komponente von jedem dieser Typen enthält, und was Sie von jeder Datei erhalten, sobald das Plugin geladen wird.

33 

34<img src="https://mintcdn.com/claude-code/2Q_GtOEovg5qaBem/images/plugin-directory.svg?fit=max&auto=format&n=2Q_GtOEovg5qaBem&q=85&s=f623b64e82713b830e48174f0a922888" className="dark:hidden" alt="Diagramm in zwei Spalten, verbunden durch fünf gerade Pfeile. Links das Verzeichnis eines Plugins namens my-plugin mit einem Manifest unter .claude-plugin/plugin.json, skills/review/SKILL.md, agents/reviewer.md, hooks/hooks.json, .mcp.json und anderen Komponenten. Rechts das, was jede Datei in Ihrer Sitzung gibt: Das Manifest setzt den Plugin-Namen, my-plugin; die Skill läuft als /my-plugin:review; die Agent-Datei ist ein Subagent, an den Claude delegieren kann; die Hooks-Datei enthält Hooks, die bei Lebenszyklusereignissen ausgeführt werden; und .mcp.json fügt einen MCP-Server hinzu, der Claude Tools gibt." width="760" height="336" data-path="images/plugin-directory.svg" />

35 

36<img src="https://mintcdn.com/claude-code/2Q_GtOEovg5qaBem/images/plugin-directory-dark.svg?fit=max&auto=format&n=2Q_GtOEovg5qaBem&q=85&s=17ee2bd45b63154fcc148ae1d1f736d8" className="hidden dark:block" alt="Diagramm in zwei Spalten, verbunden durch fünf gerade Pfeile. Links das Verzeichnis eines Plugins namens my-plugin mit einem Manifest unter .claude-plugin/plugin.json, skills/review/SKILL.md, agents/reviewer.md, hooks/hooks.json, .mcp.json und anderen Komponenten. Rechts das, was jede Datei in Ihrer Sitzung gibt: Das Manifest setzt den Plugin-Namen, my-plugin; die Skill läuft als /my-plugin:review; die Agent-Datei ist ein Subagent, an den Claude delegieren kann; die Hooks-Datei enthält Hooks, die bei Lebenszyklusereignissen ausgeführt werden; und .mcp.json fügt einen MCP-Server hinzu, der Claude Tools gibt." width="760" height="336" data-path="images/plugin-directory-dark.svg" />

37 

38Für jeden Komponententyp, den ein Plugin enthalten kann, mit einem Beispiel für jeden, siehe [Plugin-Komponenten](/docs/de/plugins/components). Um zu sehen, wo sich jedes Teil im Verzeichnis eines Plugins befindet, verwenden Sie den [Plugin-Explorer](/docs/de/plugins/components#explore-the-plugin-directory) auf dieser Seite.

39 

40<h3 id="decide-whether-you-need-a-plugin">

41 Entscheiden Sie, ob Sie ein Plugin benötigen

42</h3>

43 

44Skills, Subagents, Hooks und MCP-Server funktionieren alle allein, ohne ein Plugin. Eine Skill, die Sie in `~/.claude/skills/` speichern, ist beispielsweise in jedem Projekt auf Ihrem Computer verfügbar. Um eine allein einzurichten, siehe [Skills](/docs/de/skills), [Subagents](/docs/de/sub-agents), [Hooks](/docs/de/hooks-guide) oder [MCP](/docs/de/mcp).

45 

46Verwenden Sie ein Plugin, wenn Sie mehrere Skills, Subagents, Hooks oder MCP-Server als eine Einheit verpackt möchten. Installieren Sie eines, um eine Einrichtung zu erhalten, die jemand anderes erstellt hat, mit einem Befehl und Updates aus seinem Marketplace. Erstellen Sie eines, um Ihre eigene Einrichtung an Teamkollegen zu geben, es in vielen Projekten zu installieren oder versionierte Releases zu veröffentlichen.

47 

48<h3 id="what-an-enabled-plugin-adds-to-your-sessions">

49 Was ein aktiviertes Plugin zu Ihren Sitzungen hinzufügt

50</h3>

51 

52Ein aktiviertes Plugin ist Teil jeder Sitzung, nicht nur der Sitzungen, in denen Sie es verwenden. Das hat ein paar Konsequenzen, die es wert sind, vor der Installation zu wissen:

53 

54* **Kontext und Nutzung**: Für jede Skill, jeden Agent und jeden Befehl, den [Claude von selbst aufrufen kann](/docs/de/skills#control-who-invokes-a-skill), sind der Name und die Beschreibung in Claudes Kontext bei jedem Turn, damit Claude weiß, dass es existiert. Diese Token zählen zu Ihrer Nutzung und lassen weniger Platz im [Kontextfenster](/docs/de/context-window), auch in Sitzungen, in denen nichts aus dem Plugin läuft. Der vollständige Text einer Skill oder eines Agents wird nur geladen, wenn er verwendet wird. Was die MCP-Server des Plugins pro Turn hinzufügen, folgt [MCP-Tool-Suche](/docs/de/mcp#scale-with-mcp-tool-search).

55* **Prozesse**: MCP-Server, die das Plugin definiert, laufen neben jeder Sitzung, in der es aktiviert ist, und seine Hooks werden bei ihren Ereignissen ausgelöst.

56* **Berechtigungen**: Was das Plugin ausführt, führt es als Sie aus. Siehe [Plugin-Sicherheit und Vertrauen](/docs/de/plugins/security) für das, was Sie zuerst überprüfen sollten.

57 

58Sie können den Fußabdruck eines Plugins in jeder Phase überprüfen:

59 

60* **Vor der Installation**: Öffnen Sie das Plugin aus der Registerkarte **Marketplaces** in `/plugin`. Plugins im offiziellen Marketplace von Anthropic zeigen dort eine **Context cost**-Schätzung.

61* **Nach der Installation**: [Messen Sie, was ein Plugin kostet](/docs/de/plugins/measure#measure-what-a-plugin-costs) zeigt, wie Sie den Fußabdruck eines Plugins lesen, und die Gruppe **Not used recently** der Registerkarte **Installed** listet Plugins auf, die Sie ausschalten könnten.

62* **Um es zu stoppen, ohne es zu deinstallieren**: Deaktivieren Sie das Plugin mit `/plugin` oder in Ihrer Shell mit `claude plugin disable`. Siehe [Installierte Plugins verwalten](/docs/de/plugins/install#manage-installed-plugins).

63 

64<h2 id="get-plugins-from-a-marketplace">

65 Holen Sie sich Plugins aus einem Marketplace

66</h2>

67 

68Ein Marketplace ist ein Repository oder Verzeichnis mit einer `.claude-plugin/marketplace.json`-Datei, die Plugins auflistet und anzeigt, wo man sie abruft. Es ist ein Katalog, kein gehosteter Store. Sie fügen einen Marketplace einmal hinzu und installieren dann Plugins daraus nach Name, wie `commit-commands@claude-plugins-official`.

69 

70<Note>

71 Ein Plugin-Marketplace ist nicht [Claude Marketplace](https://claude.com/marketplace). Claude Marketplace ist die Website unter claude.com/marketplace, auf der Sie Plugins, Konnektoren, Partnerprodukte und Service-Partner durchsuchen. Es ist kein Marketplace, den Sie mit `/plugin marketplace add` hinzufügen.

72</Note>

73 

74Claude Code fügt Anthropics offiziellen Marketplace das erste Mal hinzu, wenn Sie eine interaktive Terminalsitzung starten, es sei denn, eine [verwaltete Richtlinie](/docs/de/plugins/org#allow-the-official-marketplace-and-your-own) blockiert es. Claude Code fügt von selbst keinen anderen Marketplace hinzu, einschließlich Anthropics Community- und Demo-Marketplaces. Um die drei Anthropic-Marketplaces zu unterscheiden, lesen Sie [Anthropics Marketplaces](/docs/de/plugins/anthropic-marketplaces). Um zu sehen, was der offizielle auflistet, öffnen Sie die Registerkarte **Discover** von `/plugin` in einer Sitzung oder durchsuchen Sie [Claude Marketplace](https://claude.com/marketplace/plugins).

75 

76Dieses Diagramm zeigt den Weg von einem Marketplace zu Ihrer Sitzung. Ein Marketplace listet ein Plugin auf, Sie installieren dieses Plugin, und Claude Code lädt seine Komponenten.

77 

78<img src="https://mintcdn.com/claude-code/2Q_GtOEovg5qaBem/images/plugins-model.svg?fit=max&auto=format&n=2Q_GtOEovg5qaBem&q=85&s=4196344954b7c2e27fc0bd6a9a1113a1" className="dark:hidden" alt="Diagramm des Marketplace-Pfads in drei Kästchen, von links nach rechts. Ein Marketplace, ein Katalog von Plugins, listet ein Plugin auf. Das Plugin ist ein Verzeichnis, das als Einheit installiert ist und Skills, Agents, Hooks, MCP-Server und andere Komponenten enthält. Sie installieren das Plugin in Claude Code, das seine Komponenten lädt." width="760" height="252" data-path="images/plugins-model.svg" />

79 

80<img src="https://mintcdn.com/claude-code/2Q_GtOEovg5qaBem/images/plugins-model-dark.svg?fit=max&auto=format&n=2Q_GtOEovg5qaBem&q=85&s=f6cdefe1fc05daf3b253d26e9f3f70f6" className="hidden dark:block" alt="Diagramm des Marketplace-Pfads in drei Kästchen, von links nach rechts. Ein Marketplace, ein Katalog von Plugins, listet ein Plugin auf. Das Plugin ist ein Verzeichnis, das als Einheit installiert ist und Skills, Agents, Hooks, MCP-Server und andere Komponenten enthält. Sie installieren das Plugin in Claude Code, das seine Komponenten lädt." width="760" height="252" data-path="images/plugins-model-dark.svg" />

81 

82[Plugins installieren und verwalten](/docs/de/plugins/install#install-a-plugin) hat die Installationsschritte für jeden Ort, an dem Sie Claude Code ausführen. Während Sie ein Plugin entwickeln, benötigen Sie keinen Marketplace: Laden Sie es direkt aus seinem Ordner mit `--plugin-dir`, wie [Entwickeln ohne einen Marketplace](/docs/de/plugins/create#develop-without-a-marketplace) zeigt.

83 

84<h3 id="make-an-installed-plugin-available-in-your-session">

85 Machen Sie ein installiertes Plugin in Ihrer Sitzung verfügbar

86</h3>

87 

88Bevor ein Plugin, das Sie installiert haben, Ihnen eine Skill gibt, die Sie ausführen können, muss es in jeder dieser Schichten vorhanden sein:

89 

90* **Einstellungen**: Ihre Einstellungen listen die Marketplaces auf, die Sie hinzugefügt haben, und die Plugins, die aktiviert sind.

91* **Festplatte**: `~/.claude/plugins/` enthält das, was Claude Code abgerufen und installiert hat.

92* **Sitzung**: Plugins werden beim Start geladen oder wenn Sie [Plugins neu laden](/docs/de/plugins/loading#check-which-stage-a-plugin-reached).

93 

94Lesen Sie [Plugin-Lade-Referenz](/docs/de/plugins/loading) für die Regeln in jeder Schicht, einschließlich welche Einstellungsdatei Vorrang hat und wo sich die Dateien auf der Festplatte befinden.

95 

96<h2 id="tell-anthropic’s-marketplaces-from-third-party-ones">

97 Unterscheiden Sie Anthropics Marketplaces von Drittanbieter-Marketplaces

98</h2>

99 

100Der Name eines Marketplace ordnet ihn in eine von drei Ebenen ein. Claude Code akzeptiert die offiziellen und Community-Namen nur für Marketplaces aus `github.com/anthropics/`-Repositories:

101 

102* **Offiziell**: Marketplaces mit einem von Anthropics [offiziellen Marketplace-Namen](/docs/de/plugins/security#official-marketplace-names), einschließlich `claude-plugins-official` und dem Demo-Marketplace `claude-code-plugins`.

103* **Community**: Marketplaces mit einem von Anthropics Community-Namen, wie `claude-community`. [Identifizieren Sie Anthropics Marketplaces nach Name](/docs/de/plugins/security#marketplace-tiers) listet sie auf.

104* **Drittanbieter**: Jeder andere Marketplace. Ein Marketplace, den Ihr Mitarbeiter oder Ihre Organisation veröffentlicht, ist Drittanbieter.

105 

106Unabhängig von der Ebene kann ein Plugin, das Sie installieren, Code mit Ihren Benutzerrechten ausführen. Lesen Sie [Plugin-Sicherheit und Vertrauen](/docs/de/plugins/security) für die Überprüfung eines Plugins vor der Installation.

107 

108Durch [verwaltete Einstellungen](/docs/de/settings#settings-files) kann eine Organisation Marketplaces auf eine Whitelist setzen oder blockieren, Plugins erzwingen und Session-only-Laden ausschalten. Lesen Sie [Verwalten Sie Plugins für Ihre Organisation](/docs/de/plugins/org) für diese Kontrollen.

109 

110<h2 id="understand-install-scopes">

111 Verstehen Sie Installationsbereiche

112</h2>

113 

114Wenn Sie ein Plugin installieren, wählen Sie einen Bereich, und der Bereich entscheidet, für wen das Plugin aktiviert ist:

115 

116* **Benutzerbereich**: aktiviert für Sie in jedem Projekt auf diesem Computer

117* **Projektbereich**: aktiviert für alle, die in diesem Repository arbeiten, durch die committete `.claude/settings.json`. Jeder Mitarbeiter muss es immer noch [auf seiner eigenen Maschine installieren](/docs/de/plugins/loading#enabled-in-project-settings-but-not-installed)

118* **Lokaler Bereich**: aktiviert für Sie nur in diesem Repository

119 

120Ein Plugin, das Sie im Terminal, in den lokalen Sitzungen der Desktop-App oder in der VS Code-Erweiterung im Benutzerbereich installieren, ist in den anderen beiden auf diesem Computer verfügbar, da alle drei die gleichen Einstellungsdateien lesen. Siehe [Wählen Sie einen Installationsbereich](/docs/de/plugins/install#choose-an-install-scope) für die Auswahl eines.

121 

122Eine Cloud-Sitzung, einschließlich einer im Browser unter claude.ai/code, lädt nicht die Plugins in Ihren lokalen Einstellungen. Für Installationsschritte im Terminal, VS Code und der Desktop-App sowie für das, was eine Cloud-Sitzung lädt, siehe [Ein Plugin installieren](/docs/de/plugins/install#install-a-plugin).

123 

124<Note>

125 Das gleiche Plugin-Format wird auch auf claude.ai und in Cowork installiert, wo ein anderer Satz von Komponenten geladen wird. Für diese Oberflächen siehe [Plugins auf claude.ai und in Cowork](https://claude.com/docs/plugins/overview) auf claude.com.

126</Note>

127 

128<h2 id="next-steps">

129 Nächste Schritte

130</h2>

131 

132Die meisten Menschen beginnen damit, ein Plugin aus Anthropics offiziellem Marketplace zu installieren, das Claude Code das erste Mal hinzufügt, wenn Sie eine interaktive Terminalsitzung starten. Führen Sie `/plugin` in einer Terminalsitzung aus, um ihn zu durchsuchen, oder folgen Sie [Plugins installieren und verwalten](/docs/de/plugins/install), das auch die Desktop-App und VS Code abdeckt. Um zu sehen, was sich in diesem Marketplace befindet, bevor Sie Claude Code öffnen, durchsuchen Sie [Claude Marketplace](https://claude.com/marketplace/plugins) im Web.

133 

134Um Ihr eigenes zu erstellen, [Erstellen Sie ein Plugin](/docs/de/plugins/create) beginnt mit einem leeren Verzeichnis und endet mit einem funktionierenden Plugin.

135 

136Sobald Sie ein Plugin installiert oder erstellt haben, behandeln diese Seiten das, was als Nächstes kommt:

137 

138* **Teilen Sie das, was Sie erstellt haben**: [Veröffentlichen und verteilen Sie ein Plugin](/docs/de/plugins/publish)

139* **Überprüfen Sie, ob es funktioniert und verwendet wird**: [Testen Sie Plugins mit Evals](/docs/de/plugin-evals) und [Messen Sie Plugin-Kosten und -Nutzung](/docs/de/plugins/measure)

140* **Führen Sie einen Marketplace für Ihr Team aus**: [Erstellen Sie einen Marketplace](/docs/de/plugins/create-marketplace), dann [Hosten und verwalten Sie einen Marketplace](/docs/de/plugins/host-marketplace)

141* **Legen Sie Plugin-Richtlinie für eine Organisation fest**: [Verwalten Sie Plugins für Ihre Organisation](/docs/de/plugins/org)

142* **Beheben Sie ein Problem**: [Beheben Sie Probleme mit Plugins](/docs/de/plugins/troubleshooting)

plugins/publish.md +210 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Ein Plugin veröffentlichen und verteilen

6 

7> Veröffentlichen Sie ein Claude Code Plugin über Ihren eigenen Marketplace oder Anthropics Community Marketplace, mit einer Pre-Release-Checkliste und wie Benutzer Updates erhalten.

8 

9Ein Claude Code Plugin zu veröffentlichen bedeutet, es in einem Marketplace aufzulisten – einem JSON-Katalog, der Plugins auflistet und angibt, wo jedes abgerufen werden kann – damit andere Personen es nach Name installieren können und Ihre Updates erhalten. Sie können Ihren eigenen Marketplace betreiben oder Ihr Plugin bei Anthropics Community Marketplace einreichen. Um ein Plugin ohne Veröffentlichung zu teilen, senden Sie Personen das Plugin-Verzeichnis oder eine `.zip` davon zum selbst Laden.

10 

11Diese Seite ist für den Autor eines funktionierenden Plugins, der bereit ist, es zu teilen.

12 

13<Note>

14 Diese Fälle werden auf anderen Seiten behandelt:

15 

16 * **Ihr Plugin ist noch nicht fertig**: Beginnen Sie mit [Ein Plugin erstellen](/docs/de/plugins/create)

17 * **Sie verwalten eine CLI oder SDK mit einem Plugin in einem offiziellen Marketplace**: siehe [Empfehlen Sie Ihr Plugin von Ihrer CLI](/docs/de/plugins/cli-hints)

18</Note>

19 

20Beginnen Sie mit [Wählen Sie, wie Sie verteilen](#choose-how-to-distribute), um die Verteilungsoptionen zu vergleichen. Wenn Sie Ihre Route bereits kennen, gehen Sie zu [Bereiten Sie Ihr Plugin für die Veröffentlichung vor](#prepare-your-plugin-for-release), und folgen Sie dann dem Abschnitt Ihrer Route für das, was Sie Ihren Benutzern mitteilen und wie sie Ihre Updates erhalten.

21 

22<h2 id="choose-how-to-distribute">

23 Wählen Sie, wie Sie verteilen

24</h2>

25 

26Wählen Sie eine Verteilungsoption basierend darauf, wer das Plugin installieren muss:

27 

28| Route | Wer kann installieren | Was Sie benötigen | Erhalten Benutzer Ihre Updates automatisch? |

29| :----------------------------------------------------------------------- | :-------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------- | :------------------------------------------------ |

30| [Kein Marketplace](#share-a-plugin-without-a-marketplace) | Die Personen, denen Sie den Plugin-Ordner oder eine `.zip` davon senden | Der Plugin-Ordner | Nein. Sie laden die Kopie, die Sie gesendet haben |

31| [Ihr eigener Marketplace](#publish-through-your-own-marketplace) | Jeder, der das Repository erreichen kann, das privat sein kann und Ihr Team klonen kann | Ein Git-Repository oder ein anderer Host mit einer `.claude-plugin/marketplace.json`, die Ihr Plugin auflistet | Aus |

32| [Anthropics Community Marketplace](#submit-to-the-community-marketplace) | Jeder, der `anthropics/claude-plugins-community` hinzufügt | Eine Einreichung über das Plugin-Verzeichnis-Einreichungsformular | Aus |

33 

34Auto-Update ist eine Einstellung pro Marketplace auf der Benutzerseite, die neue Versionen im Hintergrund abruft.

35 

36<h2 id="prepare-your-plugin-for-release">

37 Bereiten Sie Ihr Plugin für die Veröffentlichung vor

38</h2>

39 

40Der Name, die Version, die Validierung und eine Installation von einem Marketplace entscheiden, ob eine Veröffentlichung für die Personen funktioniert, die sie installieren. Überprüfen Sie diese vor der ersten Veröffentlichung und erneut vor jeder späteren.

41 

42<Steps>

43 <Step title="Wählen Sie einen permanenten Namen">

44 Benutzer installieren, aktivieren und konfigurieren Ihr Plugin nach `name@marketplace`, daher ist ein umbenanntes Plugin für jede vorhandene Installation ein anderes Plugin. Wählen Sie einen Kebab-Case-Namen wie `deploy-helper`, da `claude plugin validate` vor anderen Formen warnt, und behandeln Sie ihn als permanent. Setzen Sie `displayName` in `plugin.json` für das Label, das Benutzer sehen.

45 </Step>

46 

47 <Step title="Entscheiden Sie, wie Sie versionieren">

48 Wenn Sie `version` in `plugin.json` setzen und später Commits pushen, ohne es zu ändern, druckt `claude plugin update` `<name> is already at the latest version (1.0.0).` und Benutzer behalten die alte Kopie. Erhöhen Sie entweder `version` bei jeder Veröffentlichung, oder lassen Sie sie in einem Git-gehosteten Marketplace weg, damit Claude Code stattdessen den Commit SHA verwendet. Siehe [Versionen und Updates](/docs/de/plugins/loading#versions-and-updates).

49 </Step>

50 

51 <Step title="Validieren">

52 Führen Sie in Ihrer Shell `claude plugin validate --strict ./your-plugin` aus. Ein sauberer Durchlauf druckt `✔ Validation passed`.

53 

54 * **In CI**: Behalten Sie `--strict` bei, das auch den Durchlauf mit Exit-Code 1 bei Warnungen wie einem unbekannten Manifest-Feld oder einer fehlenden `version` fehlschlagen lässt. Lassen Sie `--strict` weg, wenn Sie sich im vorherigen Schritt entschieden haben, `version` wegzulassen.

55 * **Pfade**: Die Validierung meldet Komponentenpfade, die nicht mit `./` beginnen. Beziehen Sie sich in Hook-Befehlen und MCP-Server-Konfigurationen auf Dateien als `${CLAUDE_PLUGIN_ROOT}/...`. Siehe [Pfadregeln](/docs/de/plugins/manifest-reference#path-rules).

56 </Step>

57 

58 <Step title="Installieren Sie es von einem lokalen Marketplace">

59 Fügen Sie in Ihrer Shell einen lokalen Marketplace hinzu, der das Plugin mit `claude plugin marketplace add ./path-to-marketplace` auflistet, installieren Sie das Plugin davon, und starten Sie eine Sitzung, um zu bestätigen, dass es geladen wird.

60 

61 * Für den kleinsten funktionierenden Marketplace siehe [Erstellen Sie einen Marketplace](/docs/de/plugins/create-marketplace).

62 * Um zu wissen, ob eine Installation Ihr Quellverzeichnis oder eine zwischengespeicherte Kopie lädt, siehe [In-Place- und kopierte Plugins](/docs/de/plugins/loading#in-place-and-copied-plugins).

63 </Step>

64 

65 <Step title="Füllen Sie die Metadaten aus, die Benutzer sehen">

66 Setzen Sie `description`, `author`, `homepage` und `repository` in `plugin.json`, und fügen Sie eine `README.md` im Plugin-Root hinzu. `homepage` muss als URL analysierbar sein. Die [Manifest-Referenz](/docs/de/plugins/manifest-reference#fields) listet jedes Feld auf.

67 </Step>

68 

69 <Step title="Führen Sie Ihre Eval-Suite aus">

70 Wenn Sie eine Eval-Suite haben, führen Sie `claude plugin eval` in Ihrer Shell aus. Sie führt die Testfälle des Plugins aus und bewertet die Ergebnisse, was Regressionen erfasst, wenn Sie das Plugin ändern. Siehe [Testen Sie Plugins mit Evals](/docs/de/plugin-evals).

71 </Step>

72</Steps>

73 

74<h2 id="share-a-plugin-without-a-marketplace">

75 Teilen Sie ein Plugin ohne einen Marketplace

76</h2>

77 

78Wenn sich das Plugin in einem Git-Repository befindet, können Personen es klonen und den Checkout laden, oder Claude Code von ihrer Shell mit `--plugin-url` starten, das auf eine `.zip` zeigt, die Sie an eine Veröffentlichung anhängen. Um Ihre nächste Version zu erhalten, pullen oder laden sie erneut herunter. Wenn es sich nicht in einem Repository befindet, senden Sie ihnen das Verzeichnis oder eine `.zip` davon. Sie laden es auf eine von zwei Arten:

79 

80* **Für eine Sitzung**: Sie starten Claude Code von ihrer Shell mit `claude --plugin-dir ./deploy-helper`, wobei der Pfad der Klon, der entpackte Ordner oder die `.zip` selbst ist. Siehe [Flags, die ein Plugin für eine Sitzung laden](/docs/de/plugins/cli-reference#flags-that-load-a-plugin-for-one-session).

81* **Für jede Sitzung**: Sie verschieben das Plugin-Verzeichnis mit seiner `.claude-plugin/plugin.json` unter `~/.claude/skills/`, damit Claude Code es [in jeder Sitzung lädt](/docs/de/plugins/loading#find-where-a-plugin-came-from).

82 

83Das Hinzufügen einer `.claude-plugin/marketplace.json` zu demselben Repository ist das, was Personen ermöglicht, nach Name zu installieren und mit einem Befehl zu aktualisieren; siehe [Veröffentlichen Sie über Ihren eigenen Marketplace](#publish-through-your-own-marketplace).

84 

85<h3 id="ship-a-plugin-with-your-own-tool">

86 Versenden Sie ein Plugin mit Ihrem eigenen Tool

87</h3>

88 

89Wenn Sie eine CLI oder SDK verwalten, veröffentlichen Sie das Plugin in einem Marketplace und lassen Sie Ihren Installer oder die Post-Install-Nachricht die zwei Befehle ausführen oder drucken, die ein Benutzer benötigt: `claude plugin marketplace add <source>`, dann `claude plugin install <name>@<marketplace>`. Für die In-Session-Erkennung, wenn jemand Ihr Tool verwendet, siehe [Empfehlen Sie Ihr Plugin von Ihrer CLI](/docs/de/plugins/cli-hints).

90 

91<h2 id="publish-through-your-own-marketplace">

92 Veröffentlichen Sie über Ihren eigenen Marketplace

93</h2>

94 

95Ihr eigener Marketplace ist eine `.claude-plugin/marketplace.json`-Datei, die Ihr Plugin auflistet und zu einem Git-Repository hinzugefügt wird. Sobald sich die Datei im Repository befindet, wird das Plugin veröffentlicht, ohne Einreichungsformular. Sie können die Datei im eigenen Repository des Plugins oder in einem separaten aufbewahren.

96 

97<h3 id="add-the-marketplace-file-to-your-repository">

98 Fügen Sie die Marketplace-Datei zu Ihrem Repository hinzu

99</h3>

100 

101Um vom eigenen Repository des Plugins aus zu veröffentlichen, speichern Sie die Marketplace-Datei neben `plugin.json` in `.claude-plugin/`, mit einem Eintrag, dessen `source` `"./"` ist, das Repository-Root. Geben Sie dem Eintrag denselben `name` wie `plugin.json`, gemäß [Halten Sie den Eintragnamen und den Manifest-Namen gleich](/docs/de/plugins/create-marketplace#keep-the-entry-name-and-the-manifest-name-the-same):

102 

103```json .claude-plugin/marketplace.json theme={null}

104{

105 "name": "your-marketplace",

106 "owner": { "name": "Your Name" },

107 "plugins": [

108 { "name": "deploy-helper", "source": "./" }

109 ]

110}

111```

112 

113Führen Sie in Ihrer Shell `claude plugin validate .` im Repository aus, um die Datei vor dem Push zu überprüfen.

114 

115[Erstellen Sie einen Marketplace](/docs/de/plugins/create-marketplace) behandelt das Layout mit mehreren Plugins in einem Repository.

116 

117<h3 id="control-who-can-install">

118 Kontrollieren Sie, wer installieren kann

119</h3>

120 

121Jeder, der das Repository klonen kann, kann davon installieren, daher ist der Marketplace auch privat, wenn das Repository privat ist. Für Hosts außer einem Git-Repository siehe [Hosten Sie einen Marketplace](/docs/de/plugins/host-marketplace). Um alle in einem Unternehmen zu erreichen, einschließlich Personen, die kein Git verwenden, siehe [Rollout für ein ganzes Unternehmen](/docs/de/plugins/host-marketplace#roll-out-to-a-whole-company).

122 

123<h3 id="tell-users-how-to-install">

124 Teilen Sie Benutzern mit, wie sie installieren

125</h3>

126 

127Teilen Sie Ihren Benutzern mit, den Marketplace hinzuzufügen und dann das Plugin von ihrer Shell zu installieren, wobei Sie die Quelle und Namen durch Ihre ersetzen:

128 

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

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

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

132 

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

134 Versenden Sie Updates an Benutzer

135</h3>

136 

137Benutzer erhalten eine Veröffentlichung, wenn sie danach fragen oder wenn Auto-Update für Ihren Marketplace aktiviert ist:

138 

139* **Auf Anfrage**: `claude plugin update deploy-helper@your-marketplace` in der Shell des Benutzers aktualisiert den Marketplace und installiert die neue Kopie, wenn sich die Version Ihres Plugins geändert hat

140* **Auto-Update**: standardmäßig für Ihren Marketplace deaktiviert. Siehe [Aktivieren Sie Auto-Update](/docs/de/plugins/host-marketplace#turn-on-auto-update). Sobald aktiviert, tut es dasselbe wie `claude plugin update` mit einer Verzögerung nach dem Sitzungsstart

141 

142[Installieren Sie Plugins](/docs/de/plugins/install) behandelt die Befehle auf der Benutzerseite, und [wenn Auto-Update ausgeführt wird](/docs/de/plugins/loading#when-auto-update-runs) behandelt das Timing.

143 

144<h2 id="submit-to-the-community-marketplace">

145 Reichen Sie beim Community Marketplace ein

146</h2>

147 

148Anthropics Community Marketplace, `claude-community`, ist der öffentliche Marketplace, der Plugins auflistet, die über das Plugin-Verzeichnis-Einreichungsformular eingereicht wurden.

149 

150Benutzer fügen den Community Marketplace in einer Claude Code-Sitzung mit `/plugin marketplace add anthropics/claude-plugins-community` hinzu und installieren davon als `@claude-community`.

151 

152Für die Unterschiede zwischen dem Community Marketplace und dem offiziellen Marketplace siehe [Anthropics Marketplaces](/docs/de/plugins/anthropic-marketplaces).

153 

154Um Ihr Plugin beim Community Marketplace einzureichen, verwenden Sie eines der In-App-Formulare:

155 

156* **claude.ai**: [claude.ai/admin-settings/directory/submissions/plugins/new](https://claude.ai/admin-settings/directory/submissions/plugins/new)

157* **Console**: [platform.claude.com/plugins/submit](https://platform.claude.com/plugins/submit)

158 

159Das claude.ai-Formular erfordert eine Team- oder Enterprise-Organisation und die Directory-Berechtigung, die Eigentümer standardmäßig haben. Einzelne Autoren, die nicht Teil einer Team- oder Enterprise-Organisation sind, können stattdessen das Console-Formular verwenden.

160 

161Führen Sie in Ihrer Shell `claude plugin validate ./your-plugin` lokal aus, bevor Sie einreichen, wobei Sie `./your-plugin` durch den Pfad zu Ihrem Plugin-Verzeichnis ersetzen. Wenn die Validierung erfolgreich ist, druckt Claude Code `✔ Validation passed`, oder `✔ Validation passed with warnings`, wenn es Warnungen gibt. Warnungen führen nicht zu Validierungsfehlern; fügen Sie `--strict` hinzu, um sie als Fehler zu behandeln.

162 

163Aufgelistete Plugins erscheinen im [`anthropics/claude-plugins-community`](https://github.com/anthropics/claude-plugins-community)-Katalog, in fast jedem Fall an einen bestimmten Commit SHA angeheftet.

164 

165Es kann eine Verzögerung zwischen der Einreichung und dem Erscheinen Ihres Plugins in `marketplace.json` geben. Um zu überprüfen, ob Ihr Plugin bereits installierbar ist, suchen Sie nach seinem Namen im [Community-Katalog](https://github.com/anthropics/claude-plugins-community/blob/main/.claude-plugin/marketplace.json).

166 

167Der offizielle Marketplace, `claude-plugins-official`, akzeptiert keine Einreichungen über diese Formulare. Wenn Sie mit einem Anthropic-Partner-Kontakt zusammenarbeiten, fragen Sie ihn nach einer Auflistung im offiziellen Marketplace.

168 

169<h2 id="ship-updates-renames-and-removals">

170 Versenden Sie Updates, Umbenennungen und Entfernungen

171</h2>

172 

173<h3 id="release-a-new-version">

174 Veröffentlichen Sie eine neue Version

175</h3>

176 

177Wenn Sie über Ihren eigenen Marketplace veröffentlichen und Ihre `plugin.json` `version` setzt, erhöhen Sie sie und pushen Sie. Benutzer, die `claude plugin update` ausführen oder Auto-Update aktiviert haben, erhalten dann die neue Version, wie unter [Versenden Sie Updates an Benutzer](#ship-updates-to-users) beschrieben.

178 

179<h3 id="tag-a-release">

180 Markieren Sie eine Veröffentlichung

181</h3>

182 

183Markieren Sie die Veröffentlichung in Git, wenn andere Plugins einen Versionsbereich auf Ihrem deklarieren, da diese Bereiche gegen Tags aufgelöst werden. Andernfalls benötigen Sie keinen Tag.

184 

185Um zu markieren, führen Sie `claude plugin tag` in Ihrer Shell aus dem Plugin-Verzeichnis aus. Es erstellt einen `{name}--v{version}`-Tag. Fügen Sie `--push` hinzu, um den Tag an `origin` zu senden. Die [`plugin tag`-Referenz](/docs/de/plugins/cli-reference#plugin-tag) listet ihre Flags auf.

186 

187<h3 id="rename-or-remove-a-plugin">

188 Benennen Sie ein Plugin um oder entfernen Sie es

189</h3>

190 

191Ändern Sie niemals den `name` eines veröffentlichten Plugins. Nach einer Umbenennung verlieren Benutzer, die es bereits installiert haben, das Plugin, da ihre Installation unter dem alten Namen aufgezeichnet ist. Ein `renames`-Eintrag in Ihrer Marketplace-Datei migriert sie stattdessen. Ändern Sie `displayName`, wenn Sie ein anderes Label möchten.

192 

193Wenn eine Umbenennung unvermeidlich ist, verwenden Sie die `renames`-Zuordnung der Marketplace-Datei, damit vorhandene Installationen migrieren, anstatt mit [`Plugin "<name>" not found in marketplace`](/docs/de/plugins/troubleshooting#plugin-not-found-in-marketplace) fehlzuschlagen. Um ein Plugin aus dem Marketplace zu entfernen, oder für die vollständigen `renames`-Details, siehe [Benennen Sie ein Plugin um oder entfernen Sie es](/docs/de/plugins/host-marketplace#rename-or-remove-a-plugin) auf der Hosting-Seite. Die [Marketplace-Referenz](/docs/de/plugins/marketplace-reference#top-level-fields) hat das Feld.

194 

195<h2 id="declare-dependencies">

196 Deklarieren Sie Abhängigkeiten

197</h2>

198 

199Wenn Ihr Plugin ein anderes Plugin aus demselben Marketplace benötigt, das aktiviert sein soll, listen Sie es im `dependencies`-Array von `plugin.json` auf. Jeder Eintrag ist ein einfacher Name oder ein Objekt mit einem Semver-`version`-Bereich. Wenn ein Benutzer Ihr Plugin installiert, installiert und aktiviert Claude Code auch die Abhängigkeit.

200 

201[Plugin-Abhängigkeiten](/docs/de/plugins/dependencies) behandelt die Bereichssyntax, Marketplace-übergreifende Abhängigkeiten und wie Benutzer Abhängigkeiten, die sie nicht mehr benötigen, bereinigen.

202 

203<h2 id="next-steps">

204 Nächste Schritte

205</h2>

206 

207* [Hosten und verwalten Sie einen Marketplace](/docs/de/plugins/host-marketplace): Veröffentlichen Sie neue Versionen und halten Sie Benutzer auf dem Laufenden

208* [Plugin-Abhängigkeiten](/docs/de/plugins/dependencies): Deklarieren und versionieren Sie die Plugins, auf die Ihr Plugin angewiesen ist

209* [Empfehlen Sie Ihr Plugin von Ihrer CLI](/docs/de/plugins/cli-hints): Fordern Sie Claude Code-Benutzer Ihrer CLI auf, das Plugin zu installieren

210* [Messen Sie Plugin-Kosten und -Nutzung](/docs/de/plugins/measure): Sehen Sie, was Ihr Plugin im Kontext kostet und ob Personen es verwenden

plugins/relevance.md +247 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Plugins für Ihre Organisation empfehlen

6 

7> Fügen Sie einen Relevanzblock zu Marketplace-Plugin-Einträgen hinzu, damit Claude Code diese vorschlägt, wenn die Arbeit eines Benutzers übereinstimmt, und erlauben Sie den Marketplace in verwalteten Einstellungen.

8 

9Claude Code kann die Installation eines Plugins aus dem Marketplace Ihrer Organisation vorschlagen, wenn eine Benutzersitzung Signale erfüllt, die Sie für dieses Plugin definieren. Signale umfassen das Arbeitsverzeichnis, Dateien, die Claude gelesen hat, und Befehle, die Claude ausgeführt hat. Sie definieren diese, indem Sie einen `relevance`-Block zum Plugin-Eintrag in `marketplace.json` hinzufügen.

10 

11Ein Marketplace-Betreiber schreibt die `relevance`-Einträge. Ein Administrator erlaubt dann den Marketplace in verwalteten Einstellungen. Benutzer sehen keine Vorschläge aus einem Marketplace, bis dieser erlaubt ist.

12 

13<Note>

14 Diese Fälle werden auf anderen Seiten behandelt:

15 

16 * **Sie möchten Plugins installieren**: siehe [Plugins installieren und verwalten](/docs/de/plugins/install)

17 * **Sie möchten Vorschläge deaktivieren**: siehe [Verstehen Sie, wie Plugin-Relevanz funktioniert](#understand-how-plugin-relevance-works)

18</Note>

19 

20Beginnen Sie mit den Abschnitten für Ihre Rolle:

21 

22* **Marketplace-Betreiber**: lesen Sie [wie Vorschläge funktionieren](#understand-how-plugin-relevance-works), dann [fügen Sie Relevanz zu einem Plugin-Eintrag hinzu](#add-relevance-to-a-plugin-entry) und [validieren Sie Ihren Marketplace](#validate-your-marketplace)

23* **Administratoren**: [aktivieren Sie Vorschläge in verwalteten Einstellungen](#enable-suggestions-in-managed-settings)

24 

25<h2 id="understand-how-plugin-relevance-works">

26 Verstehen Sie, wie Plugin-Relevanz funktioniert

27</h2>

28 

29Jeder Plugin-Eintrag in `marketplace.json` kann ein `relevance`-Objekt enthalten. Das Objekt benennt ein Thema und ein oder mehrere Signale. Ein Signal ist ein Muster, das Claude Code gegen die aktuelle Sitzung testet, z. B. das Arbeitsverzeichnis oder Dateien, die Claude gelesen hat.

30 

31Die Signalabstimmung erfolgt lokal auf dem Computer des Benutzers und erzeugt keinen Netzwerkverkehr. Claude Code meldet nicht, welche Signale abgestimmt wurden oder deren Werte an Anthropic oder den Marketplace-Betreiber.

32 

33Wenn ein Signal abgestimmt wird und das Plugin nicht bereits installiert ist, schlägt Claude Code das Plugin an diesen Stellen vor:

34 

35* **Spinner-Tipp**: Eine Nachricht mit dem Befehl `/plugin install` wird unter dem Spinner angezeigt, während Claude antwortet.

36* **Benachrichtigung beim Sitzungsstart**: Wenn ein `cwd`-Signal mit dem Arbeitsverzeichnis abgestimmt wird, wird eine einzeilige Benachrichtigung angezeigt, bevor der Benutzer eine erste Nachricht sendet.

37* **`/plugin` Discover-Registerkarte**: Das Plugin wird oben in der Discover-Liste angeheftet.

38 

39[Vorschau, was der Benutzer sieht](#preview-what-the-user-sees) zeigt den genauen Text jedes und wie oft sie sich wiederholen.

40 

41Claude Code installiert das Plugin niemals automatisch. Der Benutzer bestätigt immer.

42 

43Der Spinner-Tipp und die Benachrichtigung beim Sitzungsstart werden beide nicht mehr angezeigt, wenn der Benutzer oder das Projekt [`spinnerTipsEnabled`](/docs/de/settings-reference#spinnertipsenabled) auf `false` setzt, oder wenn ein [`spinnerTipsOverride`](/docs/de/settings-reference#spinnertipsoverride) mit `excludeDefault` die integrierten Tipps ersetzt. Die Discover-Registerkarten-Anheftung wird durch keine der beiden Einstellungen beeinflusst.

44 

45<h2 id="add-relevance-to-a-plugin-entry">

46 Fügen Sie Relevanz zu einem Plugin-Eintrag hinzu

47</h2>

48 

49Fügen Sie ein `relevance`-Objekt zum Plugin-Eintrag in Ihrer `marketplace.json` hinzu. Das folgende Beispiel erklärt, dass das Plugin `terraform-helpers` relevant ist, wenn Claude eine `.tf`-Datei liest oder `terraform` ausführt:

50 

51```json theme={null}

52{

53 "name": "your-marketplace",

54 "owner": { "name": "Your Org" },

55 "plugins": [

56 {

57 "name": "terraform-helpers",

58 "source": "./plugins/terraform-helpers",

59 "description": "Your organization's Terraform conventions and helpers",

60 "relevance": {

61 "topic": "Terraform",

62 "signals": {

63 "cli": ["terraform"],

64 "filesRead": ["**/*.tf"]

65 }

66 }

67 }

68 ]

69}

70```

71 

72Solange keines seiner Signale abgestimmt wird, behält das Plugin seine normale Position in der Discover-Liste und wird nicht als Spinner-Tipp angezeigt.

73 

74Um den Block vor der Veröffentlichung zu überprüfen, [validieren Sie Ihren Marketplace](#validate-your-marketplace).

75 

76<h2 id="field-reference">

77 Feldverweis

78</h2>

79 

80Das `relevance`-Objekt und sein verschachteltes `signals`-Objekt akzeptieren die Felder in den folgenden Tabellen.

81 

82Ältere Clients laden weiterhin einen Marketplace, der `relevance`-Felder verwendet, die sie nicht erkennen, da unbekannte Felder unter `relevance` und `relevance.signals` beim Laden ignoriert werden. Ein erkanntes Feld, dessen Wert sein Limit im [Feldverweis](#field-reference) überschreitet, macht den gesamten Plugin-Eintrag ungültig, und Benutzer können dieses Plugin nicht aus dem Marketplace installieren, bis Sie es beheben; `claude plugin validate` meldet die gleichen Limits.

83 

84<h3 id="relevance">

85 `relevance`

86</h3>

87 

88| Feld | Typ | Beschreibung |

89| :-------- | :----- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

90| `topic` | string | Optional. Der Ausdruck, der „Arbeiten mit *topic*?" im Spinner-Tipp ausfüllt. Standardmäßig der Plugin-Name mit jedem Bindestrich-Segment kapitalisiert. Maximal 64 Zeichen. |

91| `signals` | object | Matcher, die bestimmen, wann das Plugin relevant ist. Claude Code schlägt das Plugin nur vor, wenn mindestens ein Signal gesetzt ist. Siehe [`relevance.signals`](#relevance-signals). |

92 

93Das `topic` ist oft der Produktname, z. B. `Terraform`. Verwenden Sie eine Domäne wie `design`, wenn der Plugin-Name nicht natürlich als Thema klingt.

94 

95<h3 id="relevance-signals">

96 `relevance.signals`

97</h3>

98 

99Das `signals`-Objekt akzeptiert die folgenden Felder.

100 

101| Feld | Typ | Beschreibung | Limit |

102| :------------- | :--------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------- |

103| `cwd` | array of strings | Glob-Muster, die gegen das Arbeitsverzeichnis der Sitzung abgestimmt werden. Siehe [Arbeitsverzeichnis-Abgleich](#working-directory-matching). | 10 Muster à 256 Zeichen |

104| `cli` | array of strings | Befehlsnamen aus Shell-Befehlen, die Claude in dieser Sitzung ausgeführt hat, z. B. `["terraform"]`. Exakte Übereinstimmung. Siehe [Befehlsnamen-Abgleich](#command-name-matching). | 10 Einträge à 64 Zeichen |

105| `hosts` | array of strings | Hostnamen in `http://`- oder `https://`-URLs in Bash-Befehlen in dieser Sitzung, z. B. `["registry.terraform.io"]`. Nur reiner Hostname in Kleinbuchstaben: kein Schema, Port oder Pfad. Exakte Abgleichung ohne Berücksichtigung der Groß-/Kleinschreibung. | 20 Einträge à 128 Zeichen |

106| `filesRead` | array of strings | Glob-Muster, die gegen die Pfade von Dateien abgestimmt werden, die Claude in dieser Sitzung gelesen hat, z. B. `["**/*.tf"]`. Vorwärtsschrägstrich normalisiert und Groß-/Kleinschreibung ignoriert. | 10 Muster à 256 Zeichen |

107| `manifestDeps` | array of objects | Abhängigkeiten, die in Paketmanifesten deklariert sind, die Claude in dieser Sitzung gelesen hat. Jeder Eintrag ist `{ "file": "...", "pattern": "..." }`, wobei beide Werte reguläre Ausdrücke sind. Siehe [Manifest-Abhängigkeits-Abgleich](#manifest-dependency-matching). | 10 Einträge, jeder Wert maximal 256 Zeichen. Manifestdateien größer als 512 KB werden übersprungen |

108 

109Die Signale `filesRead` und `manifestDeps` stimmen auch gegen Dateien ab, die Claude in dieser Sitzung geschrieben oder bearbeitet hat, und gegen die automatisch geladenen `CLAUDE.md`-Speicherdateien des Projekts.

110 

111<h4 id="working-directory-matching">

112 Arbeitsverzeichnis-Abgleich

113</h4>

114 

115`cwd` ist das einzige Signal, das beim Sitzungsstart abgestimmt werden kann, bevor der Benutzer eine erste Nachricht sendet.

116 

117Claude Code stimmt jedes `cwd`-Muster wie folgt ab:

118 

119* Das Muster wird gegen das Arbeitsverzeichnis als absoluter Pfad abgestimmt. Wenn sich die Sitzung in einem Git-Repository befindet, wird es auch gegen den Pfad des Arbeitsverzeichnisses relativ zum Repository-Root abgestimmt.

120* Der Abgleich ist vorwärtsschrägstrich normalisiert und Groß-/Kleinschreibung ignoriert.

121* Jedes Muster stimmt mit dem Verzeichnis selbst und allem darunter ab, daher verhalten sich `infra`, `infra/` und `infra/**` identisch.

122 

123<h4 id="command-name-matching">

124 Befehlsnamen-Abgleich

125</h4>

126 

127Claude Code zeichnet einen Befehlsnamen für jeden Shell-Befehl auf, den Claude ausführt: das erste Token nach allen führenden Umgebungsvariablenzuweisungen und `sudo`. Zusammengesetzte Befehle tragen nur ihren führenden Befehl bei, daher zeichnet `cd infra && terraform plan` `cd` auf, nicht `terraform`.

128 

129<h4 id="manifest-dependency-matching">

130 Manifest-Abhängigkeits-Abgleich

131</h4>

132 

133Jeder `manifestDeps`-Eintrag paart zwei JavaScript-`RegExp`-Quellzeichenfolgen:

134 

135* `file`: Abgleich ohne Berücksichtigung der Groß-/Kleinschreibung gegen den Pfad der Manifestdatei. Der Pfad ist normalerweise absolut, daher verankern Sie das Muster am Ende statt am Anfang. Pfade werden für dieses Signal nicht separator-normalisiert, daher verwenden Windows-Pfade Backslashes.

136* `pattern`: Abgleich mit Berücksichtigung der Groß-/Kleinschreibung gegen den Inhalt dieser Datei.

137 

138Das folgende Beispiel verwendet `manifestDeps`, um Ihr Plugin vorzuschlagen, sobald Claude eine `package.json` gelesen hat, die von Ihrem SDK-npm-Paket abhängt, das hier `your-sdk` genannt wird.

139 

140```json theme={null}

141{

142 "name": "your-plugin",

143 "source": "./plugins/your-plugin",

144 "relevance": {

145 "signals": {

146 "manifestDeps": [

147 {

148 "file": "[/\\\\]package\\.json$",

149 "pattern": "\"your-sdk\"\\s*:"

150 }

151 ]

152 }

153 }

154}

155```

156 

157In diesem Beispiel verwendet das `file`-Muster `[/\\\\]`, damit es sowohl Vorwärts- als auch Backslash-Pfadtrennzeichen abgleicht, und `\\.`, damit der Punkt literal ist. In JSON wird jeder Backslash im regulären Ausdruck zweimal geschrieben.

158 

159<h2 id="validate-your-marketplace">

160 Validieren Sie Ihren Marketplace

161</h2>

162 

163Führen Sie in Ihrer Shell `claude plugin validate` gegen Ihr Marketplace-Verzeichnis aus, um den `relevance`-Block vor der Veröffentlichung zu überprüfen:

164 

165```bash theme={null}

166claude plugin validate ./my-marketplace

167```

168 

169Der Validator meldet Fehler und Warnungen im `relevance`-Block, einschließlich dieser:

170 

171* Meldet unbekannte Schlüssel unter `relevance` und `relevance.signals` als Warnungen

172* Kennzeichnet einen `relevance`-Wert, der kein Objekt ist

173* Lehnt einen `signals.hosts`-Eintrag ab, der ein Schema, einen Port oder einen Pfad enthält

174 

175Jeder Fund wird mit dem Pfad des Feldes gedruckt, das er betrifft, und die Ausgabe endet mit `Validation passed`, `Validation passed with warnings` oder `Validation failed`.

176 

177<h2 id="enable-suggestions-in-managed-settings">

178 Aktivieren Sie Vorschläge in verwalteten Einstellungen

179</h2>

180 

181Benutzer sehen keine Vorschläge aus einem Marketplace, bis ein Administrator ihn in [verwalteten Einstellungen](/docs/de/plugins/org) erlaubt, auch wenn seine `marketplace.json` `relevance` deklariert.

182 

183Um einen Marketplace zu erlauben, bearbeiten Sie Ihre verwalteten Einstellungen wie folgt:

184 

185* Fügen Sie den Marketplace-Namen zu `pluginSuggestionMarketplaces` hinzu.

186* Für jeden Marketplace außer dem offiziellen Anthropic-Marketplace deklarieren Sie auch die Marketplace-Quelle, entweder als Eintrag dieses Namens in [`extraKnownMarketplaces`](/docs/de/plugins/org#require-a-marketplace-and-its-plugins) oder als Eintrag in [`strictKnownMarketplaces`](/docs/de/plugins/org#allowlist-with-strictknownmarketplaces).

187 

188Auf einem Computer, auf dem der Marketplace nicht registriert ist, oder unter dem erlaubten Namen aus einer anderen Quelle registriert ist, werden keine Vorschläge von ihm angezeigt. Die Quellprüfung verhindert, dass eine unabhängige Quelle sich unter einem erlaubten Namen registriert, um ihre Plugins in Ihrer gesamten Organisation vorgeschlagen zu bekommen.

189 

190Die folgende `managed-settings.json` registriert einen Org-Marketplace aus einem GitHub-Repository und aktiviert seine Vorschläge:

191 

192```json theme={null}

193{

194 "extraKnownMarketplaces": {

195 "your-marketplace": {

196 "source": {

197 "source": "github",

198 "repo": "your-org/your-marketplace"

199 }

200 }

201 },

202 "pluginSuggestionMarketplaces": ["your-marketplace"]

203}

204```

205 

206Der Name des offiziellen Marketplace kann sich nur von der offiziellen Anthropic-Quelle registrieren, daher benötigt er keine Quelldeklaration. Für den offiziellen Marketplace erlauben Sie nur den Namen:

207 

208```json theme={null}

209{

210 "pluginSuggestionMarketplaces": ["claude-plugins-official"]

211}

212```

213 

214<h2 id="preview-what-the-user-sees">

215 Vorschau, was der Benutzer sieht

216</h2>

217 

218Wenn ein `relevance`-Signal des Plugins während einer Sitzung abgestimmt wird, lautet der Tipp unter dem Spinner:

219 

220```text theme={null}

221Working with Terraform? Install the terraform-helpers plugin:

222/plugin install terraform-helpers@your-marketplace

223```

224 

225Wenn ein `cwd`-Signal beim Sitzungsstart abgestimmt wird, lautet die einzeilige Benachrichtigung:

226 

227```text theme={null}

228plugin suggestion: terraform-helpers@your-marketplace · /plugin

229```

230 

231In der `/plugin` Discover-Registerkarte wird das Plugin oben in den anderen Ergebnissen mit einer Anmerkung angeheftet, die das abgestimmte Signal benennt, z. B. `suggested for this directory` oder `suggested for terraform commands`.

232 

233Claude Code begrenzt, wie oft es ein bestimmtes Plugin vorschlägt:

234 

235* Der Vorschlag wird höchstens einmal alle drei Sitzungen über den Spinner-Tipp und die Benachrichtigung beim Sitzungsstart kombiniert angezeigt.

236* Die Benachrichtigung beim Sitzungsstart wird nicht mehr angezeigt, sobald der Spinner-Tipp und die Benachrichtigung das Plugin insgesamt zweimal angezeigt haben.

237* Weder der Spinner-Tipp noch die Benachrichtigung beim Sitzungsstart wiederholen sich, sobald das Plugin installiert ist.

238* Die Discover-Registerkarte heftet das Plugin das erste Mal an, wenn der Benutzer die Registerkarte öffnet, während die Signale des Plugins abgestimmt werden. Claude Code zeichnet das in `~/.claude.json` auf, daher wird das Plugin jedes Mal, wenn der Benutzer später `/plugin` auf diesem Computer öffnet, in normaler Reihenfolge angezeigt.

239 

240<h2 id="see-also">

241 Siehe auch

242</h2>

243 

244* [Hosten Sie einen Marketplace](/docs/de/plugins/host-marketplace): Führen Sie den Marketplace aus, der Ihre Plugins hostet

245* [Marketplace-Verweis](/docs/de/plugins/marketplace-reference#plugin-entries): Jedes Feld, das ein Plugin-Eintrag akzeptiert

246* [Empfehlen Sie Ihr Plugin von Ihrer CLI](/docs/de/plugins/cli-hints): Fordern Sie Benutzer von Ihrer eigenen CLI auf, anstatt von Claude Codes Sitzungssignalen

247* [Verwalten Sie Plugins für Ihre Organisation](/docs/de/plugins/org): `extraKnownMarketplaces`, `strictKnownMarketplaces` und der Rest der Plugin-Richtlinienschlüssel

plugins/security.md +186 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Plugin-Sicherheit und Vertrauen

6 

7> Entscheiden Sie, ob Sie einem Plugin vertrauen, bevor Sie es installieren – von dem, was ein Plugin auf Ihrem Computer tun kann, bis hin zu dessen Überprüfung und Deinstallation.

8 

9Ein Claude Code-Plugin, das Sie installieren, kann beliebigen Code auf Ihrem Computer mit Ihren Benutzerrechten ausführen.

10 

11Sie installieren ein Plugin aus einem Marketplace, das ist der Katalog, den Claude Code abruft. Einige Marketplace-Namen sind [für Anthropics eigene Marketplaces reserviert](#marketplace-tiers), und alle anderen Marketplaces sind von Drittanbietern. Der Name eines Marketplace zeigt Ihnen, wer den Katalog veröffentlicht, nicht was jedes Plugin darin tut. Daher [überprüfen Sie ein Plugin vor der Installation](#review-a-plugin-before-you-install), unabhängig davon, von welchem Marketplace es stammt.

12 

13Lesen Sie diese Seite, wenn Sie entscheiden, ob Sie ein Plugin installieren möchten, oder wenn Sie Tools überprüfen, bevor Ihr Team sie verwenden kann.

14 

15<Note>

16 Diese Fälle werden auf anderen Seiten behandelt:

17 

18 * **Claude Codes eigenes Sicherheitsmodell**: siehe [Sicherheit](/docs/de/security)

19 * **Einschränkung oder Anforderung von Plugins für eine Organisation**: siehe [Plugins für Ihre Organisation verwalten](/docs/de/plugins/org)

20 * **Die Plugins `security-guidance` oder `claude-security`**: diese Seite handelt nicht von ihnen. Siehe [`security-guidance`](/docs/de/security-guidance) und [`claude-security`](/docs/de/claude-security)

21</Note>

22 

23Beginnen Sie mit [was ein Plugin tun kann](#understand-what-a-plugin-can-do) und [welche Marketplaces Anthropics gehören](#marketplace-tiers), dann [überprüfen Sie das Plugin vor der Installation](#review-a-plugin-before-you-install).

24 

25<h2 id="understand-what-a-plugin-can-do">

26 Verstehen Sie, was ein Plugin tun kann

27</h2>

28 

29Ein Plugin kann Inhalte enthalten, die Code auf Ihrem Computer mit Ihren Benutzerrechten ausführen, und Inhalte, die als Anweisungen in Claudes Kontext eingehen. Daher [überprüfen Sie ein Plugin vor der Installation](#review-a-plugin-before-you-install). Hier ist, was ein installiertes Plugin tun kann:

30 

31* **Hooks**: die [Hooks](/docs/de/hooks) eines Plugins werden als Shell-Befehle an Punkten im Lebenszyklus von Claude Code ausgeführt, z. B. vor oder nach einem Tool-Aufruf.

32* **MCP- und LSP-Server**: Claude Code verbindet sich mit den [MCP-Servern](/docs/de/mcp), die ein aktiviertes Plugin deklariert, und gibt Claude deren Tools. Ein stdio-MCP-Server wird als Prozess ausgeführt, den Claude Code auf Ihrem Computer startet. Claude Code startet auch die Sprachserver, die das Plugin deklariert.

33* **`bin/`-Verzeichnis**: Claude Code fügt das `bin/`-Verzeichnis jedes aktivierten Plugins zum `PATH` der Shell des Bash-Tools hinzu, sodass Claudes Bash-Befehle jede dort vorhandene ausführbare Datei ausführen können.

34* **Skills, Befehle und Agenten**: diese gehen als Anweisungen in Claudes Kontext ein und beeinflussen daher, was Claude mit den Tools tut, die es bereits hat.

35* **Updates**: wenn Auto-Update für den Marketplace aktiviert ist, von dem Sie ein Plugin installiert haben, aktualisiert Claude Code dieses Plugin im Hintergrund, sodass sich die Dateien, die Sie überprüft haben, auf der Festplatte ändern können. [Wann Auto-Update ausgeführt wird](/docs/de/plugins/loading#when-auto-update-runs) enthält die zeitliche Planung. Um Auto-Update pro Marketplace ein- oder auszuschalten, siehe [Plugins aktuell halten](/docs/de/plugins/install#keep-plugins-updated).

36 

37Claude Codes [Berechtigungsregeln](/docs/de/permissions) und [Sandbox](/docs/de/sandboxing) decken die Tool-Aufrufe ab, die Claude macht, nicht den Code, den ein Plugin selbst ausführt:

38 

39* **Hooks und Server-Prozesse**: Befehls-Hooks führen Shell-Befehle mit Ihren vollständigen Benutzerberechtigungen aus. Claude Code führt Hooks und MCP-Server außerhalb der Sandbox aus.

40* **Claudes Tool-Aufrufe**: ein Aufruf eines der MCP-Tools des Plugins und ein Bash-Befehl, der eine ausführbare Datei aus dem `bin/`-Verzeichnis des Plugins ausführt, sind Tool-Aufrufe, daher gelten Ihre Berechtigungsregeln für sie.

41 

42Die Installation eines Plugins aktiviert es auch, es sei denn, sein Manifest oder der Marketplace-Eintrag setzt [`defaultEnabled: false`](/docs/de/plugins/install#choose-an-install-scope) und Sie haben es nicht selbst aktiviert.

43 

44Um ein Plugin zu entfernen, dem Sie nicht mehr vertrauen, siehe [Entfernen Sie ein Plugin, dem Sie nicht mehr vertrauen](#remove-a-plugin-you-no-longer-trust).

45 

46<h2 id="marketplace-tiers">

47 Identifizieren Sie Anthropics Marketplaces nach Name

48</h2>

49 

50Der Name eines Marketplace ordnet ihn in eine von drei Ebenen ein: offiziell, Community oder Drittanbieter. Claude Code akzeptiert die offiziellen und Community-Namen nur für Marketplaces, die aus `github.com/anthropics/`-Repositories stammen, daher kann sich ein Marketplace von Drittanbietern nicht als Anthropic-Marketplace ausgeben. Ein Marketplace, den ein Kollege oder Ihre Organisation veröffentlicht, ist ein Drittanbieter-Marketplace.

51 

52Die Tabelle zeigt, welche Namen in jede Ebene fallen:

53 

54| Ebene | Welche Marketplaces |

55| :------------ | :---------------------------------------------------------------------------------------------- |

56| Offiziell | Die [offiziellen Marketplace-Namen](#official-marketplace-names), wie `claude-plugins-official` |

57| Community | `claude-community`, `claude-plugins-community` und `healthcare` |

58| Drittanbieter | Alle anderen Marketplaces |

59 

60Wenn der `claude-community`-Katalog ein Plugin auf einen Commit-SHA festlegt, was er für fast jeden Eintrag tut, weigert sich Claude Code, einen anderen Commit zu installieren.

61 

62<h3 id="official-marketplace-names">

63 Offizielle Marketplace-Namen

64</h3>

65 

66Diese Marketplace-Namen bilden die offizielle Ebene:

67 

68* `claude-plugins-official`

69* `claude-code-marketplace`

70* `claude-code-plugins`

71* `anthropic-marketplace`

72* `anthropic-plugins`

73* `agent-skills`

74* `anthropic-agent-skills`

75* `life-sciences`

76* `knowledge-work-plugins`

77* `claude-for-legal`

78* `claude-for-financial-services`

79* `financial-services-plugins`

80* `first-party-plugins`

81* `claude-tag-plugins`

82 

83Wie sich die offiziellen, Community- und Demo-Marketplaces unterscheiden und wo Sie sehen können, was jeder auflistet, siehe [Anthropics Marketplaces](/docs/de/plugins/anthropic-marketplaces).

84 

85<h2 id="review-a-plugin-before-you-install">

86 Überprüfen Sie ein Plugin vor der Installation

87</h2>

88 

89Bevor Sie ein Plugin installieren, schauen Sie sich an, was es hinzufügt und woher es kommt.

90 

91<Steps>

92 <Step title="Überprüfen Sie die Quelle des Marketplace">

93 Führen Sie in Ihrer Shell `claude plugin marketplace list` aus, um die Quelle zu drucken, von der jeder Marketplace hinzugefügt wurde, z. B. ein GitHub-Repository oder ein Verzeichnis.

94 </Step>

95 

96 <Step title="Lesen Sie den Detailbereich">

97 Führen Sie in einer Claude Code-Sitzung `/plugin` aus und wählen Sie das Plugin aus. Der Detailbereich zeigt einen Abschnitt **Will install** (Wird installiert), der die Befehle, Agenten, Skills, Hooks und MCP- und LSP-Server des Plugins auflistet. Für ein Plugin, für das Anthropic keine veröffentlichten Komponentendaten hat, zeigt der Abschnitt, was der Marketplace-Eintrag deklariert, oder eine Notiz: `Components will be discovered at installation` (Komponenten werden bei der Installation erkannt) für ein Plugin, das im Marketplace gespeichert ist, oder `Component summary not available for remote plugin` (Komponentenzusammenfassung nicht verfügbar für Remote-Plugin) für eines, das von anderswo abgerufen wird.

98 </Step>

99 

100 <Step title="Lesen Sie die Quelle des Plugins">

101 Wählen Sie im Detailbereich **Open homepage** (Homepage öffnen) oder **View on GitHub** (Auf GitHub anzeigen) unter den Installationsoptionen. Wenn der Bereich keines von beiden anbietet, öffnen Sie das Marketplace-Repository, das Sie im ersten Schritt gefunden haben. Finden Sie das Verzeichnis des Plugins dort. Der Abschnitt **Will install** zeigt, dass ein Hook vorhanden ist, aber nicht, was er ausführt. Lesen Sie daher diese Dateien im Verzeichnis des Plugins:

102 

103 * **`hooks/hooks.json`**: der Befehl, den jeder Hook ausführt

104 * **`.mcp.json`**: der Befehl oder die URL jedes Servers

105 * **`bin/`**: jede Datei im Verzeichnis

106 </Step>

107 

108 <Step title="Listet auf, was das Plugin enthält">

109 Klonen Sie das Repository, das das Verzeichnis des Plugins enthält, und führen Sie dann `claude --plugin-dir <plugin directory> plugin details <plugin name>` in Ihrer Shell aus, um zu sehen, was Claude Code darin findet. Der Befehl liest die Dateien des Plugins, ohne eine Sitzung zu starten, und druckt eine `Component inventory` (Komponenteninventar), die die Skills und Befehle des Plugins, Agenten, Hooks mit dem Ereignis jedes Hooks und MCP- und LSP-Server auflistet.

110 </Step>

111</Steps>

112 

113Nach der Installation eines Plugins führen Sie `claude plugin details <plugin name>` in Ihrer Shell aus, um das gleiche `Component inventory` für die installierte Kopie unter `~/.claude/plugins/cache/<marketplace>/<plugin>/<version>/` zu drucken.

114 

115<h3 id="remove-a-plugin-you-no-longer-trust">

116 Entfernen Sie ein Plugin, dem Sie nicht mehr vertrauen

117</h3>

118 

119Führen Sie in Ihrer Shell [`claude plugin uninstall <plugin>`](/docs/de/plugins/cli-reference#plugin-uninstall) mit dem `--scope` aus, in dem Sie es installiert haben. Überprüfen Sie dann, was die Deinstallation entfernt hat und was sie hinterlassen hat:

120 

121* **Persistente Daten**: wenn dies der letzte Scope war, in dem das Plugin installiert war, löscht die Deinstallation auch das Verzeichnis mit persistenten Daten des Plugins, es sei denn, Sie übergeben `--keep-data`.

122* **Zwischengespeicherte Dateien**: die Dateien des Plugins bleiben auf der Festplatte unter `~/.claude/plugins/cache/` für 14 Tage, bevor ein [Hintergrund-Sweep sie entfernt](/docs/de/plugins/loading#cleanup-of-previous-versions). Nachdem Sie Ihr letztes Plugin deinstalliert haben, bleiben verwaiste Verzeichnisse bestehen, bis Sie ein anderes installieren. Um die Dateien jetzt zu löschen, entfernen Sie das Verzeichnis des Plugins unter `~/.claude/plugins/cache/<marketplace>/<plugin>/` selbst.

123* **Der Marketplace**: wenn Sie dem Besitzer des Marketplace auch nicht vertrauen, [entfernen Sie auch den Marketplace](/docs/de/plugins/install#manage-marketplaces), was jedes Plugin deinstalliert, das Sie von ihm installiert haben.

124 

125<h2 id="recognize-when-claude-code-refuses-or-warns">

126 Erkennen Sie, wann Claude Code ablehnt oder warnt

127</h2>

128 

129Der Detailbereich, den Sie auf der Registerkarte **Discover** (Entdecken) oder **Marketplaces** in `/plugin` öffnen, zeigt die gleiche Vertrauenswarnung für jedes Plugin. Claude Code lehnt statt zu warnen in Fällen wie denen unter [Nicht vertrauenswürdige Marketplace-Quellen und fehlgeschlagene Integritätsprüfungen](#untrusted-marketplace-sources-and-failed-integrity-checks) ab.

130 

131<h3 id="trust-warning-before-you-install">

132 Vertrauenswarnung vor der Installation

133</h3>

134 

135Die Warnung liest sich gleich, unabhängig davon, von welchem Marketplace das Plugin kommt:

136 

137```text theme={null}

138Make sure you trust a plugin before installing, updating, or using it. Anthropic does not control what MCP servers, files, or other software are included in plugins and cannot verify that they will work as intended or that they won't change. See each plugin's homepage for more information.

139```

140 

141Wenn Ihre Organisation `pluginTrustMessage` in [verwalteten Einstellungen](/docs/de/plugins/org) setzt, hängt Claude Code diesen Text an die Warnung an.

142 

143<h3 id="untrusted-marketplace-sources-and-failed-integrity-checks">

144 Nicht vertrauenswürdige Marketplace-Quellen und fehlgeschlagene Integritätsprüfungen

145</h3>

146 

147Claude Code weigert sich, einen Marketplace zu laden oder ein Plugin in diesen Fällen zu installieren, jeder mit seiner eigenen Fehlermeldung:

148 

149* **Nicht vertrauenswürdige Marketplace-Quelle**: wenn ein Marketplace einen offiziellen oder Community-Namen verwendet, aber seine Quelle außerhalb von `github.com/anthropics/` liegt, stoppt Claude Code das Laden des Marketplace und der Plugins, die Sie von ihm installiert haben. Der Fehler ist [Marketplace is registered from an untrusted source](/docs/de/errors#marketplace-is-registered-from-an-untrusted-source).

150* **Archiv-Integrität**: wenn ein Marketplace-Eintrag eine [`archive`-Quelle](/docs/de/plugins/marketplace-reference#archive-plugin-source) auf einen `sha256`-Digest festlegt und der Digest der heruntergeladenen Datei nicht übereinstimmt, weigert sich Claude Code die Installation. Der Fehler ist [Plugin archive integrity check failed](/docs/de/errors#plugin-archive-integrity-check-failed).

151 

152Der `sha256`-Pin ist getrennt vom Commit-SHA-Pin des Community-Katalogs, der den Git-Commit auswählt, der ausgecheckt werden soll.

153 

154<h2 id="enforce-plugin-controls-for-your-organization">

155 Erzwingen Sie Plugin-Kontrollen für Ihre Organisation

156</h2>

157 

158Mit [verwalteten Einstellungen](/docs/de/plugins/org) kann ein Administrator diese Plugin-Kontrollen erzwingen:

159 

160* Whitelist oder Blacklist von Marketplace-Quellen

161* Erzwungenes Aktivieren von Plugins

162* Deaktivieren Sie die Flags `--plugin-dir` und `--plugin-url` und die Variable `CLAUDE_CODE_PLUGIN_DIRS`

163* Begrenzen Sie Hooks auf diejenigen aus verwalteten Einstellungen und erzwungenen Plugins

164* Verhindern Sie, dass Plugins aus den claude.ai-Konten von Mitgliedern in Claude Code geladen werden, mit [`syncClaudeAiPlugins`](/docs/de/plugins/org#control-matrix)

165 

166Die [Kontrollmatrix](/docs/de/plugins/org#control-matrix) sagt, was jeder Schlüssel tut und nicht abdeckt.

167 

168<h2 id="find-plugins-in-telemetry">

169 Finden Sie Plugins in der Telemetrie

170</h2>

171 

172Wenn Ihre Organisation Claude Codes [OpenTelemetry-Ereignisse](/docs/de/monitoring-usage) in sein eigenes Backend exportiert, entscheiden die [Marketplace-Ebenen](#marketplace-tiers), welche Plugin-Namen dort erscheinen:

173 

174* **[Plugin loaded event](/docs/de/monitoring-usage#plugin-loaded-event)**: das Ereignis meldet offizielle Ebenen-Plugin- und Marketplace-Namen wie sie sind. Für die Community- und Drittanbieter-Ebenen sind `plugin.name` und `marketplace.name` die Literalzeichenfolge `third-party`, es sei denn, Sie setzen `OTEL_LOG_TOOL_DETAILS=1`.

175* **Plugin-Scope**: der `plugin.scope` des geladenen Ereignisses meldet immer noch, woher das Plugin kam, z. B. `org` für ein Plugin, das Ihre verwalteten Einstellungen aktivieren, oder `user-local` für alle anderen Drittanbieter-Plugins. Das [Plugin loaded event](/docs/de/monitoring-usage#plugin-loaded-event) listet jeden Wert auf.

176* **[Plugin installed event](/docs/de/monitoring-usage#plugin-installed-event)**: es sei denn, Sie setzen `OTEL_LOG_TOOL_DETAILS=1`, lässt das Ereignis die Namenfelder für Nicht-Offizielle-Plugins weg, anstatt `third-party` zu melden.

177* **[Claude Code Analytics API](https://platform.claude.com/docs/en/api/admin/analytics/plugins/list)**: Claude Code meldet Plugins aus den offiziellen und Community-Ebenen nach Name und meldet alle anderen Plugins als `third-party`.

178 

179<h2 id="next-steps">

180 Nächste Schritte

181</h2>

182 

183* [Plugins für Ihre Organisation verwalten](/docs/de/plugins/org): beschränken Sie, von welchen Marktplätzen Benutzer installieren können, und erzwingen Sie die, denen Sie vertrauen

184* [Plugins installieren und verwalten](/docs/de/plugins/install): überprüfen Sie den Detailbereich eines Plugins, bevor Sie einen Umfang wählen

185* [Anthropic-Marktplätze](/docs/de/plugins/anthropic-marketplaces): welche Marktplatznamen gehören Anthropic

186* [Sicherheit](/docs/de/security): Claude Code's eigenes Sicherheitsmodell

plugins/troubleshooting.md +1064 −0 created

Details

1> ## Documentation Index

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

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

4 

5# Plugins fehlerbeheben

6 

7> Beheben Sie Plugin-Fehler in Claude Code. Finden Sie die genaue Meldung, die Sie gesehen haben, gruppiert nach Phase von der Ausführung von /plugin über die Installation bis zur Organisationsrichtlinie.

8 

9Diese Seite listet Fehlermeldungen und Symptome für Claude Code-Plugins und für Marktplätze auf – die Kataloge, aus denen Claude Code Plugins installiert. Jeder Eintrag gibt die Ursache, eine Lösung und das, was Sie sehen, sobald die Lösung funktioniert.

10 

11Wenn eine Meldung ein Plugin oder einen Marktplatz benennt, zeigt der Eintrag einen Platzhalter wie `<name>` statt dessen an.

12 

13Verwenden Sie diese Seite, ob Sie Plugins installieren, sie erstellen, einen Marktplatz hosten oder Plugins für eine Organisation verwalten.

14 

15<Note>

16 Diese Fälle werden auf anderen Seiten behandelt:

17 

18 * **Warum Bereiche, der Cache und die Priorität sich so verhalten**: lesen Sie [Plugin-Ladungsreferenz](/docs/de/plugins/loading)

19 * **Nachschlagen eines Flags, Feldes oder Befehls**: verwenden Sie die [Plugin-Befehle-Referenz](/docs/de/plugins/cli-reference), die [Manifest-Referenz](/docs/de/plugins/manifest-reference) oder die [Marktplatz-Referenz](/docs/de/plugins/marketplace-reference)

20</Note>

21 

22Suchen Sie nach der genauen Meldung, die Sie gesehen haben. Jede Meldung wird unter der Phase aufgelistet, die sie erzeugt, was nicht immer der Befehl ist, den Sie ausgeführt haben. Zum Beispiel kann eine Installation fehlschlagen, weil ein Marktplatz fehlt, daher wird diese Meldung unter [Einen Marktplatz hinzufügen](#add-a-marketplace) aufgelistet.

23 

24<h2 id="find-where-/plugin-runs">

25 Finden Sie, wo `/plugin` ausgeführt wird

26</h2>

27 

28`/plugin` ist ein Befehl, den Sie in einer laufenden Claude Code-Terminalsitzung eingeben, und er öffnet ein interaktives Panel. Die Einträge in diesem Abschnitt behandeln die Orte, an denen Sie ihn eingeben können, aber er kann nicht ausgeführt werden, und die Befehlsschreibweisen, die nicht vorhanden sind.

29 

30<h3 id="plugin-isnt-available-in-this-environment">

31 `/plugin isn't available in this environment`

32</h3>

33 

34Sie haben `/plugin` irgendwo anders als in einer Claude Code-Terminalsitzung eingegeben, und Claude hat stattdessen diese Zeile geantwortet, ohne etwas zu öffnen.

35 

36Sie erhalten diese Antwort in einer Sitzung, die kein Terminal zum Zeichnen des `/plugin`-Panels hat: [nicht-interaktiver Modus](/docs/de/headless) mit `claude -p`, das Agent SDK, die Code-Registerkarte der Claude-Desktop-App, das VS Code-Erweiterungspanel und der Browser unter claude.ai/code.

37 

38Im VS Code-Erweiterungspanel erhält nur eine `/plugin`-Zeile mit etwas danach, wie `/plugin install <plugin>@<marketplace>`, diese Antwort. `/plugin` oder `/plugins` allein eingegeben öffnet den Dialog **Plugins verwalten**.

39 

40Installieren Sie das Plugin von der Oberfläche, auf der Sie sich befinden:

41 

42* **Claude-Desktop-App, lokale oder SSH-Sitzung**: klicken Sie auf die Schaltfläche **+** neben der Eingabeaufforderung, dann **Plugins**, dann **Plugin hinzufügen**, um den [Plugin-Browser](/docs/de/desktop#install-plugins) zu öffnen

43* **VS Code-Erweiterung**: verwenden Sie die Registerkarte **VS Code** unter [Ein Plugin installieren](/docs/de/plugins/install#install-a-plugin)

44* **Claude Code im Web oder eine Desktop-Cloud-Sitzung**: eine Cloud-Sitzung hat keinen Plugin-Browser. Siehe die Registerkarte **Cloud-Sitzung** unter [Ein Plugin installieren](/docs/de/plugins/install#install-a-plugin), um zu sehen, was eine Cloud-Sitzung lädt

45* **Ein Terminal, auf das Sie Zugriff haben**: führen Sie `claude` aus und geben Sie dort `/plugin` ein, oder führen Sie `claude plugin install <plugin>@<marketplace>` in Ihrer Shell aus, ohne eine Sitzung zu starten

46 

47Wenn eine Terminal-Installation funktioniert, druckt `/plugin` eine Installationszusammenfassung, die mit `✓ Installed <plugin>.` beginnt, und `claude plugin install` druckt `Successfully installed plugin: <plugin>@<marketplace>`.

48 

49<h3 id="zsh-no-such-file-or-directory-plugin">

50 `zsh: no such file or directory: /plugin`

51</h3>

52 

53Sie haben `/plugin ...` an einer Shell-Eingabeaufforderung eingegeben, und die Shell hat gemeldet, dass keine Datei namens `/plugin` vorhanden ist. Bash meldet `bash: /plugin: No such file or directory`.

54 

55`/plugin` ist ein Befehl, den Sie in einer Claude Code-Sitzung eingeben, nicht an der Shell-Eingabeaufforderung. Starten Sie eine Sitzung und geben Sie dort denselben Befehl ein:

56 

57```shell theme={null}

58claude

59```

60 

61Dann an der Claude Code-Eingabeaufforderung:

62 

63```text theme={null}

64/plugin install <plugin>@<marketplace>

65```

66 

67Eine erfolgreiche Installation druckt eine Zusammenfassung, die mit `✓ Installed <plugin>.` beginnt. Wenn die Installation selbst dann fehlschlägt, befindet sich ihre Meldung unter [Einen Marktplatz hinzufügen](#add-a-marketplace) oder [Ein Plugin installieren](#install-a-plugin).

68 

69Um von der Shell aus ohne Starten einer Sitzung zu installieren, führen Sie stattdessen `claude plugin install <plugin>@<marketplace>` aus.

70 

71<h3 id="the-term-plugin-is-not-recognized-as-the-name-of-a-cmdlet">

72 `The term '/plugin' is not recognized as the name of a cmdlet`

73</h3>

74 

75Sie haben `/plugin ...` an einer PowerShell-Eingabeaufforderung eingegeben, und `/plugin` ist ein Claude Code-Befehl, kein Programm. Bash und Zsh melden [ihre eigene Form dieses Fehlers](#zsh-no-such-file-or-directory-plugin).

76 

77Verwenden Sie stattdessen eine dieser Optionen:

78 

79* Führen Sie `claude` aus, geben Sie dann `/plugin` an der Claude Code-Eingabeaufforderung ein

80* Führen Sie `claude plugin install <plugin>@<marketplace>` in PowerShell aus, ohne eine Sitzung zu starten

81 

82<h3 id="claude-command-not-found-after-claude-plugin">

83 `claude: command not found` nach `claude plugin ...`

84</h3>

85 

86Sie haben `claude plugin install ...` in Ihrer Shell ausgeführt, und die Shell konnte `claude` überhaupt nicht finden. Unter Windows lautet die Meldung `'claude' is not recognized as the name of a cmdlet` oder `'claude' is not recognized as an internal or external command`.

87 

88Die Ursache liegt nicht am Plugin-Befehl. Entweder ist Claude Code nicht installiert, oder sein Installationsverzeichnis befindet sich nicht auf Ihrem `PATH` in dieser Shell. Folgen Sie [`command not found: claude` nach der Installation](/docs/de/troubleshoot-install#command-not-found-claude-after-installation), und versuchen Sie dann den Plugin-Befehl erneut.

89 

90<h3 id="unknown-command-and-command-spellings-that-dont-exist">

91 `Unknown command` und Befehlsschreibweisen, die nicht vorhanden sind

92</h3>

93 

94Sie haben einen Plugin-Befehl eingegeben, den Sie irgendwo gesehen haben, und erhielten `Unknown command: /<name>` in einer Sitzung oder `error: unknown command '<name>'` oder `error: unknown option '<flag>'` vom `claude`-Binär in Ihrer Shell.

95 

96Es gibt mehrere Befehlsschreibweisen, die Claude Code nicht hat. Die folgende Tabelle ordnet jede einer echten Befehl zu. Die [Plugin-Befehlsreferenz](/docs/de/plugins/cli-reference) listet jeden Unterbefehl und jedes Flag auf.

97 

98| Sie haben eingegeben | Was Claude Code sagt | Verwenden Sie stattdessen |

99| :----------------------------------------- | :--------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------- |

100| `claude plugin add <source>` | `error: unknown command 'add'` | `claude plugin marketplace add <source>`, um einen Marktplatz hinzuzufügen, oder `claude plugin install <plugin>@<marketplace>`, um ein Plugin zu installieren |

101| `claude plugin install <plugin> --project` | `error: unknown option '--project'` | `claude plugin install <plugin>@<marketplace> --scope project` |

102| `/install <plugin>` | `Unknown command: /install` | `/plugin install <plugin>@<marketplace>` |

103| `/plugin add <source>` | Das `/plugin`-Panel öffnet sich auf der Registerkarte **Discover** | `/plugin marketplace add <source>` |

104| `marketplace.anthropic.com` als Quelle | `Invalid marketplace source format. Try: owner/repo, https://..., or ./path` | `anthropics/claude-plugins-official` für den offiziellen Marktplatz |

105 

106Diese Schreibweisen sehen falsch aus, funktionieren aber:

107 

108* `claude plugins` ist ein Alias von `claude plugin`

109* `claude plugin remove` ist ein Alias von `claude plugin uninstall`

110* `/plugins` und `/marketplace` in einer Sitzung öffnen dasselbe Panel wie `/plugin`

111 

112<h2 id="add-a-marketplace">

113 Einen Marktplatz hinzufügen

114</h2>

115 

116Ein Marktplatz ist ein Katalog, den Sie Claude Code aus einem Git-Repository, einer URL oder einem lokalen Pfad hinzufügen. Diese Einträge behandeln die Meldungen, die Sie erhalten, wenn das Hinzufügen fehlschlägt oder eine spätere Aktualisierung fehlschlägt.

117 

118<h3 id="marketplace-claude-plugins-official-not-found">

119 `Marketplace "claude-plugins-official" not found`

120</h3>

121 

122Sie haben `/plugin install <plugin>@claude-plugins-official` in einer Sitzung ausgeführt, und Claude Code hat gemeldet, dass es keinen Marktplatz mit diesem Namen hat.

123 

124Der offizielle Marktplatz ist auf diesem Computer noch nicht registriert. Claude Code registriert ihn normalerweise selbst beim ersten Mal, wenn Sie eine interaktive Terminalsitzung starten. Er ist noch nicht ausgeführt worden, wenn Sie Claude Code nur über die VS Code-Erweiterung verwendet haben, und er überspringt oder verschiebt diesen Schritt:

125 

126* Wenn eine Richtlinie die Quelle blockiert

127* Wenn `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` gesetzt ist

128* Nach einem fehlgeschlagenen Versuch, der auf eine Wiederholung wartet

129 

130Die `claude plugin`-Shell-Befehle registrieren ihn nie für Sie.

131 

132Fügen Sie ihn hinzu, und versuchen Sie dann die Installation erneut:

133 

134```text theme={null}

135/plugin marketplace add anthropics/claude-plugins-official

136```

137 

138Claude Code druckt `Successfully added marketplace: claude-plugins-official`, und `/plugin marketplace list` zeigt den Marktplatz mit seiner Quelle.

139 

140Für jeden anderen Marktplatznamen in dieser Meldung siehe [`Marketplace "<name>" not found`](#marketplace-not-found).

141 

142Dieselbe Zeichenkette erscheint auch in der Registerkarte `/plugin` **Errors**, der Liste der Ladefehler des Panels, wenn ein Plugin in Ihren Einstellungen einen Marktplatz benennt, den Sie nicht hinzugefügt haben.

143 

144<h3 id="marketplace-not-found">

145 `Marketplace "<name>" not found`

146</h3>

147 

148Sie haben `/plugin install <plugin>@<name>` in einer Sitzung ausgeführt, oft aus einer Installationszeile, die jemand Ihnen gesendet hat, und Claude Code hat gemeldet, dass es keinen Marktplatz mit diesem Namen hat.

149 

150Wenn der Name mit `claudeai-` beginnt, wird der Marktplatz auf claude.ai gehostet, und Sie fügen ihn nach Name aus Ihrer Shell mit `claude plugin marketplace add --claudeai <name>` hinzu. Siehe [Einen Marktplatz von claude.ai hinzufügen](/docs/de/plugins/install#add-from-claude-ai).

151 

152Für jeden anderen Namen benennt eine Installationszeile einen Marktplatz, sagt aber nicht, wo der Marktplatz gehostet wird, und Claude Code hat keinen Index, um einen Marktplatznamen darin nachzuschlagen. Fragen Sie denjenigen, der die Zeile gesendet hat, nach der Quelle des Marktplatzes, die ein GitHub `owner/repo`, eine Git-URL oder ein Pfad ist. Dann [fügen Sie den Marktplatz hinzu](/docs/de/plugins/install#add-a-marketplace) und führen Sie die Installationszeile erneut aus.

153 

154Ein Marktplatz, den jemand Ihnen sendet, ist von Drittanbietern, daher [überprüfen Sie das Plugin, bevor Sie es installieren](/docs/de/plugins/security#review-a-plugin-before-you-install).

155 

156Wenn Sie den Marktplatz bereits hinzugefügt haben, überprüfen Sie die Schreibweise gegen `/plugin marketplace list`.

157 

158<h3 id="invalid-marketplace-source-format">

159 `Invalid marketplace source format`

160</h3>

161 

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

163 

164Claude Code akzeptiert eine Quelle in einer dieser Formen:

165 

166* Ein GitHub `owner/repo`-Kurzbefehl

167* Eine `https://`- oder `http://`-URL

168* Eine `user@host:path`-SSH-URL

169* Ein lokaler Pfad, der mit `./`, `../`, `/` oder `~` beginnt

170 

171Ein bloßer Name wie `claude-plugins-official` passt zu keinem davon. Auch nicht ein bloßer Hostname wie `marketplace.anthropic.com`.

172 

173Geben Sie die Quelle in einer der akzeptierten Formen erneut ein:

174 

175```text theme={null}

176/plugin marketplace add anthropics/claude-plugins-official

177```

178 

179Claude Code druckt `Successfully added marketplace: <name>`, wenn das Hinzufügen funktioniert.

180 

181<h3 id="is-not-a-valid-github-owner-repo-shorthand">

182 `'<source>' is not a valid GitHub owner/repo shorthand`

183</h3>

184 

185Sie haben eine Quelle mit einem Schrägstrich übergeben, die nicht `owner/repo` ist, wie `github.com/owner/repo` oder ein `gitlab.example.com/group/project`-Pfad. Claude Code hat sie mit dieser Meldung und einer Liste akzeptierter Formen abgelehnt.

186 

187Der `owner/repo`-Kurzbefehl ist nur für GitHub und muss GitHubs Benennungsregeln befolgen, daher schlägt ein Hostname oder ein zusätzliches Pfadsegment fehl. Übergeben Sie die Quelle in der Form, die dem Ort entspricht, an dem der Marktplatz gehostet wird:

188 

189* **Ein Repository auf einem beliebigen Host**: die vollständige Clone-URL

190* **Eine gehostete `marketplace.json`**: ihre `https://`-URL

191* **Ein lokaler Checkout**: `./path` oder ein absoluter Pfad

192 

193Um beispielsweise den offiziellen Marktplatz durch seine Clone-URL hinzuzufügen, in einer Sitzung:

194 

195```text theme={null}

196/plugin marketplace add https://github.com/anthropics/claude-plugins-official.git

197```

198 

199Ein erfolgreiches Hinzufügen druckt `Successfully added marketplace: <name>`.

200 

201<h3 id="path-does-not-exist">

202 `Path does not exist: <path>`

203</h3>

204 

205Sie haben einen lokalen Pfad an `marketplace add` übergeben, und es existiert nichts an diesem Pfad. Ein relativer Pfad wird gegen Ihr aktuelles Verzeichnis aufgelöst.

206 

207Überprüfen Sie den aufgelösten Pfad in der Meldung. Führen Sie dann den Befehl aus dem Verzeichnis aus, von dem der relative Pfad beginnt, oder übergeben Sie einen absoluten Pfad zum Marktplatzverzeichnis. Ein erfolgreiches Hinzufügen druckt `Successfully added marketplace: <name>`.

208 

209Claude Code akzeptiert ein Verzeichnis, das `.claude-plugin/marketplace.json` enthält, oder einen Pfad zu einer `.json`-Datei. Ein Pfad zu einer anderen Datei schlägt mit `File path must point to a .json file (marketplace.json)` fehl.

210 

211<h3 id="marketplace-file-not-found-at-claude-plugin-marketplace-json">

212 `Marketplace file not found at <path>/.claude-plugin/marketplace.json`

213</h3>

214 

215Claude Code hat den Marktplatz geklont oder heruntergeladen, aber keine `marketplace.json` am erwarteten Pfad darin gefunden. Der Befehl zum Hinzufügen meldet ihn als `Failed to add marketplace: Marketplace file not found at ...`.

216 

217Der Standardort ist `.claude-plugin/marketplace.json` im Repository-Root, und die [Marktplatz-Referenz](/docs/de/plugins/marketplace-reference) listet die akzeptierten Orte auf.

218 

219Die Lösung unterscheidet sich für den Besitzer und für alle anderen:

220 

221* **Sie besitzen den Marktplatz**: legen Sie die Datei an diesem Ort ab und fügen Sie den Marktplatz erneut hinzu

222* **Jemand anderes hostet ihn**: fragen Sie den Besitzer nach der genauen Quelle, die er veröffentlicht

223 

224<h3 id="ssh-authentication-failed-or-https-authentication-failed">

225 `SSH authentication failed` oder `HTTPS authentication failed`

226</h3>

227 

228Sie haben einen Marktplatz aus einem Git-Repository hinzugefügt oder aktualisiert, und der Clone ist mit `Failed to clone marketplace repository:` gefolgt von einer dieser Zeilen fehlgeschlagen.

229 

230Überprüfen Sie zunächst das Repository selbst: ein falsch geschriebenes `owner/repo`, ein Repository, das nicht vorhanden ist, oder ein privates Repository, das Sie nicht sehen können, endet auch in dieser Meldung. Öffnen Sie die Repository-URL in Ihrem Browser, oder führen Sie `git ls-remote <url>` in Ihrem Terminal aus, um zu bestätigen, dass es vorhanden ist und Sie Zugriff haben.

231 

232Wenn das Repository richtig ist, liegt die Ursache bei den Anmeldedaten. Claude Code führt Git mit deaktivierten interaktiven Eingabeaufforderungen aus, daher kann es Sie nicht um ein Passwort, eine Schlüsselpassphrase oder eine Anmeldedaten fragen, wie Ihr Terminal es würde. Wenn Git eine Eingabeaufforderung benötigt, sehen Sie `fatal: Cannot prompt because user interactivity has been disabled` oder `terminal prompts disabled` im ursprünglichen Fehler. Nur Anmeldedaten, die bereits nicht-interaktiv funktionieren, sind erfolgreich:

233 

234* **SSH**: `ssh -T git@<host>` muss ohne Aufforderung für eine Passphrase erfolgreich sein, und der Host muss bereits in `known_hosts` sein

235* **HTTPS**: Ihr Credential Helper muss ein Token für den Host enthalten. Für GitHub führen Sie `gh auth login` und `gh auth setup-git` aus. Für einen anderen Host speichern Sie ein persönliches Zugriffstoken in Ihrem Git-Credential Helper. Testen Sie mit `git ls-remote <url>`

236 

237Sobald `git ls-remote` in Ihrem Terminal ohne Eingabeaufforderung erfolgreich ist, führen Sie das Hinzufügen oder die Aktualisierung erneut aus. Ein erfolgreiches Hinzufügen druckt `Successfully added marketplace: <name>`. Eine erfolgreiche Aktualisierung druckt `Successfully updated marketplace: <name>` aus Ihrer Shell oder `✔ Updated 1 marketplace` in einer Sitzung.

238 

239Um Claude Code zu veranlassen, SSH für GitHub `owner/repo`-Quellen zu überspringen, setzen Sie `CLAUDE_CODE_PLUGIN_PREFER_HTTPS=1`. Ohne sie klont Claude Code diese Quellen über SSH, wenn ein SSH-Schlüssel für `github.com` konfiguriert aussieht, und fällt auf HTTPS zurück, wenn der SSH-Clone fehlschlägt.

240 

241Für das, was Hintergrund-Auto-Updates mit Ihren Anmeldedaten können und nicht können, siehe [Was Hintergrund-Auto-Update mit Anmeldedaten macht](/docs/de/plugins/host-marketplace#what-background-auto-update-does-with-credentials).

242 

243<h3 id="ssh-host-key-is-not-in-your-known-hosts-file">

244 `SSH host key is not in your known_hosts file`

245</h3>

246 

247Sie haben einen Marktplatz über SSH von einem Host hinzugefügt, zu dem Sie sich noch nie verbunden haben, und der Clone ist mit dieser Zeile und einem `ssh -T git@<host>`-Hinweis fehlgeschlagen. Für einen Host, dessen Schlüssel sich geändert hat, lautet die Meldung `SSH host key has changed` mit einem `ssh-keygen -R <host>`-Hinweis statt dessen.

248 

249Claude Code klont mit `StrictHostKeyChecking=yes`, daher weigert es sich, einen Host zu akzeptieren, dessen Schlüssel Sie noch nicht akzeptiert haben, anstatt den Schlüssel automatisch zu akzeptieren. Verbinden Sie sich einmal von Ihrem Terminal aus, um den Fingerabdruck zu akzeptieren, und versuchen Sie es dann erneut:

250 

251```shell theme={null}

252ssh -T git@github.com

253```

254 

255Für ein öffentliches Repository fügen Sie den Marktplatz stattdessen durch seine `https://`-URL hinzu, um SSH ganz zu vermeiden.

256 

257<h3 id="command-git-not-found-or-is-in-an-unsafe-location">

258 `Command 'git' not found or is in an unsafe location`

259</h3>

260 

261Unter Windows haben Sie einen Marktplatz hinzugefügt und Claude Code hat `Failed to clone marketplace repository: Command 'git' not found or is in an unsafe location (current directory)` gemeldet.

262 

263Claude Code sucht nach `git` auf Ihrem `PATH` und weigert sich, einen zu führen, der nur im aktuellen Verzeichnis gefunden wird. Um es zu beheben, installieren Sie Git und versuchen Sie es erneut:

264 

265<Steps>

266 <Step title="Installieren Sie Git für Windows">

267 Installieren Sie Git für Windows, damit `git` auf Ihrem `PATH` ist.

268 </Step>

269 

270 <Step title="Öffnen Sie ein neues Terminal">

271 Öffnen Sie ein neues Terminal, damit der aktualisierte `PATH` angewendet wird.

272 </Step>

273 

274 <Step title="Bestätigen Sie, dass Git ausgeführt wird">

275 Bestätigen Sie, dass `git --version` eine Version druckt.

276 </Step>

277 

278 <Step title="Versuchen Sie das Hinzufügen erneut">

279 Führen Sie den Befehl `marketplace add` erneut aus.

280 </Step>

281</Steps>

282 

283<h3 id="git-clone-timed-out-after-120s">

284 `Git clone timed out after 120s`

285</h3>

286 

287Sie haben einen Marktplatz hinzugefügt oder aktualisiert, und es ist mit `Git clone timed out after 120s` fehlgeschlagen, gefolgt von einem Hinweis zum Setzen von `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS`.

288 

289Das Klonen eines Marktplatzes und das erneute Klonen zum Aktualisieren erhält standardmäßig 120 Sekunden. Für ein großes Repository oder eine langsame Verbindung erhöhen Sie das Limit. Der Wert ist in Millisekunden:

290 

291<Tabs>

292 <Tab title="Bash oder Zsh">

293 ```bash theme={null}

294 export CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS=300000

295 ```

296 </Tab>

297 

298 <Tab title="PowerShell">

299 ```powershell theme={null}

300 $env:CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS = "300000"

301 ```

302 </Tab>

303</Tabs>

304 

305Versuchen Sie es dann in derselben Shell erneut.

306 

307Wenn das Repository ein Monorepo ist, begrenzen Sie den Checkout auf die Verzeichnisse, die Sie mit `claude plugin marketplace add <source> --sparse <paths>` benennen.

308 

309<h3 id="marketplace-updates-keep-failing-offline">

310 Marktplatz-Updates schlagen offline immer fehl

311</h3>

312 

313Sie arbeiten in einer Umgebung, in der der Git-Host des Marktplatzes nicht erreichbar ist, und jede Sitzung wiederholt eine fehlgeschlagene Aktualisierung im Hintergrund. Ihr vorhandener Checkout des Marktplatzes bleibt an Ort und Stelle und der Start wird nicht verzögert.

314 

315Jede Sitzung überprüft Claude Code für einen Marktplatz mit [Auto-Update an](/docs/de/plugins/loading#which-marketplaces-and-plugins-auto-update) den Git-Host des Marktplatzes im Hintergrund auf neue Commits. Wenn diese Überprüfung den Host nicht erreichen kann, versucht sie, den Marktplatz erneut zu klonen, und offline schlägt dieser Clone auch fehl.

316 

317Setzen Sie diese Variable, um den Re-Clone-Versuch zu überspringen und den vorhandenen Checkout zu verwenden, wenn die Überprüfung den Host nicht erreichen kann:

318 

319<Tabs>

320 <Tab title="Bash oder Zsh">

321 ```bash theme={null}

322 export CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE=1

323 ```

324 </Tab>

325 

326 <Tab title="PowerShell">

327 ```powershell theme={null}

328 $env:CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE = "1"

329 ```

330 </Tab>

331</Tabs>

332 

333Mit der gesetzten Variable überspringt Claude Code den Re-Clone nur für einen Checkout, der bereits `.claude-plugin/marketplace.json` enthält. Ein Marktplatz, der nie geklont wurde oder dessen Clone auf halbem Weg stoppte, erhält immer noch den Clone-Versuch, daher fügen Sie ihn einmal online hinzu.

334 

335Für eine vollständig offline-Bereitstellung füllen Sie stattdessen das Plugins-Verzeichnis zur Image-Build-Zeit mit `CLAUDE_CODE_PLUGIN_SEED_DIR` vor, nach [Seed-Container und CI](/docs/de/plugins/org#seed-containers-and-ci).

336 

337<h3 id="marketplace-add-fails-on-a-github-enterprise-server-host">

338 Marktplatz-Hinzufügen schlägt auf einem GitHub Enterprise Server-Host fehl

339</h3>

340 

341Sie haben einen Marktplatz von einer GitHub Enterprise Server (GHES)-URL hinzugefügt und erhielten einen Richtlinienfehler, oder Sie haben ihn von claude.ai hinzugefügt und erhielten einen GitHub-Zugriffsfehler.

342 

343Beide Fälle befinden sich auf der GHES-Seite:

344 

345* [Ein Richtlinienfehler](/docs/de/github-enterprise-server#marketplace-add-fails-with-a-policy-error) bedeutet, dass Ihre Organisation Marktplatzquellen eingeschränkt hat und ein Administrator ein `hostPattern` für den Host hinzufügen muss

346* [Ein GitHub-Zugriffsfehler auf claude.ai](/docs/de/github-enterprise-server#marketplace-add-on-claude-ai-fails-with-a-github-access-error) bedeutet, dass Ihr eigenes GitHub Enterprise-Konto noch nicht verbunden ist

347 

348<h2 id="install-a-plugin">

349 Ein Plugin installieren

350</h2>

351 

352Sie haben einen Marktplatz hinzugefügt und eine Installation ausgeführt, und die Installation hat mit einer Meldung statt mit der Installation von etwas gestoppt. Diese Einträge behandeln diese Meldungen. Sie behandeln auch die zugehörigen Meldungen, die später in der Registerkarte `/plugin` **Errors** oder als leere Registerkarte **Discover** erscheinen, wenn ein Plugin oder sein Marktplatz nicht gefunden, gelesen oder vertraut werden kann.

353 

354<h3 id="plugin-not-found-in-marketplace">

355 `Plugin "<name>" not found in marketplace "<marketplace>"`

356</h3>

357 

358Sie haben `/plugin install <name>@<marketplace>` oder `claude plugin install <name>@<marketplace>` ausgeführt, und der Plugin-Name befindet sich nicht in der Kopie des Katalogs dieses Marktplatzes auf Ihrem Computer.

359 

360`claude plugin install` in Ihrer Shell druckt dieselbe Meldung, wenn Sie den Marktplatz überhaupt nicht hinzugefügt haben. Wenn `claude plugin marketplace update <marketplace>` dann `Marketplace '<marketplace>' not found` antwortet, [fügen Sie den Marktplatz zuerst hinzu](#add-a-marketplace).

361 

362<h4 id="the-message-ends-with-a-refresh-hint">

363 `not found in marketplace` mit einem Aktualisierungshinweis

364</h4>

365 

366Der Hinweis lautet `Your local copy may be out of date — try claude plugin marketplace update <marketplace>` oder `The marketplace couldn't be refreshed (...)`. Claude Code hat den Marktplatz vor der Suche nicht aktualisiert, z. B. wenn Sie offline sind, daher kann Ihre Kopie des Katalogs veraltet sein. Aktualisieren Sie mit dem Namen des Marktplatzes und installieren Sie dann erneut:

367 

368```text theme={null}

369/plugin marketplace update <marketplace>

370```

371 

372`claude plugin marketplace update` druckt `Successfully updated marketplace: <name>`, und `/plugin marketplace update` zeigt `✔ Updated 1 marketplace`. Wenn die wiederholte Installation dieselbe Meldung druckt, überprüfen Sie den Namen wie [`not found in marketplace` ohne Hinweis](#the-message-has-no-hint) beschreibt. [Wenn Claude Code einen Marktplatz vor einer Installation aktualisiert](/docs/de/plugins/loading#when-claude-code-refreshes-a-marketplace-before-an-install) listet die anderen Fälle auf, in denen die Aktualisierung nicht ausgeführt wird.

373 

374<h4 id="the-message-has-no-hint">

375 `not found in marketplace` ohne Hinweis

376</h4>

377 

378Der Name ist das wahrscheinlichste Problem. Öffnen Sie `/plugin`, gehen Sie zu **Discover**, und kopieren Sie den Namen aus der Liste.

379 

380Vor v2.1.232 aktualisierte Claude Code den benannten Marktplatz nur nach dem Lookup-Fehler und nur, wenn Auto-Update dafür aktiviert war.

381 

382<h3 id="plugin-not-found-in-any-marketplace">

383 `Plugin "<name>" not found in any marketplace`

384</h3>

385 

386Sie haben `/plugin install <name>` ohne `@marketplace` ausgeführt, und kein registrierter Marktplatz hat dieses Plugin. `claude plugin install <name>` meldet `Plugin "<name>" not found in any configured marketplace`.

387 

388Ohne einen Marktplatznamen durchsucht `claude plugin install` die Kataloge, die es bereits hat, und aktualisiert sie nicht zuerst, und `/plugin install` aktualisiert nur Marktplätze, die Auto-Update aktiviert haben. Benennen Sie den Marktplatz, und Claude Code aktualisiert ihn vor der Suche nach dem Plugin:

389 

390```text theme={null}

391/plugin install <name>@<marketplace>

392```

393 

394Wenn die Installation funktioniert, sehen Sie `✓ Installed <plugin>.` in einer Sitzung oder `Successfully installed plugin: <plugin>@<marketplace>` von `claude plugin install`.

395 

396Wenn Sie nicht wissen, welcher Marktplatz das Plugin auflistet, führen Sie `/plugin marketplace list` für die Marktplätze aus, die Sie haben, und durchsuchen Sie **Discover** in `/plugin` nach dem Plugin-Namen.

397 

398<h3 id="plugin-is-already-installed-globally">

399 `Plugin '<name>@<marketplace>' is already installed globally`

400</h3>

401 

402Sie haben `/plugin install` für ein Plugin ausgeführt, das bereits im Benutzerbereich oder durch verwaltete Einstellungen installiert ist, und Claude Code hat mit `Use '/plugin' to manage existing plugins.` abgelehnt. Wenn Sie den Plugin-Namen ohne `@<marketplace>` eingegeben haben, lässt die Meldung `globally` weg.

403 

404Das Plugin ist bereits in jedem Projekt verfügbar, daher gibt es nichts hinzuzufügen. Um seinen [Bereich](/docs/de/plugins/install) zu ändern, ihn zu aktivieren oder zu deaktivieren oder ihn zu konfigurieren, öffnen Sie `/plugin` und gehen Sie zu **Installed**.

405 

406Ein Plugin, das nur im Projekt- oder lokalen Bereich installiert ist, löst diese Meldung nicht aus. Claude Code lässt Sie es auch im Benutzerbereich installieren, daher ist es in anderen Projekten verfügbar.

407 

408`claude plugin install` in Ihrer Shell druckt eine andere Meldung. Für ein Plugin, das bereits im Zielbereich installiert ist, druckt es `Plugin "<name>@<marketplace>" is already installed (scope: user)` und beendet mit 0. Wenn sein Cache-Verzeichnis fehlt, lädt derselbe Befehl es erneut herunter.

409 

410<h3 id="this-plugin-uses-a-source-type-your-claude-code-version-does-not-suppo">

411 `This plugin uses a source type your Claude Code version does not support`

412</h3>

413 

414Sie haben ein Plugin installiert, dessen Marktplatz-Eintrag einen Quellentyp verwendet, den diese Version von Claude Code nicht abrufen kann, und Claude Code hat mit dieser Meldung und `Update Claude Code and try again.` gestoppt.

415 

416Aktualisieren Sie Claude Code, und versuchen Sie dann die Installation erneut. Quellentypen befinden sich in der [Marktplatz-Referenz](/docs/de/plugins/marketplace-reference).

417 

418<h3 id="plugin-archive-integrity-check-failed">

419 `Plugin archive integrity check failed`

420</h3>

421 

422Sie haben ein Plugin installiert, das als ZIP-Archiv verteilt wird, und Claude Code hat es mit dieser Zeile und `The archive was not installed.` abgelehnt. Der Marktplatz-Eintrag des Plugins verwendet eine [`archive`-Quelle](/docs/de/plugins/marketplace-reference) mit einem `sha256`-Pin, und der Digest der heruntergeladenen Datei stimmt nicht mit dem Pin überein.

423 

424Die vollständige Meldung sieht so aus:

425 

426```text theme={null}

427Plugin archive integrity check failed for https://artifacts.example.com/claude-plugins/my-plugin.zip: expected sha256 6bfa50e3d2e00c052b46abe51fff89346ac803e45771f76dcf6df1ab74cca5e1, got ac52220c0914ef8ca6a602e4a7362f88d30fb021110f72a6d15b68c3fe7df2b7. The archive was not installed. Verify the sha256 in the marketplace entry, or that the URL serves the intended file.

428```

429 

430Die Lösung unterscheidet sich für den Herausgeber und den Installer:

431 

432* **Sie veröffentlichen das Plugin**: berechnen Sie den Digest der genauen Datei, die die URL bereitstellt, neu und aktualisieren Sie den `sha256` im Marktplatz-Eintrag. Verwenden Sie `shasum -a 256 my-plugin.zip` oder `Get-FileHash -Algorithm SHA256 my-plugin.zip` in PowerShell

433* **Sie installieren das Plugin**: führen Sie `/plugin marketplace update <name>` in einer Sitzung aus, um den Katalog zu aktualisieren, falls der Eintrag korrigiert wurde, und versuchen Sie dann die Installation erneut. Wenn die Digests nach der Aktualisierung immer noch nicht übereinstimmen, fragen Sie den Marktplatz-Besitzer, welche Datei er vor der Installation gepinnt hat

434 

435<h3 id="marketplace-is-registered-from-an-untrusted-source">

436 `Marketplace "<name>" is registered from an untrusted source`

437</h3>

438 

439Ein Marktplatz, den Sie früher hinzugefügt haben, hat das Laden gestoppt, und so auch seine Plugins. Diese Zeile erscheint in der Registerkarte `/plugin` **Errors** oder bei der nächsten Aktualisierung.

440 

441Der Marktplatz ist unter einem Namen registriert, der [für offizielle Anthropic-Marktplätze reserviert ist](/docs/de/plugins/marketplace-reference), aber seine registrierte Quelle ist kein `anthropics`-GitHub-Repository. Reservierte Namen werden jedes Mal neu überprüft, wenn ein Marktplatz geladen oder aktualisiert wird, daher laden der Marktplatz und die von ihm installierten Plugins nicht mehr.

442 

443Die vollständige Meldung benennt den reservierten Namen und die Lösung:

444 

445```text theme={null}

446Marketplace "claude-community" is registered from an untrusted source: The name 'claude-community' is reserved for official Anthropic marketplaces. Only repositories from 'github.com/anthropics/' can use this name. To fix it, remove the marketplace and re-add it from the official source.

447```

448 

449Die Lösung unterscheidet sich für Benutzer und Herausgeber:

450 

451* **Sie verwenden den Marktplatz**: führen Sie in Ihrer Shell `claude plugin marketplace remove <name>` aus, fügen Sie dann den Marktplatz erneut aus dem offiziellen `github.com/anthropics`-Repository hinzu

452* **Sie veröffentlichen einen Drittanbieter-Marktplatz, der den Namen vor seiner Reservierung verwendet hat**: benennen Sie ihn um und bitten Sie Benutzer, ihn von Ihrer Quelle erneut hinzuzufügen

453 

454Vor v2.1.205 überprüfte Claude Code den Namen nur, wenn Sie den Marktplatz hinzufügten, daher behielt ein Eintrag, der vor seiner Reservierung registriert wurde, das Laden bei.

455 

456<h3 id="plugin-has-a-corrupt-manifest-file-or-has-an-invalid-manifest-file">

457 `Plugin <name> has a corrupt manifest file` oder `has an invalid manifest file`

458</h3>

459 

460Claude Code hat das Plugin abgerufen, konnte dann aber seine `.claude-plugin/plugin.json` nicht lesen. In der Shell kann der `<name>` in dieser Zeile ein temporärer Verzeichnisname sein; das Präfix `Failed to install plugin "<name>@<marketplace>"` trägt den echten Namen des Plugins. Die Formulierung sagt, welche Überprüfung fehlgeschlagen ist:

461 

462* **`corrupt manifest file`, gefolgt von `JSON parse error:`**: die Datei ist kein gültiges JSON

463* **`invalid manifest file`, gefolgt von `Validation errors:`**: die Datei wird geparst, schlägt aber das Schema fehl, wie `name: Invalid input` für ein fehlendes erforderliches Feld

464 

465`claude plugin install` meldet entweder als `Failed to install plugin "<name>@<marketplace>":` und beendet mit Code 1.

466 

467Der Autor des Plugins muss die Datei beheben, und das Plugin kann nicht installiert werden, bis dies geschieht:

468 

469* **Wenn das Sie sind**: führen Sie `claude plugin validate <plugin-directory>` in Ihrer Shell aus, um denselben Fehler mit dem fehlerhaften Pfad zu sehen, und beheben Sie dann die Datei

470* **Wenn das nicht Sie sind**: melden Sie die Meldung dem Marktplatz-Besitzer

471 

472<h3 id="plugin-directory-not-found-at-path">

473 `Plugin directory not found at path: <path>`

474</h3>

475 

476Die Registerkarte **Errors** in `/plugin` zeigt dies für ein aktiviertes Plugin, das sein Marktplatz durch einen relativen Pfad auflistet, wie `./plugins/my-plugin`, wenn kein Verzeichnis an diesem Pfad im Marktplatz vorhanden ist. Wenn Sie den Marktplatz verwalten, korrigieren Sie den `source`-Pfad des Eintrags oder stellen Sie den Ordner wieder her. Andernfalls melden Sie die Meldung dem Marktplatz-Besitzer.

477 

478`Marketplace directory not found at path: <path>` bedeutet stattdessen, dass das eigene Verzeichnis des Marktplatzes fehlt. Für einen Marktplatz, den Sie von einem lokalen Pfad hinzugefügt haben, wurde dieses Verzeichnis verschoben oder gelöscht. Stellen Sie es wieder her, oder entfernen Sie den Marktplatz und fügen Sie ihn von seinem neuen Ort erneut hinzu.

479 

480<h3 id="no-plugins-available-or-no-marketplaces-configured">

481 `No plugins available` oder `No marketplaces configured`

482</h3>

483 

484Sie haben `/plugin` geöffnet und die Registerkarte **Discover** ist leer, oder `claude plugin marketplace list` hat `No marketplaces configured` gedruckt.

485 

486Kein Marktplatz ist registriert, daher gibt es keinen Katalog zum Anzeigen. Fügen Sie in einer Sitzung den offiziellen Marktplatz `anthropics/claude-plugins-official` hinzu:

487 

488```text theme={null}

489/plugin marketplace add anthropics/claude-plugins-official

490```

491 

492Claude Code druckt `Successfully added marketplace: claude-plugins-official`, und **Discover** listet seine Plugins auf. Die Seite [Anthropic-Marktplätze](/docs/de/plugins/anthropic-marketplaces) listet die anderen Marktplätze auf, die Sie hinzufügen können.

493 

494<h3 id="marketplace-is-already-added-from-a-different-source">

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

496</h3>

497 

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

499 

500Die vollständige Meldung sieht so aus:

501 

502```text theme={null}

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

504```

505 

506Wählen Sie, welche Quelle Sie möchten:

507 

508* **Der Marktplatz, den Sie bereits hinzugefügt haben**: installieren Sie von ihm nach Name mit `/plugin install <plugin>@<name>`

509* **Die neue Quelle**: führen Sie `/plugin marketplace remove <name>` aus, und versuchen Sie dann die Installation erneut

510 

511<h3 id="cannot-add-marketplace-its-network-source-differs">

512 `Cannot add marketplace "<name>": its network source differs from the one declared for it in settings`

513</h3>

514 

515Sie haben `marketplace add` ausgeführt, und der Katalog an dieser Quelle hat denselben Namen wie ein Marktplatz, den eine Einstellungsdatei bereits unter [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces) mit einer anderen Quelle deklariert. Claude Code weigert das Hinzufügen und registriert nichts.

516 

517Die Meldung endet mit der Lösung: Die Quelle muss mit der übereinstimmen, die die Einstellungen für diesen Namen deklarieren, oder Sie ändern die Deklaration. Vergleichen Sie die Quelle, die Sie übergeben haben, mit dem `extraKnownMarketplaces`-Eintrag für diesen Namen, einschließlich seines `ref`, `path` und `headers`, und führen Sie dann eines dieser aus:

518 

519* **Verwenden Sie die deklarierte Quelle**: fügen Sie den Marktplatz von der Quelle hinzu, die der Einstellungseintrag benennt

520* **Verwenden Sie die neue Quelle**: bearbeiten Sie oder entfernen Sie den `extraKnownMarketplaces`-Eintrag, und fügen Sie den Marktplatz erneut hinzu. Wenn verwaltete Einstellungen ihn deklarieren, fragen Sie Ihren Administrator

521 

522<h3 id="failed-to-install-from-the-plugin-menu">

523 `Failed to install: <plugin> (<reason>)`

524</h3>

525 

526Sie haben Plugins zum Installieren im Menü `/plugin` ausgewählt, keines von ihnen wurde installiert, und das Menü hat sich mit dieser Zusammenfassung dessen geschlossen, was fehlgeschlagen ist.

527 

528Einige Gründe, wie die Ausgabe von Git nach einem fehlgeschlagenen Clone, zeigen nur ihre erste Zeile. Wenn ein solcher Grund gekürzt wurde, endet die Zusammenfassung mit `Installing a plugin from its details (Enter) in /plugin shows its full error.`

529 

530Was zu tun ist, hängt davon ab, ob die Zusammenfassung den Grund gekürzt hat:

531 

532* Beheben Sie, was der Grund in Klammern benennt

533* Wenn der Grund gekürzt wurde, führen Sie `/plugin` aus, wählen Sie das Plugin auf der Registerkarte **Discover** aus, und drücken Sie **Enter**, um es von seinen Details aus zu installieren. Wenn die Installation dort fehlschlägt, zeigt die Detailansicht den ganzen Fehler

534 

535<h3 id="could-not-move-the-new-copy-of-this-plugin-version">

536 `Could not move the new copy of this plugin version into <path>`

537</h3>

538 

539Wenn Sie ein Plugin installieren, lädt Claude Code eine frische Kopie seiner Dateien herunter und verschiebt sie in den Ordner dieser Version im [Plugin-Cache](/docs/de/plugins/loading#find-plugins-on-disk). Diese Meldung bedeutet, dass die Verschiebung fehlgeschlagen ist, normalerweise weil ein anderes Programm den Ordner verwendete, während die Installation ausgeführt wurde. Der Dateisystem-Code erscheint in Klammern:

540 

541```text theme={null}

542Could not move the new copy of this plugin version into /home/user/.claude/plugins/cache/acme-tools/formatter/1.2.0: the new copy or the version folder stayed busy while the install ran (ENOTEMPTY) — usually a scanner still reading the freshly downloaded files, another program using that folder, or another process re-creating it. The previously installed copy was moved back. Run the install again once other Claude Code sessions or programs using that folder have finished.

543```

544 

545Die Meldung sagt, was mit der Kopie geschah, die vor der Installation installiert wurde, was Ihnen sagt, ob das Plugin immer noch funktioniert:

546 

547* `The previously installed copy was moved back`: die Version, die Sie hatten, ist immer noch installiert

548* `had to be removed first`, `was not moved back` oder `could not be moved back`: diese Plugin-Version ist nicht installiert, bis eine Installation erfolgreich ist

549* Kein solcher Satz: es gab keine frühere Kopie, daher ist die Version noch nicht installiert

550 

551Unter Windows, wenn ein anderes Programm die installierte Kopie selbst hält, sagt die Meldung stattdessen, dass diese Kopie `could not be replaced` ist und dass `It was not replaced and the new copy was discarded`, daher ist die Version, die Sie hatten, immer noch installiert.

552 

553Eine `Left on disk`-Liste benennt beiseite gelegte Ordner im Cache. Eine spätere Installation dieser Version oder eine Plugin-Cache-Bereinigung entfernt sie, daher müssen Sie sie nicht löschen.

554 

555Um die Installation zu beheben:

556 

557* Schließen Sie andere Claude Code-Sitzungen, Editoren und Terminals, die den Plugin-Ordner unter `~/.claude/plugins/cache` verwenden, und führen Sie die Installation erneut aus

558* Wenn die Meldung sagt, die Berechtigungen des Plugin-Cache-Ordners zu überprüfen, stellen Sie Ihre Schreibberechtigung auf dem Ordner wieder her, den sie benennt, und geben Sie Speicherplatz frei, und führen Sie die Installation erneut aus

559 

560<h3 id="dependency-errors">

561 Abhängigkeitsfehler

562</h3>

563 

564Ein Plugin, das Abhängigkeiten deklariert, kann nicht installiert werden oder installiert und bleibt deaktiviert, wenn eine Abhängigkeit nicht erfüllt werden kann. Die Meldung erreicht Sie zur Installationszeit oder zur Ladezeit:

565 

566* **Während der Installation**: die Ablehnung kommt als Fehlermeldung der Installation zurück

567* **Wenn das Plugin geladen wird**: das Problem erscheint in `claude plugin list` und der Registerkarte `/plugin` **Errors**, und Claude Code hält das betroffene Plugin deaktiviert, bis Sie es beheben

568 

569Die Tabelle listet jede Meldung und ihre Lösung auf. Um Abhängigkeiten als Autor zu deklarieren, siehe [Plugin-Abhängigkeiten](/docs/de/plugins/dependencies).

570 

571| Meldung | Bedeutung | Wie zu beheben |

572| :------------------------------------------------------------------------------------------------ | :----------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

573| `Dependency "<dep>" is not installed` | Eine deklarierte Abhängigkeit ist nicht installiert. | Installieren Sie sie in Ihrer Shell mit `claude plugin install <dep>@<marketplace>`, oder deinstallieren Sie das Plugin. Wenn der Marktplatz der Abhängigkeit noch nicht registriert ist, fügen Sie ihn hinzu und führen Sie `/reload-plugins` in Ihrer Sitzung aus, was die fehlenden Abhängigkeiten installiert, die es auflösen kann. |

574| `Dependency "<dep>" is disabled` | Die Abhängigkeit ist installiert, aber ausgeschaltet. | Aktivieren Sie die Abhängigkeit, oder deinstallieren Sie das Plugin, das sie benötigt. |

575| `Requires "<dep>" <range>, installed <version>` | Die Version der installierten Abhängigkeit liegt außerhalb des deklarierten Bereichs des Plugins. | Aktualisieren Sie die Abhängigkeit auf eine Version im Bereich, oder deinstallieren Sie das Plugin. |

576| `<Plugin or Dependency> "<name>" has conflicting version requirements` | Keine Version erfüllt jeden Bereich, der sie pinnt. Die Meldung listet die Bereiche auf. | Deinstallieren oder aktualisieren Sie eines der in Konflikt stehenden Plugins, oder bitten Sie den Upstream-Autor, seine Einschränkung zu lockern. |

577| `... has version requirements too complex to intersect` oder `has an invalid version requirement` | Ein Bereich ist kein gültiges Semver, oder die kombinierten Bereiche können nicht geschnitten werden. | Beheben Sie den ungültigen Bereich oder vereinfachen Sie lange `\|\|`-Ketten. |

578| `... has no git tag satisfying <range>` | Das Repository der Abhängigkeit hat kein `<name>--v*`-Tag im Bereich. | Überprüfen Sie, dass der Upstream-Releases mit dieser Konvention taggt, oder lockern Sie den Bereich. |

579| `Dependency "<dep>" (required by <plugin>) is in <marketplace>, which is not in the allowlist` | Die Abhängigkeit befindet sich in einem anderen Marktplatz, und die marktplatzübergreifende Auflösung ist standardmäßig deaktiviert. | Installieren Sie die Abhängigkeit selbst im gleichen Bereich, in Ihrer Shell mit `claude plugin install <dep>@<marketplace>` plus dem `--scope`, in dem Sie das Plugin installieren, und versuchen Sie es dann erneut. |

580 

581Um diese programmgesteuert zu sehen, führen Sie `claude plugin list --json` in Ihrer Shell aus. Plugins mit Problemen tragen ein `errors`-Feld mit den Meldungen und ein `errorDetails`-Feld mit einem `type` für jede: die ersten zwei Zeilen sind `dependency-unsatisfied` und die dritte ist `dependency-version-unsatisfied`.

582 

583<h2 id="plugin-installed-but-not-working">

584 Plugin installiert, aber funktioniert nicht

585</h2>

586 

587Die Installation war erfolgreich, aber die Skills, Hooks oder Server des Plugins tun nichts. Beginnen Sie mit [Plugin wird nicht angezeigt oder seine Skills werden nicht angezeigt](#plugin-doesnt-appear-or-its-skills-dont-show-up), was Ihnen sagt, wo Claude Code das meldet, was es geladen hat, und passen Sie dann die Meldung an.

588 

589<h3 id="plugin-doesnt-appear-or-its-skills-dont-show-up">

590 Plugin wird nicht angezeigt oder seine Skills werden nicht angezeigt

591</h3>

592 

593Sie haben ein Plugin installiert und `/` eingegeben, um seine Skills zu erwarten, oder Claude gebeten, es zu verwenden, und nichts ist passiert.

594 

595Überprüfen Sie den Status des Plugins, bevor Sie etwas ändern:

596 

597<Steps>

598 <Step title="Bestätigen Sie, dass das Plugin installiert und aktiviert ist">

599 Führen Sie `/plugin` aus und öffnen Sie **Installed**. Bestätigen Sie, dass das Plugin aufgelistet und aktiviert ist. `claude plugin list` in Ihrer Shell druckt dieselbe Liste mit der Version, dem Bereich und dem `Status: ✔ enabled` jedes Plugins.

600 </Step>

601 

602 <Step title="Lesen Sie die Registerkarte Errors">

603 Öffnen Sie die Registerkarte **Errors** im gleichen Panel. Jeder Eintrag paart eine Meldung mit einer Anleitung. Die meisten Meldungen im Rest dieses Abschnitts stammen aus dieser Registerkarte.

604 </Step>

605 

606 <Step title="Laden Sie erneut, wenn Sie während dieser Sitzung installiert haben">

607 Wenn das Plugin installiert und fehlerfrei ist, aber Sie es während dieser Sitzung installiert haben, führen Sie `/reload-plugins` aus. Es druckt `Reloaded:` mit Zählungen von Plugins, Skills, Agents, Hooks und Servern. Wenn etwas fehlgeschlagen ist, fügt es `N errors during load. Run /plugin for details.` hinzu.

608 </Step>

609</Steps>

610 

611Wenn das Plugin ohne Fehler geladen wird und seine Skills immer noch nicht angezeigt werden, unterscheidet sich der nächste Schritt für Ihr eigenes Plugin und für das eines anderen:

612 

613* **Ein Plugin, das Sie erstellen**: siehe [Plugin lädt, aber seine Skills fehlen](#plugin-loads-but-its-skills-are-missing)

614* **Ein Plugin, das jemand anderes veröffentlicht hat**: öffnen Sie **Installed** in `/plugin` und öffnen Sie den Detailbereich des Plugins, der auflistet, was das Plugin enthält. Ein Plugin, das dort keine Skills auflistet, hat keine anzubieten, wenn Sie `/` eingeben

615 

616<h3 id="run-reload-plugins-to-activate">

617 `Run /reload-plugins to activate.`

618</h3>

619 

620Die Installationszusammenfassung in `/plugin` endete mit `Run /reload-plugins to activate.` statt `Plugin is now active.`

621 

622Claude Code hat das Plugin während der Installation nicht aktiviert, entweder weil die Aktivierung den [Prompt-Cache ungültig machen würde](/docs/de/prompt-caching#enabling-or-disabling-a-plugin) oder weil der Aktivierungsversuch fehlgeschlagen ist.

623 

624Sie müssen den Befehl nicht eingeben. Das Panel schließt sich und Claude Code führt `/reload-plugins` für Sie aus, oder reiht es in die Warteschlange, bis die Antwort, die gerade gestreamt wird, endet.

625 

626Lesen Sie, was dieses Reload druckt:

627 

628* **`Reloaded:` mit Zählungen von Plugins, Skills, Agents, Hooks und Servern**: das Plugin ist jetzt aktiv. Wenn etwas nicht geladen werden konnte, fügt die Zeile `N errors during load. Run /plugin for details.` hinzu.

629* **`This reload changes MCP tools (...) — your next message will re-read the whole conversation instead of using the cache. Run /reload-plugins --force to apply.`**: das Reload würde einen Plugin-MCP-Server hinzufügen oder entfernen, oder das `LSP`-Tool, und Ihren Prompt-Cache ungültig machen. Für den LSP-Fall beginnt die Zeile mit `This reload adds the LSP tool` oder `This reload removes the LSP tool`. Führen Sie es mit `--force` aus, um das Plugin zu aktivieren, oder starten Sie eine neue Sitzung

630 

631Vor v2.1.268 blieb eine Installation, die während der Installation nicht aktiviert wurde, ausstehend, bis Sie `/reload-plugins` selbst ausgeführt haben.

632 

633Vor v2.1.246 umfasste die Skills-Zählung in dieser Zusammenfassung nur die `commands/`-Einträge eines Plugins, daher konnte ein Reload die `SKILL.md`-Skills eines Plugins laden und immer noch `0 skills` melden.

634 

635<h3 id="plugin-not-cached-at">

636 `Plugin "<name>" not cached at <path>`

637</h3>

638 

639Die Registerkarte **Errors** zeigt diese Zeile mit der Anleitung `Run /plugin to refresh the plugin cache`. Claude Code hat einen Installationsdatensatz für das Plugin, aber das Verzeichnis, auf das der Datensatz zeigt, fehlt, zum Beispiel nachdem Sie den Cache gelöscht haben.

640 

641Installieren Sie das Plugin erneut von Ihrer Shell. `claude plugin install <name>@<marketplace>` lädt ein Plugin erneut herunter, dessen Installationsverzeichnis fehlt, obwohl sein Datensatz vorhanden ist:

642 

643```shell theme={null}

644claude plugin install <name>@<marketplace>

645```

646 

647Führen Sie dann `/reload-plugins` in Ihrer Sitzung aus. Der Eintrag in der Registerkarte **Errors** verschwindet und das Plugin ist wieder unter **Installed**.

648 

649<h3 id="a-plugin-you-disabled-still-loads">

650 `Disabled in ~/.claude/settings.json but still loads`

651</h3>

652 

653Sie haben ein Plugin in `~/.claude/settings.json` auf `false` gesetzt, und seine Zeile in `claude plugin list` oder `/plugin` zeigt diese Meldung gefolgt von der Quelle, die es aktiviert, wie `— project settings enable it, which overrides your user setting`. Ein `true` in dieser höheren Prioritätsquelle überschreibt Ihre Benutzereinstellung.

654 

655Um sich von einem projektaktivierten Plugin auf Ihrem Computer abzumelden, setzen Sie die ID in `.claude/settings.local.json` auf `false`, die eine höhere Priorität als die Projektdatei hat. Für die anderen Quellen, die die Meldung benennen kann, siehe [Deaktiviert in Benutzereinstellungen, aber lädt immer noch](/docs/de/plugins/loading#disabled-in-user-settings-but-still-loads).

656 

657Wenn `claude plugin list` das Plugin stattdessen als `required by your org` markiert, ist keine Einstellungsdatei beteiligt: Ihre Organisation markiert dieses synchronisierte Plugin auf claude.ai als erforderlich, und es lädt, auch wenn Sie es früher deaktiviert haben. Siehe [Plugins, die von claude.ai synchronisiert werden](/docs/de/plugins/loading#synced-plugins).

658 

659<h3 id="plugin-is-enabled-in-project-settings-but-isnt-installed-here">

660 `Plugin "<name>" is enabled in project settings but isn't installed here`

661</h3>

662 

663Die Registerkarte **Errors** zeigt diese Zeile für ein Plugin, das die `.claude/settings.json` Ihres Projekts aktiviert, mit der Anleitung `Run claude plugin install <name>@<marketplace> --scope project to install it for this project`.

664 

665Die Einstellungen eines Repositories können ein Plugin für jeden aktivieren, der es öffnet, aber sie installieren es nicht. Wenn das Plugin aus einer externen Quelle wie einem GitHub-Repository oder einem npm-Paket stammt, lädt Claude Code es nicht herunter, bis Sie es selbst installieren. Führen Sie den Befehl aus der Anleitung in Ihrer Shell aus, und laden Sie dann erneut:

666 

667```shell theme={null}

668claude plugin install <name>@<marketplace> --scope project

669```

670 

671Nachdem Sie `/reload-plugins` in Ihrer Sitzung ausgeführt haben, ist der Eintrag in der Registerkarte **Errors** weg und das Plugin ist unter **Installed** aufgelistet.

672 

673Wenn Ihre Organisation Plugins für Sie vorinstalliert, tut sie dies stattdessen durch verwaltete Einstellungen. Siehe [Plugins vorinstallieren und erforderlich machen](/docs/de/plugins/org#pre-install-and-require-plugins).

674 

675<h3 id="failed-to-load-hooks-from-and-hooks-that-dont-fire">

676 `Failed to load hooks from <path>` und Hooks, die nicht ausgelöst werden

677</h3>

678 

679Die Hooks eines Plugins werden nicht ausgeführt. Entweder zeigt die Registerkarte **Errors** einen Ladefehler dafür, die Hooks laden und Sie sehen `<Event> hook error`-Hinweise im Transkript, oder ein Hook lädt ohne Fehler und wird nie ausgelöst.

680 

681<h4 id="hooks-fail-to-load">

682 Hooks können nicht geladen werden

683</h4>

684 

685Die Registerkarte **Errors** zeigt eine dieser Meldungen:

686 

687* **`Failed to load hooks from <path>: <reason>`**: `hooks/hooks.json` ist kein gültiges JSON oder schlägt das Hooks-Schema fehl. Der Grund benennt den Parse- oder Validierungsfehler. Beheben Sie die Datei. Um ein JSON-Syntaxproblem in `hooks/hooks.json` zu fangen, bevor Sie das Plugin veröffentlichen, führen Sie `claude plugin validate <plugin-directory>` in Ihrer Shell aus

688* **`hooks path not found: <path>`**: das Feld `hooks` des Manifests benennt eine Datei, die nicht an diesem Pfad relativ zum Plugin-Root vorhanden ist. Beheben Sie den Pfad oder fügen Sie die Datei hinzu

689 

690<h4 id="hook-error-notices-in-the-transcript">

691 `hook error`-Hinweise im Transkript

692</h4>

693 

694Ein Hinweis der Form `... hook error: Failed with non-blocking status code: <stderr>` bedeutet, dass der Hook ausgeführt wurde und sein Befehl fehlgeschlagen ist. Beispielsweise bedeutet `Stop hook error: Failed with non-blocking status code: /bin/sh: node: command not found`, dass die Shell, die Claude Code erzeugt hat, `node` nicht finden konnte. Installieren Sie es, oder stellen Sie sicher, dass es sich auf dem `PATH` des Terminals befindet, von dem Sie `claude` starten.

695 

696Für jeden anderen Fehler führen Sie den Befehl des Hooks selbst aus dem Plugin-Verzeichnis aus, um die vollständige Ausgabe zu sehen, oder erfassen Sie den vollständigen stderr mit [Debug-Protokollierung](/docs/de/hooks#debug-hooks).

697 

698<h4 id="hook-loads-but-never-fires">

699 Hook lädt, aber wird nie ausgelöst

700</h4>

701 

702Wenn ein Hook ohne Fehler geladen wird, aber nie ausgelöst wird, überprüfen Sie seine Definition und beobachten Sie dann seine Ausführung:

703 

704<Steps>

705 <Step title="Überprüfen Sie den Ereignisnamen">

706 Ereignisnamen sind Groß-/Kleinschreibung-empfindlich, daher bestätigen Sie, dass Ihrer genau übereinstimmt, zum Beispiel `PostToolUse`.

707 </Step>

708 

709 <Step title="Überprüfen Sie den Matcher">

710 Bestätigen Sie, dass der `matcher` des Hooks dem Tool-Namen entspricht.

711 </Step>

712 

713 <Step title="Lösen Sie das Ereignis absichtlich aus">

714 Für einen `PostToolUse`-Hook bitten Sie Claude, eine Datei zu bearbeiten.

715 </Step>

716 

717 <Step title="Lesen Sie das Debug-Protokoll">

718 Öffnen Sie das [Debug-Protokoll](/docs/de/hooks#debug-hooks), das aufzeichnet, welche Hooks übereinstimmten. Ein Hook, der ausgeführt wurde, erscheint dort mit seinem Exit-Code.

719 </Step>

720</Steps>

721 

722<h3 id="invalid-mcp-server-config-for-and-mcp-servers-that-dont-start">

723 `Invalid MCP server config for "<server>"` und MCP-Server, die nicht starten

724</h3>

725 

726Ein Plugin bündelt einen MCP-Server, und die Registerkarte **Errors** zeigt `Invalid MCP server config for "<server>": <error>`, oder der Server ist aufgelistet, aber `/mcp` zeigt ihn nie verbunden.

727 

728<h4 id="invalid-mcp-server-config-for-server-error">

729 `Invalid MCP server config for "<server>": <error>`

730</h4>

731 

732Die Konfiguration des Servers besteht die Schema-Überprüfung, aber Claude Code kann sie für diese Sitzung nicht auflösen. Der Text nach dem Doppelpunkt benennt die Ursache und entscheidet die Lösung:

733 

734* **`Missing environment variables: <names>`**: setzen Sie diese Variablen in der Shell, von der Sie Claude Code starten, und starten Sie dann eine neue Sitzung

735* **`URL is unset or invalid`**: eine `${user_config.*}`-Option, die die URL verwendet, ist nicht gesetzt. Führen Sie `/plugin configure <plugin>` aus, um sie zu setzen

736* **`has an invalid MCP url`** oder **`headersHelper for MCP server '<server>' references ${user_config.*}`**: die Konfiguration des Plugins selbst ist schuld. Beheben Sie die `url` oder `headersHelper` in der MCP-Konfiguration Ihres Plugins, oder melden Sie es dem Autor des Plugins, wenn das Plugin nicht Ihres ist. Der `headersHelper`-Fall hat seinen eigenen Eintrag unter [Plugin-Befehl referenziert user\_config](/docs/de/errors#plugin-command-references-user-config)

737 

738<h4 id="server-is-configured-but-never-connects">

739 Server ist konfiguriert, verbindet sich aber nie

740</h4>

741 

742Führen Sie `/mcp` aus, um den Status des Servers zu sehen. Wenn der Server gesund ist, listet `/mcp` ihn als verbunden auf.

743 

744Um den Fehler zu lesen, den der Server beim Starten gedruckt hat, führen Sie `claude --debug` aus und öffnen Sie das Protokoll unter `~/.claude/debug/<session-id>.txt`. Das Flag `--debug` druckt nicht zum Terminal.

745 

746Ein Server-Eintrag in `.mcp.json`, der das Schema nicht besteht, erscheint nicht in der Registerkarte **Errors**. Claude Code löscht diesen Server und zeichnet `Invalid MCP server config for <server> in <path>` nur in diesem Debug-Protokoll auf. Um den Eintrag zu finden, ohne das Plugin zu laden, führen Sie `claude plugin validate` in Ihrer Shell im Plugin-Verzeichnis aus, das es als Fehler meldet.

747 

748Vor v2.1.281 überprüfte `claude plugin validate` nicht `.mcp.json`.

749 

750<h4 id="server-works-with-plugin-dir-but-fails-after-install">

751 Server funktioniert mit `--plugin-dir`, schlägt aber nach der Installation fehl

752</h4>

753 

754Sie sind der Autor des Plugins, und der Server startet, wenn Sie das Plugin aus seinem Quellverzeichnis mit `--plugin-dir` laden, schlägt aber fehl, sobald das Plugin installiert ist.

755 

756Claude Code kopiert ein installiertes Plugin in seinen Cache, daher bricht ein Pfad, der nur aus dem Quellverzeichnis funktioniert. Schreiben Sie Pfade im Plugin mit `${CLAUDE_PLUGIN_ROOT}`.

757 

758Für Pfade, die außerhalb des Plugin-Verzeichnisses reichen, siehe [Dateien, die das Plugin außerhalb seines Verzeichnisses referenziert, werden nicht gefunden](#files-the-plugin-references-outside-its-directory-arent-found).

759 

760<h3 id="language-server-doesnt-start">

761 Sprachserver startet nicht, verwendet zu viel Speicher oder meldet falsche Diagnosen

762</h3>

763 

764Sie haben ein [Code-Intelligence-Plugin](/docs/de/plugins/code-intelligence) installiert und Claude sieht keine Diagnosen, oder der Sprachserver verwendet zu viel Speicher oder meldet Fehler, die nicht real sind.

765 

766<h4 id="language-server-doesn’t-start">

767 Sprachserver startet nicht

768</h4>

769 

770Das Plugin verbindet sich mit einem Sprachserver-Binär, das Sie separat installieren, und Claude Code erzeugt es nach Befehlsname von Ihrem `PATH`.

771 

772Die Registerkarte `/plugin` **Errors** zeigt den Fehler mit seinem Grund, wie `Executable not found in $PATH: "<binary>"`, und `claude --debug` protokolliert ihn als `LSP server <name> failed to start: <reason>`.

773 

774Installieren Sie das Binär und bestätigen Sie, dass es sich auf dem `PATH` des Terminals befindet, von dem Sie `claude` starten, zum Beispiel mit `which typescript-language-server`. Starten Sie dann eine neue Sitzung.

775 

776<h4 id="language-server-uses-too-much-memory">

777 Sprachserver verwendet zu viel Speicher

778</h4>

779 

780Sprachserver wie `rust-analyzer` und `pyright` indizieren das ganze Projekt. Deaktivieren Sie das Plugin mit `/plugin disable <plugin>` in einer Sitzung und verlassen Sie sich stattdessen auf Claudes integrierte Such-Tools.

781 

782<h4 id="false-positive-diagnostics-in-a-monorepo">

783 Falsch-positive Diagnosen in einem Monorepo

784</h4>

785 

786Ein Sprachserver, der nicht für den Arbeitsbereich konfiguriert ist, kann ungelöste Importe für interne Pakete melden. Es gibt nichts auf der Claude Code-Seite zu beheben, und die Diagnosen hindern Claude nicht daran, Code zu bearbeiten.

787 

788<h2 id="build-a-plugin">

789 Ein Plugin erstellen

790</h2>

791 

792Sie entwickeln ein Plugin und laden es mit `--plugin-dir` oder installieren es von einem lokalen Marktplatz. Diese Einträge behandeln die Fehler, auf die Sie bei der Entwicklung eines Plugins stoßen. Für die Überprüfungen, die nach jeder Änderung ausgeführt werden, siehe [Testen und Debuggen](/docs/de/plugins/create#test-and-debug).

793 

794Zwei Fehler, die auch die Benutzer eines Plugins erreichen, haben ihre Einträge unter [Plugin installiert, aber funktioniert nicht](#plugin-installed-but-not-working):

795 

796* **Ein Hook, der nicht ausgelöst wird**: siehe [Hooks, die nicht ausgelöst werden](#failed-to-load-hooks-from-and-hooks-that-dont-fire)

797* **Ein MCP-Server, der nicht startet**: siehe [MCP-Server, die nicht starten](#invalid-mcp-server-config-for-and-mcp-servers-that-dont-start)

798 

799<h3 id="commands-path-not-found">

800 `commands path not found: <path>`

801</h3>

802 

803Die Registerkarte **Errors** zeigt `commands path not found: <absolute path>` mit der Anleitung `Check that the path in your manifest or marketplace config is correct`. Dieselbe Meldung erscheint für `skills`, `agents` und `hooks`.

804 

805Claude Code hat einen Pfad aus Ihrer `plugin.json` oder Ihrem Marktplatz-Eintrag gegen den Plugin-Root aufgelöst und dort nichts gefunden. Der Pfad in der Meldung ist der absolute Pfad, den es überprüft hat, daher vergleichen Sie ihn mit dem, was auf der Festplatte vorhanden ist. Beheben Sie den Pfad oder erstellen Sie das Verzeichnis, und führen Sie dann `/reload-plugins` aus.

806 

807Pfade im Manifest sind relativ zum Plugin-Root und beginnen mit `./`. Ein Pfad, der außerhalb des Plugin-Root aufgelöst wird, wird stattdessen als `<component> path escapes plugin directory` gemeldet und wird gelöscht.

808 

809<h3 id="plugin-dir-loads-a-plugin-with-no-components">

810 `--plugin-dir` in einem Marktplatz-Root lädt die Plugins unter `plugins/` nicht

811</h3>

812 

813Sie haben `claude --plugin-dir <path>` gestartet und sehen keinen Fehler, aber die Skills, Agents und Hooks des Plugins sind nicht da.

814 

815`--plugin-dir` nimmt das Plugin-Root-Verzeichnis, das, das `.claude-plugin/plugin.json` und die Komponentenverzeichnisse wie `skills/` enthält. Wenn Sie es stattdessen auf einen Marktplatz-Root zeigen, liest Claude Code nicht `marketplace.json`, daher lädt ein Plugin unter `plugins/` nicht, und Sie sehen keinen Fehler. Vor v2.1.281 lud Claude Code einen Marktplatz-Root als ein leeres Plugin, das nach diesem Verzeichnis benannt ist. Zeigen Sie das Flag auf das Plugin-Verzeichnis selbst:

816 

817```shell theme={null}

818claude --plugin-dir ./my-marketplace/plugins/my-plugin

819```

820 

821Öffnen Sie dann **Installed** in `/plugin`, wo der Detailbereich des Plugins seine Komponenten auflistet.

822 

823<h3 id="files-the-plugin-references-outside-its-directory-arent-found">

824 Dateien, die das Plugin außerhalb seines Verzeichnisses referenziert, werden nicht gefunden

825</h3>

826 

827Ein Plugin funktioniert aus seinem Quellverzeichnis mit `--plugin-dir`, schlägt aber nach der Installation fehl, mit Fehlern über einen Pfad wie `../shared-utils`.

828 

829Claude Code kopiert ein installiertes Plugin in seinen Cache und lädt es von dort, daher zeigt ein Pfad, der außerhalb des eigenen Verzeichnisses des Plugins reicht, auf nichts im Cache. Verschieben Sie die gemeinsamen Dateien in das Plugin-Verzeichnis, oder referenzieren Sie sie durch einen Symlink darin. Für den Ort des Caches und wie Pfade aufgelöst werden, siehe [Plugins auf der Festplatte finden](/docs/de/plugins/loading#find-plugins-on-disk).

830 

831<h3 id="claude-plugin-root-shows-forward-slashes-on-windows">

832 `${CLAUDE_PLUGIN_ROOT}` zeigt Schrägstriche unter Windows

833</h3>

834 

835Unter Windows erhält ein Plugin-Hook `${CLAUDE_PLUGIN_ROOT}` als `C:/Users/you/...` statt `C:\Users\you\...`, und ein Skript, das Backslashes erwartet, bricht.

836 

837Claude Code führt Shell-Form-Hooks durch Git Bash unter Windows aus und ersetzt den Plugin-Root absichtlich in der Forward-Slash-Win32-Form. Bash-Builtins, MSYS-Tools und native Windows-Binärdateien akzeptieren alle diese Form.

838 

839Wenn Ihr Skript Backslashes benötigt, wechseln Sie den Hook zu einer der Formen, die native Pfade behalten, beschrieben unter [Exec-Form und Shell-Form](/docs/de/hooks#exec-form-and-shell-form):

840 

841* Ein Exec-Form-Hook, der den Prozess direkt mit einem `args`-Array erzeugt

842* Ein Hook mit `"shell": "powershell"`

843 

844<h3 id="plugin-loads-but-its-skills-are-missing">

845 Plugin lädt, aber seine Skills fehlen

846</h3>

847 

848Ihr Plugin ist unter **Installed** ohne Fehler aufgelistet, aber seine Skills werden nicht angeboten, wenn Sie `/` eingeben.

849 

850Skills laden aus `skills/` im Plugin-Root und Befehle aus `commands/` im Plugin-Root. Nur `plugin.json` gehört in `.claude-plugin/`, und ein `skills/`-Verzeichnis in `.claude-plugin/` wird nicht gescannt. Verschieben Sie die Verzeichnisse zum Plugin-Root und führen Sie `/reload-plugins` aus. Danach listet der Detailbereich des Plugins in `/plugin` die Skills auf, und das Eingeben von `/` bietet sie an.

851 

852Jeder Skill ist ein Verzeichnis, das `SKILL.md` enthält. Ein `skills`-Eintrag im Manifest, der auf eine `SKILL.md`-Datei statt auf sein Verzeichnis zeigt, wird als `path is a file; skills entries must be directories containing SKILL.md` gemeldet.

853 

854<h3 id="skill-loads-but-claude-never-invokes-the-skill">

855 Skill lädt, aber Claude ruft den Skill nie auf

856</h3>

857 

858Der Skill Ihres Plugins wird ausgeführt, wenn Sie seinen `/<plugin>:<skill>`-Befehl eingeben, aber Claude ruft ihn nie als Reaktion auf eine einfache Anfrage auf.

859 

860Überprüfen Sie diese Ursachen in Reihenfolge:

861 

862* **Der Skill setzt `disable-model-invocation: true`**: mit diesem Feld gesetzt, können nur Sie den Skill aufrufen. Der Template-Skill in [Erstellen Sie Ihr erstes Plugin](/docs/de/plugins/create#create-your-first-plugin) setzt ihn. Entfernen Sie die Zeile aus einem Skill, den Claude von selbst aufrufen soll. [Kontrollieren Sie, wer einen Skill aufruft](/docs/de/skills#control-who-invokes-a-skill) behandelt das Feld

863* **Die Beschreibung passt nicht, wie Menschen fragen**: arbeiten Sie die Überprüfungen in [Skill wird nicht ausgelöst](/docs/de/skills#skill-not-triggering) durch

864* **Die Beschreibung ist gekürzt**: wenn viele Skills installiert sind, kürzt Claude Code Beschreibungen, um in das Zeichenlimit der Auflistung zu passen, was die Schlüsselwörter entfernen kann, die Claude benötigt, um eine Anfrage zu passen. Siehe [Skill-Beschreibungen werden gekürzt](/docs/de/skills#skill-descriptions-are-cut-short)

865 

866Um zu messen, wie oft der Skill über realistische Eingabeaufforderungen ausgelöst wird, statt jeden einzeln zu überprüfen, schreiben Sie einen Eval-Fall mit einem [`tool_used: Skill`-Grader](/docs/de/plugin-evals#create-your-first-eval-suite) und führen Sie ihn mit `claude plugin eval` nach jeder Beschreibungsänderung aus.

867 

868<h3 id="is-not-a-plugin-or-skill-folder">

869 `<directory> is not a plugin or skill folder` von `claude plugin eval init`

870</h3>

871 

872Sie haben `claude plugin eval init` aus einem Verzeichnis ausgeführt, das kein Plugin-Root ist, wie Ihr Home-Verzeichnis oder der Root eines Repositories, das das Plugin in einem Unterverzeichnis hält. `init` schreibt die Suite unter dem Arbeitsverzeichnis, daher stoppt es, statt ein `evals/`-Verzeichnis zu erstellen, das das Plugin nie sehen würde.

873 

874Wechseln Sie zum Plugin-Root, dem Verzeichnis, das `.claude-plugin/plugin.json` oder die `SKILL.md` des Skills hält, und führen Sie den Befehl erneut aus. Um die Suite absichtlich woanders zu gerüsten, übergeben Sie `--eval-dir`. Siehe [Testen Sie Plugins mit Evals](/docs/de/plugin-evals).

875 

876<h3 id="the-userconfig-dialog-never-appears">

877 Der `userConfig`-Dialog erscheint nie

878</h3>

879 

880Ihr Plugin deklariert `userConfig`-Optionen, aber kein Konfigurationsdialog erscheint, wenn Sie es installieren.

881 

882Die interaktive Installation zeigt den Dialog, und der Shell-Befehl nimmt die Werte stattdessen als Flags:

883 

884* **`/plugin install` in einer Sitzung, oder die Registerkarte Discover in `/plugin`**: der Dialog ist Teil dieser interaktiven Installation

885* **`claude plugin install` in Ihrer Shell**: fordert nie `userConfig`-Werte auf. Es speichert alle `--config KEY=VALUE`-Werte, die Sie übergeben, und wenn Optionen ungesetzt bleiben, druckt es `N userConfig options not yet set — run /plugin configure <plugin>@<marketplace> in Claude Code, or pass --config KEY=VALUE.` Wenn eine der ungesetzten Optionen erforderlich ist, folgt `(M required)` auf `not yet set`.

886 

887Wenn Sie von der Shell aus installiert haben, übergeben Sie die Werte mit `--config`, ein Flag pro Option:

888 

889```shell theme={null}

890claude plugin install my-plugin@my-marketplace --config api_url=https://example.com

891```

892 

893Wenn jede Option gesetzt ist, trägt die Installationsausgabe keine `not yet set`-Zeile. Um den Dialog danach stattdessen zu öffnen, führen Sie `/plugin configure my-plugin@my-marketplace` in einer Sitzung aus.

894 

895Wenn Sie einen `--config`-Schlüssel übergeben, den das Manifest nicht deklariert, wird das Plugin immer noch installiert, und der Befehl druckt `⚠ Installed, but --config not applied: --config key "<key>" isn't declared in this plugin's userConfig.` gefolgt von den Schlüsseln, die das Plugin deklariert.

896 

897<h3 id="claude-plugin-validate-reports-errors">

898 `claude plugin validate` meldet Fehler

899</h3>

900 

901Sie haben `claude plugin validate <path>` ausgeführt, oder `/plugin validate <path>` in einer Sitzung, und es hat `Found N errors` und `Validation failed` gedruckt, dann mit Code 1 beendet.

902 

903Der Validator liest das Manifest am Pfad, den Sie ihm geben: `.claude-plugin/plugin.json` für ein Plugin-Verzeichnis, oder `.claude-plugin/marketplace.json` für ein Marktplatz-Verzeichnis. Für einen Marktplatz stellt er Problemen im eigenen Manifest eines Eintrags das Eintragsindex voran, wie `plugins[1] plugin.json → json: ...`.

904 

905Die Tabelle behandelt die Meldungen, die die Validierung stoppen, und zwei Warnungen, `No frontmatter block found` und `Unknown field '<key>'`, die sie nur stoppen, wenn Sie `--strict` übergeben. Andere Warnungen, wie eine fehlende Beschreibung, sind nicht aufgelistet.

906 

907| Meldung | Ursache | Beheben |

908| :------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------- |

909| `File not found: <path>` | Der Pfad hat kein Manifest, oder existiert nicht. | Führen Sie den Befehl gegen das Plugin- oder Marktplatz-Root aus, das Verzeichnis, das `.claude-plugin/` enthält. |

910| `No manifest found in directory. Expected .claude-plugin/marketplace.json or .claude-plugin/plugin.json` | Das Verzeichnis hat kein `.claude-plugin/`-Manifest. | Erstellen Sie das Manifest, oder zeigen Sie auf das richtige Verzeichnis. |

911| `Invalid JSON syntax: <parse error>` | Das Manifest, oder `hooks/hooks.json`, ist kein gültiges JSON. | Beheben Sie das JSON. Bis Sie `hooks/hooks.json` beheben, lädt eine Sitzung das Plugin ohne die Hooks in dieser Datei. |

912| `Path not found: <path>. The runtime loader will report this as a load failure.` | Ein Komponentenpfad im Manifest existiert nicht. | Beheben Sie den Pfad oder erstellen Sie das Verzeichnis. |

913| `Path contains ".." which could be a path traversal attempt: <path>` | Ein Komponentenpfad entweicht dem Plugin-Verzeichnis. | Verwenden Sie Pfade im Plugin-Root. |

914| `Path is a file; skills entries must be directories containing SKILL.md` | Ein `skills`-Eintrag zeigt auf `SKILL.md` statt auf sein Verzeichnis. | Zeigen Sie auf das übergeordnete Verzeichnis, oder `.` für eine Root-Level-`SKILL.md`. |

915| `No frontmatter block found` oder `YAML frontmatter failed to parse: <error>` | Eine Skill-, Agent- oder Befehlsdatei hat fehlende oder ungültige YAML-Frontmatter. | Fügen Sie oder beheben Sie die Frontmatter zwischen `---`-Trennzeichen. Wird beim Validieren eines Plugin-Verzeichnisses gemeldet. |

916| `Unknown field '<key>'` | Das Manifest hat ein Feld, das das Schema nicht definiert. | Entfernen Sie es, oder verwenden Sie den Namen, den die Meldung vorschlägt. Claude Code ignoriert unbekannte Felder zur Ladezeit. |

917 

918Führen Sie den Befehl erneut aus, nachdem Sie jeden Fehler behoben haben, bis er keine Fehler druckt.

919 

920`plugin.json`-Felder befinden sich in der [Manifest-Referenz](/docs/de/plugins/manifest-reference), und Marktplatz-Level-Meldungen befinden sich unter [Marktplatz-Validierungsfehler](#marketplace-validation-errors).

921 

922<h3 id="plugin-has-conflicting-manifests">

923 `Plugin <name> has conflicting manifests`

924</h3>

925 

926Das Plugin kann nicht geladen werden mit `Plugin <name> has conflicting manifests: both plugin.json and marketplace entry specify components.`

927 

928Das Plugin hat seine eigene `plugin.json`, und sein Marktplatz-Eintrag setzt `strict: false`, während er auch eines von `commands`, `agents`, `skills`, `hooks`, `outputStyles` oder `themes` deklariert. Entfernen Sie diese Felder aus dem Eintrag, oder setzen Sie `strict: true` im Eintrag, damit Claude Code sie an `plugin.json` anhängt. Siehe [Strict-Modus](/docs/de/plugins/marketplace-reference#strict-mode).

929 

930<h3 id="warning-no-commands-found-in-plugin-custom-directory">

931 `Warning: No commands found in plugin <name> custom directory`

932</h3>

933 

934Wenn das Plugin geladen wird, zeichnet das `claude --debug`-Protokoll unter `~/.claude/debug/<session-id>.txt` `Warning: No commands found in plugin <name> custom directory: <path>. Expected .md files or SKILL.md in subdirectories.` auf. Nichts erscheint in der Sitzung oder der Registerkarte **Errors**.

935 

936Der `commands`-Pfad im Manifest existiert, hält aber keine `.md`-Dateien und keine `SKILL.md` in einem Unterverzeichnis. Fügen Sie die Befehlsdateien hinzu, oder entfernen Sie den Pfad aus dem Manifest.

937 

938<h2 id="host-a-marketplace">

939 Einen Marktplatz hosten

940</h2>

941 

942Sie veröffentlichen einen Marktplatz und ein Benutzer meldet einen Fehler, oder Ihre eigene Validierung schlägt fehl. Diese Einträge sind für den Marktplatz-Besitzer.

943 

944<h3 id="plugins-with-relative-paths-fail-in-url-based-marketplaces">

945 Plugins mit relativen Pfaden schlagen in URL-basierten Marktplätzen fehl

946</h3>

947 

948Benutzer haben Ihren Marktplatz mit einer `https://example.com/marketplace.json`-URL hinzugefügt. Installationen von Plugins, deren `source` ein relativer Pfad ist, wie `./plugins/my-plugin`, schlagen mit `its marketplace entry path does not stay inside the marketplace directory` fehl. Bereits installierte Plugins können nicht geladen werden mit `Plugin source path refused`. Beide Meldungen haben einen [Fehler-Referenzeintrag](/docs/de/errors#marketplace-entry-path-does-not-stay-inside-the-marketplace-directory).

949 

950Wenn ein Benutzer einen URL-basierten Marktplatz hinzufügt, lädt Claude Code nur die `marketplace.json`-Datei selbst herunter. Es lädt Plugin-Dateien nicht durch relativen Pfad von diesem Server herunter, daher zeigt ein relativer Pfad in einem Eintrag auf ein Verzeichnis, das nie heruntergeladen wurde. Geben Sie jedem Eintrag eine Quelle, die Claude Code selbst abrufen kann, wie ein GitHub-Repository:

951 

952```json theme={null}

953{ "name": "my-plugin", "source": { "source": "github", "repo": "owner/repo" } }

954```

955 

956Alternativ hosten Sie den Marktplatz in einem Git-Repository und sagen Sie Benutzern, dass sie ihn mit der Repository-URL hinzufügen. Für eine Git-Quelle klont Claude Code das ganze Repository, daher werden relative Pfade aufgelöst. Quellentypen befinden sich in der [Marktplatz-Referenz](/docs/de/plugins/marketplace-reference).

957 

958<h3 id="marketplace-validation-errors">

959 Marktplatz-Validierungsfehler

960</h3>

961 

962Sie haben `claude plugin validate .` aus Ihrem Marktplatz-Verzeichnis ausgeführt und es hat Fehler oder Warnungen in der Marktplatz-Datei selbst gemeldet.

963 

964`claude plugin validate` validiert auch jeden Eintrag, dessen `source` ein lokaler Pfad ist, und warnt, wenn die `version` des Eintrags mit der des eigenen Manifests des Plugins nicht übereinstimmt.

965 

966Die Tabelle listet die Marktplatz-Level-Meldungen auf. Eintrag-Level-Meldungen sind die Plugin-Meldungen unter [`claude plugin validate` meldet Fehler](#claude-plugin-validate-reports-errors), mit dem Präfix `plugins[N] plugin.json →`.

967 

968| Meldung | Art | Beheben |

969| :-------------------------------------------------------------------------------------------------------------------------- | :------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

970| `Duplicate plugin name "<name>" found in marketplace` | Fehler | Geben Sie jedem Plugin einen eindeutigen `name`. |

971| `Path contains "..": <path>` unter `plugins[N].source` | Fehler | Verwenden Sie Pfade relativ zum Marktplatz-Root ohne `..`-Segmente. |

972| `Marketplace name cannot contain control or bidirectional-formatting characters` | Fehler | Entfernen Sie das Zeichen aus dem Namen, wie ein Escape oder eine Newline. |

973| `Plugin name cannot contain control or bidirectional-formatting characters` | Fehler | Entfernen Sie das Zeichen aus dem Plugin-`name`. |

974| `Marketplace has no plugins defined` | Warnung | Fügen Sie mindestens einen Eintrag zu `plugins` hinzu. |

975| `No marketplace description provided` | Warnung | Fügen Sie eine Top-Level-`description` hinzu. |

976| `Plugin name "<name>" is not kebab-case` unter `plugins[N] plugin.json → name` | Warnung | Benennen Sie in Kleinbuchstaben, Ziffern und Bindestriche um. Claude Code akzeptiert andere Formen, aber die claude.ai-Marktplatz-Synchronisierung lehnt sie ab. |

977| `Entry declares version "<a>" but <path>/plugin.json says "<b>"` | Warnung | Aktualisieren Sie den Eintrag, um `plugin.json` zu entsprechen, das zur Installationszeit maßgeblich ist. |

978| `Marketplace name "<name>" is reserved in Claude Desktop` | Warnung | Benennen Sie den Marktplatz um. Die verwaltete Marktplatz-Synchronisierung von Claude Desktop lehnt `org`, `org-provisioned` und `unknown` in jeder Schreibweise ab. |

979| `Marketplace name "<name>" is not accepted by Claude Desktop` oder `Plugin name "<name>" is not accepted by Claude Desktop` | Warnung | Benennen Sie in höchstens 128 Zeichen aus Buchstaben, Ziffern, `.`, `_` und `-` um, beginnend mit einem Buchstaben oder einer Ziffer. |

980 

981Vor v2.1.247 wurde ein Marktplatz-Name, der Kontroll- oder bidirektionale Formatierungszeichen enthielt, nur als `Marketplace name impersonates an official Anthropic/Claude marketplace` gemeldet.

982 

983<h2 id="blocked-by-your-organization">

984 Blockiert durch Ihre Organisation

985</h2>

986 

987Ihre Organisation stellt verwaltete Einstellungen bereit, die Plugins einschränken, und ein Befehl wurde mit einer Richtlinienmeldung abgelehnt. Diese Einträge benennen die Einstellung hinter jeder Ablehnung, damit Sie wissen, was Sie Ihren Administrator fragen müssen. Für die Admin-Seite siehe [Verwalten Sie Plugins für Ihre Organisation](/docs/de/plugins/org).

988 

989<h3 id="marketplace-source-is-blocked-by-enterprise-policy">

990 `Marketplace source '<source>' is blocked by enterprise policy`

991</h3>

992 

993Sie haben `/plugin marketplace add`, `update` oder eine Installation ausgeführt, und Claude Code hat mit dieser Zeile abgelehnt. Für eine GitHub- oder Git-Quelle folgt der Host der Quelle in Klammern, wie in `'github:owner/repo' (github.com)`.

994 

995Ihr Administrator hat `blockedMarketplaces` oder `strictKnownMarketplaces` in verwalteten Einstellungen gesetzt, und diese Quelle ist nicht zulässig. Bitten Sie Ihren Administrator, die Quelle zu erlauben, oder fügen Sie eine der zulässigen Quellen hinzu, die die Meldung auflistet.

996 

997Passen Sie den Rest der Meldung an, um zu sehen, welche Art von Richtlinie die Quelle blockiert hat:

998 

999* **`Allowed sources: <list>`**: der Block kommt von der `strictKnownMarketplaces`-Zulassungsliste statt von der `blockedMarketplaces`-Blockliste

1000* **`No external marketplaces are allowed.`**: die `strictKnownMarketplaces`-Zulassungsliste ist leer

1001* **Ein `Tip:`, dass der Kurzbefehl github.com annimmt**: die Zulassungsliste erlaubt einen Git-Host nach Hostname, und der `owner/repo`-Kurzbefehl, den Sie übergeben haben, zeigt auf github.com. Wenn sich das Repository auf Ihrem internen Host befindet, fügen Sie es erneut mit seiner vollständigen URL hinzu, wie `git@your-git-host.com:owner/repo.git`

1002 

1003Ein Marktplatz, den Sie vor der Richtlinie hinzugefügt haben, wird restriktiver, stoppt auch das Aktualisieren, weil die Richtlinie bei jeder Aktualisierung angewendet wird.

1004 

1005<h3 id="marketplace-is-not-in-the-allowed-marketplace-list">

1006 `Marketplace "<name>" is not in the allowed marketplace list`

1007</h3>

1008 

1009Die Registerkarte **Errors** zeigt diese Zeile, oder `Marketplace "<name>" is blocked by enterprise policy`, für einen Marktplatz, den Sie bereits registriert haben.

1010 

1011Die gleichen verwalteten Einstellungen, die eine [Marktplatzquelle](#marketplace-source-is-blocked-by-enterprise-policy) blockieren, gelten zur Ladezeit. `strictKnownMarketplaces` umfasst diesen Marktplatz nicht, oder `blockedMarketplaces` benennt ihn, daher stoppt Claude Code das Laden und seine Plugins. Für die Zulassungslisten-Variante zeigt die Anleitung die zulässigen Quellen oder `Contact your administrator to configure allowed marketplace sources`. Für die Blocklisten-Variante lautet sie `This marketplace source is explicitly blocked by your administrator`.

1012 

1013<h3 id="plugin-is-blocked-by-your-organizations-policy-and-cannot-be-installed">

1014 `Plugin "<name>" is blocked by your organization's policy and cannot be installed`

1015</h3>

1016 

1017Eine Installation wurde mit dieser Zeile abgelehnt, eine Aktivierung mit derselben Zeile, die mit `cannot be enabled` endet, oder eine Installation oder Aktualisierung mit einer, die den Grund benennt: `Plugin "<name>" is from marketplace "<marketplace>", which is blocked by your organization's policy`, oder `Plugin "<name>" depends on "<dep>", which is blocked by your organization's policy`.

1018 

1019Verwaltete Einstellungen blockieren dieses Plugin, seinen Marktplatz oder eine Abhängigkeit, die es benötigt. Fragen Sie Ihren Administrator, welcher Eintrag zutrifft. Ein blockierter Abhängigkeit bedeutet, dass das Plugin nicht installiert werden kann, bis der Marktplatz der Abhängigkeit zulässig ist.

1020 

1021<h3 id="plugin-dir-is-disabled-by-your-organizations-managed-settings-disables">

1022 `--plugin-dir is disabled by your organization's managed settings (disableSideloadFlags)`

1023</h3>

1024 

1025Sie haben `claude` mit `--plugin-dir`, `--plugin-url`, `--agents` oder `--mcp-config` gestartet. Claude Code hat mit dieser Meldung beendet und `Plugins, custom agents, and MCP servers can only be loaded from sources your administrator has approved.`

1026 

1027Ihr Administrator hat `disableSideloadFlags` in verwalteten Einstellungen gesetzt, was die Flags ausschaltet, die Plugins, Agents und Server aus beliebigen Pfaden laden. Laden Sie das Plugin stattdessen von einem genehmigten Marktplatz, oder bitten Sie Ihren Administrator, die Einstellung zu entfernen.

1028 

1029Eine zugehörige Meldung in der Registerkarte `/plugin` **Errors** ist `--plugin-dir copy of "<name>" ignored: plugin is locked by managed settings`. Verwaltete Einstellungen aktivieren oder deaktivieren dieses Plugin nach Name, und Claude Code ignoriert Ihre `--plugin-dir`-Kopie davon, damit das Flag die Richtlinie nicht überschreiben kann.

1030 

1031<h3 id="plugins-from-claude-skills-are-blocked-by-your-organizations-managed-s">

1032 `Plugins from ~/.claude/skills/ are blocked by your organization's managed settings`

1033</h3>

1034 

1035Sie haben `claude plugin init` oder `claude plugin enable` ausgeführt, und es hat mit dieser Zeile gestoppt. Die Meldung benennt `strictKnownMarketplaces or blockedMarketplaces` und bittet Ihren Administrator, `{"source":"skills-dir"}` zu `strictKnownMarketplaces` hinzuzufügen oder es aus `blockedMarketplaces` zu entfernen.

1036 

1037Die `skills-dir`-Quelle steht für Plugins, die Claude Code aus Ihrem `~/.claude/skills/`-Verzeichnis lädt. Bitten Sie Ihren Administrator, die Änderung vorzunehmen, die die Meldung benennt.

1038 

1039<h3 id="command-sourced-plugins-are-disabled-by-your-organizations-managed-set">

1040 `Command-sourced plugins are disabled by your organization's managed settings`

1041</h3>

1042 

1043Sie haben ein Plugin mit einer `command`-Quelle installiert oder aktualisiert, und es hat mit dieser Zeile gestoppt und `The plugin was not installed or updated and its command was not run.`

1044 

1045Ihr Administrator hat `disableCommandPluginSources` gesetzt, daher weigert sich Claude Code, den Marktplatz-deklarierten Befehl auszuführen, der das Plugin erzeugt. Das Setzen von `allowManagedHooksOnly` allein hat denselben Effekt, wenn `disableCommandPluginSources` ungesetzt ist. Fragen Sie Ihren Administrator, ob das Plugin von einem Quellentyp veröffentlicht werden kann, den die Richtlinie erlaubt.

1046 

1047<h3 id="marketplace-is-seed-managed">

1048 `Marketplace '<name>' is seed-managed`

1049</h3>

1050 

1051Sie haben `claude plugin marketplace update <name>` ausgeführt, und es ist mit `Marketplace '<name>' is seed-managed (<dir>)` fehlgeschlagen und einem Hinweis, Ihren Admin zu fragen.

1052 

1053Ein Operator hat diesen Marktplatz durch `CLAUDE_CODE_PLUGIN_SEED_DIR` vorpopuliert, und Claude Code behandelt einen Seed-verwalteten Marktplatz als schreibgeschützt. Eine Massen-`marketplace update` überspringt ihn und aktualisiert die anderen.

1054 

1055Um den Inhalt des Marktplatzes zu ändern, fragen Sie die Person, die das Seed-Image verwaltet, um es zu aktualisieren. Für das Verfahren siehe [Seed-Container und CI](/docs/de/plugins/org#seed-containers-and-ci).

1056 

1057<h2 id="next-steps">

1058 Nächste Schritte

1059</h2>

1060 

1061* [Plugin-Ladeverzeichnis](/docs/de/plugins/loading): warum sich Bereiche, der Cache und die Priorität so verhalten

1062* [Plugin-Befehlsreferenz](/docs/de/plugins/cli-reference): Flags, Standardwerte, Ausgabe und Exit-Codes für die `claude plugin`-Befehle

1063* [Installieren und verwalten Sie Plugins](/docs/de/plugins/install): die Installationsschritte von Anfang an

1064* [Verwalten Sie Plugins für Ihre Organisation](/docs/de/plugins/org#troubleshoot-policy): Richtlinien-seitige Fehlerbehebung für Administratoren

Details

135 Plugin aktivieren oder deaktivieren135 Plugin aktivieren oder deaktivieren

136</h3>136</h3>

137 137 

138Wenn Sie ein [Plugin](/docs/de/plugins) aktivieren oder deaktivieren, hängt das, was die Änderung kostet, davon ab, welche Komponententypen das Plugin bereitstellt. Die folgenden Fälle behandeln jeden Komponententyp, wann Claude Code die Änderung anwendet und was passiert, wenn Sie ein Plugin später in derselben Sitzung wieder deaktivieren.138Wenn Sie ein [Plugin](/docs/de/plugins/overview) aktivieren oder deaktivieren, hängt das, was die Änderung kostet, davon ab, welche Komponententypen das Plugin bereitstellt. Die folgenden Fälle behandeln jeden Komponententyp, wann Claude Code die Änderung anwendet und was passiert, wenn Sie ein Plugin später in derselben Sitzung wieder deaktivieren.

139 139 

140<h4 id="plugin-components-that-keep-the-cache">140<h4 id="plugin-components-that-keep-the-cache">

141 Plugin-Komponenten, die den Cache behalten141 Plugin-Komponenten, die den Cache behalten


147 Plugins, die MCP-Server bereitstellen147 Plugins, die MCP-Server bereitstellen

148</h4>148</h4>

149 149 

150Wenn Sie ein Plugin aktivieren oder deaktivieren, das [MCP-Server](/docs/de/plugins-reference#mcp-servers) bereitstellt, folgt Claude Code den gleichen Regeln wie beim [Verbinden oder Trennen eines MCP-Servers](#connecting-or-disconnecting-an-mcp-server):150Wenn Sie ein Plugin aktivieren oder deaktivieren, das [MCP-Server](/docs/de/plugins/components#mcp-servers) bereitstellt, folgt Claude Code den gleichen Regeln wie beim [Verbinden oder Trennen eines MCP-Servers](#connecting-or-disconnecting-an-mcp-server):

151 151 

152* Wenn Claude Code die Tools des Servers aufschiebt, behält es den Cache.152* Wenn Claude Code die Tools des Servers aufschiebt, behält es den Cache.

153* Wenn Claude Code sie in das Präfix lädt, liest die nächste Anfrage die gesamte Konversation erneut.153* Wenn Claude Code sie in das Präfix lädt, liest die nächste Anfrage die gesamte Konversation erneut.


156 Code-Intelligence-Plugins156 Code-Intelligence-Plugins

157</h4>157</h4>

158 158 

159Wenn Sie ein [Code-Intelligence-Plugin](/docs/de/discover-plugins#code-intelligence) aktivieren, erhält Claude das [LSP-Tool](/docs/de/tools-reference#lsp-tool-behavior).159Wenn Sie ein [Code-Intelligence-Plugin](/docs/de/plugins/code-intelligence) aktivieren, erhält Claude das [LSP-Tool](/docs/de/tools-reference#lsp-tool-behavior).

160 160 

161<h4 id="when-plugin-changes-apply">161<h4 id="when-plugin-changes-apply">

162 Wann Plugin-Änderungen angewendet werden162 Wann Plugin-Änderungen angewendet werden

163</h4>163</h4>

164 164 

165Eine Änderung, die Sie im `/plugin`-Menü vornehmen, wird durch [`/reload-plugins`](/docs/de/discover-plugins#apply-plugin-changes-without-restarting) durchgeführt, das Claude Code für Sie ausführt, wenn Sie das Menü schließen. Sie zahlen die Kosten, ob angehängte Ankündigungen oder ein vollständiges erneutes Lesen, beim ersten Turn nach Anwendung der Änderung. Claude Code kann eine Änderung auch selbst anwenden:165Eine Änderung, die Sie im `/plugin`-Menü vornehmen, wird durch [`/reload-plugins`](/docs/de/plugins/cli-reference#reload-plugins) durchgeführt, das Claude Code für Sie ausführt, wenn Sie das Menü schließen. Sie zahlen die Kosten, ob angehängte Ankündigungen oder ein vollständiges erneutes Lesen, beim ersten Turn nach Anwendung der Änderung. Claude Code kann eine Änderung auch selbst anwenden:

166 166 

167* Für ein Plugin mit einer `command`-Quelle kann Claude Code [das Plugin selbst neu laden](/docs/de/plugin-marketplaces#when-claude-code-re-runs-the-command).167* Für ein Plugin mit einer `command`-Quelle kann Claude Code [das Plugin selbst neu laden](/docs/de/plugins/loading#when-a-command-source-re-runs).

168* Wenn Sie [ein Plugin aus der `/plugin`-Schnittstelle installieren](/docs/de/discover-plugins#install-plugins), kann Claude Code es während der Installation aktivieren. Die Installationszusammenfassung teilt Ihnen mit, ob es das getan hat.168* Wenn Sie [ein Plugin aus der `/plugin`-Schnittstelle installieren](/docs/de/plugins/install#install-a-plugin), kann Claude Code es während der Installation aktivieren. Die Installationszusammenfassung teilt Ihnen mit, ob es das getan hat.

169* Wenn Sie [die Sitzung mit `/cd` verschieben](/docs/de/permissions#move-the-session-to-another-directory) auf v2.1.246 oder später, wendet Claude Code die Plugins an, die die Einstellungen des neuen Verzeichnisses aktivieren, als Teil des Verschiebens, ohne die vollständige Neulesens-Warnung, die ein `/reload-plugins` hält.169* Wenn Sie [die Sitzung mit `/cd` verschieben](/docs/de/permissions#move-the-session-to-another-directory) auf v2.1.246 oder später, wendet Claude Code die Plugins an, die die Einstellungen des neuen Verzeichnisses aktivieren, als Teil des Verschiebens, ohne die vollständige Neulesens-Warnung, die ein `/reload-plugins` hält.

170* In interaktiven Sitzungen, wenn Sie ein Plugin in einem [Ordner von Plugins](/docs/de/plugins#test-your-plugins-locally) hinzufügen oder entfernen, den Sie mit `--plugin-dir` übergeben haben, wird die Änderung sofort angewendet. Wenn die Anwendung ein vollständiges erneutes Lesen auslösen würde, hält Claude Code die Änderung stattdessen und zeigt einen Hinweis an, um `/reload-plugins` auszuführen. Erfordert Claude Code v2.1.265 oder später.170* In interaktiven Sitzungen, wenn Sie ein Plugin in einem [Ordner von Plugins](/docs/de/plugins/create#load-a-directory-or-archive-for-one-session) hinzufügen oder entfernen, den Sie mit `--plugin-dir` übergeben haben, wird die Änderung sofort angewendet. Wenn die Anwendung ein vollständiges erneutes Lesen auslösen würde, hält Claude Code die Änderung stattdessen und zeigt einen Hinweis an, um `/reload-plugins` auszuführen. Erfordert Claude Code v2.1.265 oder später.

171 171 

172Wenn `/reload-plugins` ausgeführt wird und das Neuladen ein vollständiges erneutes Lesen auslösen würde, zeigt Claude Code eine Warnung an und wendet das Neuladen nicht an. Führen Sie `/reload-plugins --force` aus, um es trotzdem anzuwenden.172Wenn `/reload-plugins` ausgeführt wird und das Neuladen ein vollständiges erneutes Lesen auslösen würde, zeigt Claude Code eine Warnung an und wendet das Neuladen nicht an. Führen Sie `/reload-plugins --force` aus, um es trotzdem anzuwenden.

173 173 

174`/reload-plugins` wird auch in Sitzungen ohne interaktives Terminal ausgeführt, z. B. die Desktop-App, das Agent SDK und [nicht-interaktiver Modus](/docs/de/headless) mit `-p`, wenn Sie es direkt in die Sitzung eingeben. Erfordert Claude Code v2.1.260 oder später.174`/reload-plugins` wird auch in Sitzungen ohne interaktives Terminal ausgeführt, z. B. die Desktop-App, das Agent SDK und [nicht-interaktiver Modus](/docs/de/headless) mit `-p`, wenn Sie es direkt in die Sitzung eingeben. Erfordert Claude Code v2.1.260 oder später.

175 175 

176In diesen Sitzungen wendet das Neuladen alles außer Plugin-MCP-Server-Änderungen an, die [in Ihrer nächsten Sitzung wirksam werden](/docs/de/discover-plugins#apply-plugin-changes-without-restarting) und daher nie während einer Sitzung ein vollständiges erneutes Lesen kosten.176In diesen Sitzungen wendet das Neuladen alles außer Plugin-MCP-Server-Änderungen an, die [in Ihrer nächsten Sitzung wirksam werden](/docs/de/plugins/cli-reference#reload-plugins) und daher nie während einer Sitzung ein vollständiges erneutes Lesen kosten.

177 177 

178<h4 id="plugins-you-enable-and-then-disable-in-one-session">178<h4 id="plugins-you-enable-and-then-disable-in-one-session">

179 Plugins, die Sie in einer Sitzung aktivieren und dann deaktivieren179 Plugins, die Sie in einer Sitzung aktivieren und dann deaktivieren

Details

626 return base + (href.startsWith('/en/') ? '/' + locale + href.slice(3) : href);626 return base + (href.startsWith('/en/') ? '/' + locale + href.slice(3) : href);

627 };627 };

628 }, []);628 }, []);

629 const SAFE_HREF = /^(\/(?![\/\\\s])|#|https?:\/\/)/;

629 const linkify = s => {630 const linkify = s => {

630 const out = [];631 const out = [];

631 let last = 0;632 let last = 0;

632 const re = /\[([^\]]+)\]\(([^)]+)\)/g;633 const re = /\[([^\]]+)\]\(([^)]+)\)/g;

633 for (let m; m = re.exec(s); ) {634 for (let m; m = re.exec(s); ) {

634 if (m.index > last) out.push(s.slice(last, m.index));635 if (m.index > last) out.push(s.slice(last, m.index));

635 out.push(<a key={m.index} href={doc(m[2])}>{m[1]}</a>);636 out.push(SAFE_HREF.test(m[2]) ? <a key={m.index} href={doc(m[2])}>{m[1]}</a> : m[1]);

636 last = re.lastIndex;637 last = re.lastIndex;

637 }638 }

638 if (last < s.length) out.push(s.slice(last));639 if (last < s.length) out.push(s.slice(last));


776 </div>777 </div>

777 <div className="pl-label">{L.whyWorks}</div>778 <div className="pl-label">{L.whyWorks}</div>

778 <div className="pl-teaches">{linkify(p.teaches)}</div>779 <div className="pl-teaches">{linkify(p.teaches)}</div>

779 {p.nextHref && p.next && <div className="pl-next">780 {p.nextHref && p.next && SAFE_HREF.test(p.nextHref) && <div className="pl-next">

780 <span className="pl-next-label">{L.makeItStick}</span>781 <span className="pl-next-label">{L.makeItStick}</span>

781 <a href={doc(p.nextHref)}>{codeify(p.next)} →</a>782 <a href={doc(p.nextHref)}>{codeify(p.next)} →</a>

782 </div>}783 </div>}


1202 },1203 },

1203 "migrate-a-pattern-across": {1204 "migrate-a-pattern-across": {

1204 title: "Migrieren Sie ein Muster in der gesamten Codebasis",1205 title: "Migrieren Sie ein Muster in der gesamten Codebasis",

1205 teaches: "Beschreiben Sie das alte Muster und das neue. Claude zuerst aufzufordern, jeden Ort zu identifizieren, bedeutet, dass die Aufrufstellen in der Antwort aufgelistet sind, sodass Sie überprüfen können, dass keine übersehen wurden. Für eine Migration über viele Dateien hinweg führen Sie [/batch](/docs/de/commands) aus. Claude teilt die Arbeit in Einheiten auf, die Sie genehmigen können, dann machen Hintergrund-Subagenten die Änderungen und öffnen einen Pull Request pro Einheit."1206 teaches: "Beschreiben Sie das alte Muster und das neue. Claude zuerst aufzufordern, jeden Ort zu identifizieren, bedeutet, dass die Aufrufstellen in der Antwort aufgelistet sind, sodass Sie überprüfen können, dass keine übersehen wurden. Für eine Migration über viele Dateien hinweg führen Sie [/batch](/docs/de/commands) aus. Claude teilt die Arbeit in Einheiten auf, die Sie genehmigen können, dann machen Hintergrund-Subagenten die Änderungen."

1206 },1207 },

1207 "optimize-against-a-measurable": {1208 "optimize-against-a-measurable": {

1208 title: "Optimieren Sie gegen ein messbares Ziel",1209 title: "Optimieren Sie gegen ein messbares Ziel",

Details

252<Note>252<Note>

253 Vertrauenswürdige Geräte befinden sich derzeit in der Beta-Phase. Funktionen und Möglichkeiten können sich weiterentwickeln, während die Erfahrung verfeinert wird.253 Vertrauenswürdige Geräte befinden sich derzeit in der Beta-Phase. Funktionen und Möglichkeiten können sich weiterentwickeln, während die Erfahrung verfeinert wird.

254 254 

255 Vertrauenswürdige Geräte sind auf Team- und Enterprise-Plänen verfügbar. Die Funktion ist standardmäßig deaktiviert, bis ein Administrator sie aktiviert.255 Vertrauenswürdige Geräte sind auf Pro-, Max-, Team- und Enterprise-Plänen verfügbar und sind standardmäßig deaktiviert. Bei Team- und Enterprise-Plänen aktiviert ein Inhaber die Funktion für die Organisation. Bei Pro- und Max-Plänen aktivieren Sie **Vertrauenswürdige Geräte erforderlich** selbst in Ihren Einstellungen auf der Seite „Zusammenarbeit" oder „Konto".

256</Note>256</Note>

257 257 

258Vertrauenswürdige Geräte ist eine organisationsweite Einstellung, die erfordert, dass Mitglieder ihr Gerät überprüfen, bevor sie Remote-Control-Sitzungen von claude.ai, den Claude-Mobile-Apps oder Claude Desktop anzeigen oder steuern können. Sie bindet den Remote-Control-Zugriff an ein bekanntes Gerät und eine aktuelle Authentifizierung, nicht nur an ein angemeldetes Konto.258Vertrauenswürdige Geräte erfordern, dass jedes Mitglied Ihrer Organisation oder Sie allein bei einem Pro- oder Max-Plan ihr Gerät überprüfen, bevor sie Remote-Control-Sitzungen von claude.ai, den Claude-Mobile-Apps oder Claude Desktop anzeigen oder steuern können. Es bindet den Remote-Control-Zugriff an ein bekanntes Gerät und eine aktuelle Authentifizierung, nicht nur an ein angemeldetes Konto.

259 259 

260Wenn die Einstellung aktiviert ist, erfordert die Interaktion mit einer Remote-Control-Sitzung beide der folgenden Voraussetzungen:260Wenn die Einstellung aktiviert ist, erfordert die Interaktion mit einer Remote-Control-Sitzung beide der folgenden Voraussetzungen:

261 261 


267Die Einstellung gilt nur für Remote Control. Regulärer Claude-Chat, Claude Code im Terminal und API-Nutzung sind nicht betroffen.267Die Einstellung gilt nur für Remote Control. Regulärer Claude-Chat, Claude Code im Terminal und API-Nutzung sind nicht betroffen.

268 268 

269<h3 id="enable-trusted-devices-for-your-organization">269<h3 id="enable-trusted-devices-for-your-organization">

270 Aktivieren Sie Vertrauenswürdige Geräte für Ihre Organisation270 Aktivieren Sie Vertrauenswürdige Geräte für eine Team- oder Enterprise-Organisation

271</h3>271</h3>

272 272 

273Ein Administrator aktiviert die Einstellung über die Claude Code Admin-Konsole.273Ein Inhaber aktiviert die Einstellung über die claude.ai-Organisationseinstellungen.

274 274 

275<Steps>275<Steps>

276 <Step title="Öffnen Sie die Claude Code Admin-Einstellungen">276 <Step title="Gehen Sie zur Seite „Funktionen&#x22;">

277 Gehen Sie zu [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code). Der Umschalter **Vertrauenswürdige Geräte erforderlich** wird unter der Remote-Control-Einstellung angezeigt.277 Gehen Sie zu [**Organisationseinstellungen > Funktionen > Remote-Sitzungen**](https://claude.ai/admin-settings/capabilities). Der Umschalter **Vertrauenswürdige Geräte erforderlich** wird in diesem Abschnitt angezeigt.

278 </Step>278 </Step>

279 279 

280 <Step title="Aktivieren Sie Vertrauenswürdige Geräte erforderlich">280 <Step title="Aktivieren Sie Vertrauenswürdige Geräte erforderlich">

sandboxing.md +4 −4

Details

147* Eine einfache `Bash` Ask-Regel oder die entsprechende `Bash(*)` Form wird für Befehle übersprungen, die in der Sandbox ausgeführt werden; sie gilt immer noch für Befehle, die auf den regulären Genehmigungsfluss zurückfallen. Im [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) wird die Regel nicht übersprungen: Sie fordert auch für Sandbox-Befehle auf, einschließlich schreibgeschützter. Vor v2.1.212 galt das Überspringen auch im Plan-Modus147* Eine einfache `Bash` Ask-Regel oder die entsprechende `Bash(*)` Form wird für Befehle übersprungen, die in der Sandbox ausgeführt werden; sie gilt immer noch für Befehle, die auf den regulären Genehmigungsfluss zurückfallen. Im [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) wird die Regel nicht übersprungen: Sie fordert auch für Sandbox-Befehle auf, einschließlich schreibgeschützter. Vor v2.1.212 galt das Überspringen auch im Plan-Modus

148 148 

149<Info>149<Info>

150 Der Auto-Allow-Modus funktioniert unabhängig von Ihrer Genehmigungsmodus-Einstellung, mit einer Ausnahme: [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) und, im Auto-Modus, für einen Befehl, der [pro-Befehl zulässige Domains](#per-command-allowed-domains-in-auto-mode) trägt. Selbst wenn Sie sich nicht im „Bearbeitungen akzeptieren"-Modus befinden, werden Sandbox-Bash-Befehle automatisch ausgeführt, wenn Auto-Allow aktiviert ist. Dies bedeutet, dass Bash-Befehle, die Dateien innerhalb der Sandbox-Grenzen ändern, ohne Eingabeaufforderung ausgeführt werden, auch im Manual-Modus, wo die Datei-Bearbeitungs-Tools eine Eingabeaufforderung erfordern würden.150 Der Auto-Allow-Modus funktioniert unabhängig von Ihrer Genehmigungsmodus-Einstellung, mit drei Ausnahmen: [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode), ein Auto-Modus-Befehl, der [pro-Befehl zulässige Domains](#per-command-allowed-domains-in-auto-mode) trägt, und [serverseitige Klassifizierer-Überprüfung](/docs/de/permission-modes#how-the-classifier-evaluates-actions) von Sandbox-Befehlen im Auto-Modus. Selbst wenn Sie sich nicht im „Bearbeitungen akzeptieren"-Modus befinden, werden Sandbox-Bash-Befehle automatisch ausgeführt, wenn Auto-Allow aktiviert ist. Dies bedeutet, dass Bash-Befehle, die Dateien innerhalb der Sandbox-Grenzen ändern, ohne Eingabeaufforderung ausgeführt werden, auch im Manual-Modus, wo die Datei-Bearbeitungs-Tools eine Eingabeaufforderung erfordern würden.

151 151 

152 Im Plan-Modus erweitert Auto-Allow die Genehmigungen nicht; siehe [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) für die Verwaltung von Befehlen durch Claude Code während der Planung. Vor v2.1.212 führte Auto-Allow Sandbox-Befehle auch im Plan-Modus ohne Eingabeaufforderung aus.152 Im Plan-Modus erweitert Auto-Allow die Genehmigungen nicht; siehe [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) für die Verwaltung von Befehlen durch Claude Code während der Planung. Vor v2.1.212 führte Auto-Allow Sandbox-Befehle auch im Plan-Modus ohne Eingabeaufforderung aus.

153</Info>153</Info>


299 Was ändert sich, wenn Dateisystem-Isolation aus ist299 Was ändert sich, wenn Dateisystem-Isolation aus ist

300</h4>300</h4>

301 301 

302Das Setzen von `filesystem.disabled` hebt die Schutzmaßnahmen auf, die die Dateisystem-Schicht selbst durchsetzt. Schutzmaßnahmen, die andere Schichten durchsetzen, bleiben angewendet:302Setzen von `filesystem.disabled` hebt die Schutzmaßnahmen auf, die die Dateisystem-Schicht selbst durchsetzt. Schutzmaßnahmen, die andere Schichten durchsetzen, bleiben angewendet:

303 303 

304| Schutz | Mit deaktivierter Dateisystem-Isolation |304| Schutz | Mit deaktivierter Dateisystem-Isolation |

305| ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |305| ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |


318 Anmeldedaten schützen318 Anmeldedaten schützen

319</h3>319</h3>

320 320 

321Die Einstellung `sandbox.credentials` deklariert Anmeldedatendateien und Umgebungsvariablen, um sie vor Sandbox-Befehlen zu schützen. Jeder Eintrag benennt einen Dateipfad oder eine Umgebungsvariable und einen `mode`. Der dedizierte `credentials`-Block hält Anmeldedatenregeln zusammen und getrennt von allgemeinen Dateisystem-Regeln. Erfordert Claude Code v2.1.187 oder später.321Die Einstellung `sandbox.credentials` deklariert Anmeldedatendateien und Umgebungsvariablen, um sie vor Sandbox-Befehlen zu schützen. Jeder Eintrag benennt einen Dateipfad oder eine Umgebungsvariable und einen `mode`. Der dedizierte `credentials`-Block hält Anmeldedatenregeln zusammen und getrennt von allgemeinen Dateisystem-Regeln.

322 322 

323Für Einträge mit `"mode": "deny"` werden Dateipfade für Lesevorgänge in der Sandbox blockiert, die gleiche Einschränkung, die `filesystem.denyRead` anwendet, und Umgebungsvariablen werden vor jedem Sandbox-Befehl deaktiviert. Der Dateischutz ist Teil der Dateisystem-Schicht, daher gilt er nicht, wenn Sie [Dateisystem-Isolation deaktivieren](#disable-filesystem-isolation); der Umgebungsvariablen-Schutz gilt immer noch.323Für Einträge mit `"mode": "deny"` werden Dateipfade für Lesevorgänge in der Sandbox blockiert, die gleiche Einschränkung, die `filesystem.denyRead` anwendet, und Umgebungsvariablen werden vor jedem Sandbox-Befehl deaktiviert. Der Dateischutz ist Teil der Dateisystem-Schicht, daher gilt er nicht, wenn Sie [Dateisystem-Isolation deaktivieren](#disable-filesystem-isolation); der Umgebungsvariablen-Schutz gilt immer noch.

324 324 


361 Anmeldedaten maskieren361 Anmeldedaten maskieren

362</h3>362</h3>

363 363 

364Die Maskierung geht weiter als ein `deny`-Eintrag unter [Anmeldedaten schützen](#protect-credentials). Anstatt eine Anmeldedaten zu blockieren, zeigt Claude Code Sandbox-Befehlen einen Platzhalter, den Sentinel, und der [Sandbox-Proxy](#network-isolation) tauscht den echten Wert bei ausgehenden Anfragen an Hosts aus, die Sie zulassen. Für Dateien ist die Substitution Linux- und WSL2-Verhalten; [macOS blockiert die Datei stattdessen](#mask-credential-files).364Maskierung geht weiter als ein `deny`-Eintrag unter [Anmeldedaten schützen](#protect-credentials). Anstatt eine Anmeldedaten zu blockieren, zeigt Claude Code Sandbox-Befehlen einen Platzhalter, den Sentinel, und der [Sandbox-Proxy](#network-isolation) tauscht den echten Wert bei ausgehenden Anfragen an Hosts aus, die Sie zulassen. Für Dateien ist die Substitution Linux- und WSL2-Verhalten; [macOS blockiert die Datei stattdessen](#mask-credential-files).

365 365 

366<h4 id="mask-environment-variables">366<h4 id="mask-environment-variables">

367 Umgebungsvariablen maskieren367 Umgebungsvariablen maskieren

Details

25 Plugin installieren25 Plugin installieren

26</h2>26</h2>

27 27 

28Installieren Sie in einer Claude Code-Sitzung aus dem [offiziellen Anthropic-Marketplace](/docs/de/discover-plugins#official-anthropic-marketplace):28Installieren Sie in einer Claude Code-Sitzung aus dem [offiziellen Anthropic-Marketplace](/docs/de/plugins/anthropic-marketplaces):

29 29 

30```text theme={null}30```text theme={null}

31/plugin install security-guidance@claude-plugins-official31/plugin install security-guidance@claude-plugins-official


35 35 

36* **Claude-Desktop-App, lokale oder SSH-Sitzung**: öffnen Sie den [Plugin-Browser](/docs/de/desktop#install-plugins), indem Sie auf die Schaltfläche **+** neben der Eingabeaufforderung klicken, dann auf **Plugins** und dann auf **Plugin hinzufügen**36* **Claude-Desktop-App, lokale oder SSH-Sitzung**: öffnen Sie den [Plugin-Browser](/docs/de/desktop#install-plugins), indem Sie auf die Schaltfläche **+** neben der Eingabeaufforderung klicken, dann auf **Plugins** und dann auf **Plugin hinzufügen**

37* **VS Code-Erweiterung**: installieren Sie aus dem [Dialog **Plugins verwalten**](/docs/de/vs-code#manage-plugins)37* **VS Code-Erweiterung**: installieren Sie aus dem [Dialog **Plugins verwalten**](/docs/de/vs-code#manage-plugins)

38* **Cloud-Sitzungen**: aktivieren Sie das Plugin für Ihr claude.ai-Konto, damit Claude Code es als [synchronisiertes Plugin](/docs/de/plugins-reference#synced-plugins) lädt. Eine Cloud-Sitzung lädt keine Plugins aus Ihren Benutzereinstellungen oder aus der Datei `.claude/settings.json` des Repositorys, wie unter [Was wird aus Ihrem Setup übernommen](/docs/de/cloud-environments#what-carries-over-from-your-setup) erläutert38* **Cloud-Sitzungen**: eine Cloud-Sitzung lädt keine Plugins aus Ihren Benutzereinstellungen oder aus der Datei `.claude/settings.json` des Repositorys, wie unter [Was wird aus Ihrem Setup übernommen](/docs/de/cloud-environments#what-carries-over-from-your-setup) erläutert. Für Plugins, die Ihre Organisation über verwaltete Einstellungen verteilt, siehe [Plugins für Ihre Organisation verwalten](/docs/de/plugins/org)

39 39 

40Die Terminal-Installation fordert Sie auf, einen Bereich auszuwählen. Wählen Sie Benutzerbereich, um das Plugin in Ihre Benutzereinstellungen zu schreiben, sodass es in jeder neuen lokalen Sitzung geladen wird, die Sie auf diesem Computer starten.40Die Terminal-Installation fordert Sie auf, einen Bereich auszuwählen. Wählen Sie Benutzerbereich, um das Plugin in Ihre Benutzereinstellungen zu schreiben, sodass es in jeder neuen lokalen Sitzung geladen wird, die Sie auf diesem Computer starten.

41 41 

42Wenn die Installation fehlschlägt, stimmen Sie die Meldung ab, die Claude Code meldet:42Wenn die Installation fehlschlägt, stimmen Sie die Meldung ab, die Claude Code meldet:

43 43 

44* `Marketplace "claude-plugins-official" not found`: fügen Sie den Marketplace mit `/plugin marketplace add anthropics/claude-plugins-official` hinzu und versuchen Sie dann erneut, das Plugin zu installieren.44* `Marketplace "claude-plugins-official" not found`: fügen Sie den Marketplace mit `/plugin marketplace add anthropics/claude-plugins-official` hinzu und versuchen Sie dann erneut, das Plugin zu installieren.

45* Das Plugin wird [nicht im Marketplace gefunden](/docs/de/discover-plugins#install-plugins): überprüfen Sie den Plugin-Namen.45* Das Plugin wird [nicht im Marketplace gefunden](/docs/de/plugins/install#install-a-plugin): überprüfen Sie den Plugin-Namen.

46 46 

47Überprüfen Sie die Installationszusammenfassung. Wenn sie `Run /reload-plugins to activate.` meldet, siehe [Plugin-Änderungen ohne Neustart anwenden](/docs/de/discover-plugins#apply-plugin-changes-without-restarting), um das Plugin in Ihrer aktuellen Sitzung zu aktivieren.47Überprüfen Sie die Installationszusammenfassung. Wenn sie `Run /reload-plugins to activate.` meldet, siehe [Plugin-Änderungen ohne Neustart anwenden](/docs/de/plugins/cli-reference#reload-plugins), um das Plugin in Ihrer aktuellen Sitzung zu aktivieren.

48 48 

49<h3 id="enable-for-your-team-in-local-sessions">49<h3 id="enable-for-your-team-in-local-sessions">

50 Plugin für Ihr Team in lokalen Sitzungen aktivieren50 Plugin für Ihr Team in lokalen Sitzungen aktivieren


279 279 

280* [Code Review](/docs/de/code-review): Richten Sie die Multi-Agent-Überprüfung zur PR-Zeit ein280* [Code Review](/docs/de/code-review): Richten Sie die Multi-Agent-Überprüfung zur PR-Zeit ein

281* [Automatisieren Sie Workflows mit Hooks](/docs/de/hooks-guide): Erstellen Sie Ihre eigenen Überprüfungen an den gleichen Lebenszykluspunkten281* [Automatisieren Sie Workflows mit Hooks](/docs/de/hooks-guide): Erstellen Sie Ihre eigenen Überprüfungen an den gleichen Lebenszykluspunkten

282* [Entdecken und installieren Sie Plugins](/docs/de/discover-plugins#official-anthropic-marketplace): Durchsuchen Sie andere offizielle Plugins282* [Finden Sie Plugins im offiziellen Marketplace](/docs/de/plugins/anthropic-marketplaces#find-plugins-in-the-official-marketplace): Durchsuchen Sie andere offizielle Plugins

Details

249}249}

250```250```

251 251 

252Sie können diesen Schlüssel auch in einem [endpunktverwalteten](/docs/de/managed-settings#delivery-mechanisms) MDM-Profil oder einer System-Datei `managed-settings.json` setzen, um Fail-Closed-Verhalten beim ersten Start durchzusetzen, bevor eine Server-Payload bereitgestellt wurde. In Claude Code v2.1.191 oder später ist dieses Flag eine Ausnahme von der [Prioritätsregel](#settings-precedence) oben: Claude Code berücksichtigt es, wenn es in einer beliebigen administratorgesteuerten verwalteten Quelle gesetzt ist, auch wenn eine zwischengespeicherte serververwaltete Payload vorhanden ist, daher wird ein MDM-bereitgestellter Wert nicht ignoriert, wenn serververwaltete Einstellungen vorhanden sind.252Sie können diesen Schlüssel auch in einem [endpunktverwalteten](/docs/de/managed-settings#delivery-mechanisms) MDM-Profil oder einer System-Datei `managed-settings.json` setzen, um Fail-Closed-Verhalten beim ersten Start durchzusetzen, bevor eine Server-Payload bereitgestellt wurde. Dieses Flag ist eine Ausnahme von der [Prioritätsregel](#settings-precedence) oben: Claude Code berücksichtigt es, wenn es in einer beliebigen administratorgesteuerten verwalteten Quelle gesetzt ist, auch wenn eine zwischengespeicherte serververwaltete Payload vorhanden ist, daher wird ein MDM-bereitgestellter Wert nicht ignoriert, wenn serververwaltete Einstellungen vorhanden sind.

253 253 

254Wenn ein [`policyHelper`](/docs/de/settings-reference#policyhelper) verwaltete Einstellungen liefert, ersetzt seine Ausgabe jede andere verwaltete Quelle für die Schlüssel, die Claude Code nach dem Start liest. Für die Quellen, aus denen Claude Code diesen Schlüssel liest, siehe [seinen Einstellungseintrag](/docs/de/settings-reference#forceremotesettingsrefresh). Der `policyHelper` Eintrag sagt, welche Quellen Claude Code den Helper aus liest und wann er ausgeführt wird.254Wenn ein [`policyHelper`](/docs/de/settings-reference#policyhelper) verwaltete Einstellungen liefert, ersetzt seine Ausgabe jede andere verwaltete Quelle für die Schlüssel, die Claude Code nach dem Start liest. Für die Quellen, aus denen Claude Code diesen Schlüssel liest, siehe [seinen Einstellungseintrag](/docs/de/settings-reference#forceremotesettingsrefresh). Der `policyHelper` Eintrag sagt, welche Quellen Claude Code den Helper aus liest und wann er ausgeführt wird.

255 255 


338 338 

339Weder Schlüssel, die von einem [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper)-Skript zurückgegeben werden, noch [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation)-Anmeldedaten lösen den Abruf der Einstellungen aus.339Weder Schlüssel, die von einem [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper)-Skript zurückgegeben werden, noch [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation)-Anmeldedaten lösen den Abruf der Einstellungen aus.

340 340 

341In einer [Cowork](https://claude.com/docs/cowork/overview)-Sitzung in der Claude Desktop-App ruft Claude Code keine serververwalteten Einstellungen aus der claude.ai-Admin-Konsole ab, auch wenn sich der Benutzer mit einem Team- oder Enterprise-Konto anmeldet. [Wo und wann eine Richtlinie gilt](/docs/de/managed-settings#where-and-when-a-policy-applies) behandelt, welche Richtlinie Cowork-Sitzungen auf dem Computer des Benutzers und Remote-Cowork-Sitzungen erreicht. claude.ai wendet weiterhin Ihre [`strictKnownMarketplaces`](/docs/de/settings-reference#strictknownmarketplaces)- und [`blockedMarketplaces`](/docs/de/settings-reference#blockedmarketplaces)-Listen selbst an, wenn ein Cowork-Benutzer einen Marketplace aus einem Git-Repository auf claude.ai oder aus **Anpassen** in der Cowork-Registerkarte hinzufügt. [Wie Einschränkungen funktionieren](/docs/de/plugin-marketplaces#how-restrictions-work) beschreibt diese Überprüfung.341In einer [Cowork](https://claude.com/docs/cowork/overview)-Sitzung in der Claude Desktop-App ruft Claude Code keine serververwalteten Einstellungen aus der claude.ai-Admin-Konsole ab, auch wenn sich der Benutzer mit einem Team- oder Enterprise-Konto anmeldet. [Wo und wann eine Richtlinie gilt](/docs/de/managed-settings#where-and-when-a-policy-applies) behandelt, welche Richtlinie Cowork-Sitzungen auf dem Computer des Benutzers und Remote-Cowork-Sitzungen erreicht. claude.ai wendet weiterhin Ihre [`strictKnownMarketplaces`](/docs/de/settings-reference#strictknownmarketplaces)- und [`blockedMarketplaces`](/docs/de/settings-reference#blockedmarketplaces)-Listen selbst an, wenn ein Cowork-Benutzer einen Marketplace aus einem Git-Repository auf claude.ai oder aus **Anpassen** in der Cowork-Registerkarte hinzufügt. [Wie Einschränkungen funktionieren](/docs/de/plugins/org#restrict-what-users-can-install) beschreibt diese Überprüfung.

342 342 

343Wenn Sie eine `CLAUDE_CODE_USE_*`-Providervariable oder eine nicht standardmäßige `ANTHROPIC_BASE_URL` in Ihrer Shell exportieren, überspringt Claude Code den Abruf der Einstellungen für Ihre Sitzungen. [`claude doctor` und `/status` melden den übersprungenen Abruf und dessen Ursache](#verify-settings-delivery).343Wenn Sie eine `CLAUDE_CODE_USE_*`-Providervariable oder eine nicht standardmäßige `ANTHROPIC_BASE_URL` in Ihrer Shell exportieren, überspringt Claude Code den Abruf der Einstellungen für Ihre Sitzungen. [`claude doctor` und `/status` melden den übersprungenen Abruf und dessen Ursache](#verify-settings-delivery).

344 344 

sessions.md +1 −1

Details

37 37 

38Eine fortgesetzte Sitzung stellt das Gespräch zusammen mit dem darin gespeicherten Zustand wieder her:38Eine fortgesetzte Sitzung stellt das Gespräch zusammen mit dem darin gespeicherten Zustand wieder her:

39 39 

40* Gesprächsverlauf: der vollständige Verlauf, einschließlich Werkzeugaufrufe und Ergebnisse. Ein Werkzeug, das noch lief, als der vorherige Prozess endete, beispielsweise bei einem Absturz, wird nicht beendet oder erneut ausgeführt, wenn Sie fortsetzen; Claude setzt ohne seine Ausgabe fort.40* Gesprächsverlauf: der vollständige Verlauf, einschließlich Werkzeugaufrufe und Ergebnisse. Ein Werkzeug, das noch lief, als der vorherige Prozess endete, beispielsweise bei einem Absturz, wird nicht beendet oder erneut ausgeführt, wenn Sie fortsetzen. Claude sieht den Aufruf als unterbrochen markiert, bevor sein Ergebnis aufgezeichnet wurde, und wird angewiesen, zu überprüfen, ob er wirksam wurde, bevor er ihn erneut ausführt, es sei denn, [`CLAUDE_CODE_RESUME_INTERRUPTED_TURN`](/docs/de/env-vars#variables) ist gesetzt. Vor v2.1.281 ließ Claude Code den unterbrochenen Aufruf aus dem Gespräch fallen oder zeigte ihn Claude als einen an, den Sie unterbrochen haben.

41* Modell: Die Sitzung wird auf dem Modell fortgesetzt, das sie verwendet hat. Das Modell wird nicht wiederhergestellt, wenn es eingestellt wurde oder nicht von `availableModels` zulässig ist, wenn ein `--model`-Flag oder eine `ANTHROPIC_MODEL`-Familie-Umgebungsvariable beim Start eine auswählt, oder bei Anbietern, die anbieterspezifische Bereitstellungs-IDs verwenden, wie [Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry](/docs/de/third-party-integrations); siehe [Modellkonfiguration](/docs/de/model-config#setting-your-model) für die Auflösungsreihenfolge.41* Modell: Die Sitzung wird auf dem Modell fortgesetzt, das sie verwendet hat. Das Modell wird nicht wiederhergestellt, wenn es eingestellt wurde oder nicht von `availableModels` zulässig ist, wenn ein `--model`-Flag oder eine `ANTHROPIC_MODEL`-Familie-Umgebungsvariable beim Start eine auswählt, oder bei Anbietern, die anbieterspezifische Bereitstellungs-IDs verwenden, wie [Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry](/docs/de/third-party-integrations); siehe [Modellkonfiguration](/docs/de/model-config#setting-your-model) für die Auflösungsreihenfolge.

42* Agent: Eine Sitzung, die mit [`--agent`](/docs/de/sub-agents#invoke-subagents-explicitly) oder der `agent`-Einstellung gestartet wurde, wird als dieser Agent fortgesetzt und behält seine Werkzeugbeschränkungen und sein Modell. Übergeben Sie `--agent` beim Fortsetzen, um einen anderen auszuwählen; für die Systemaufforderung in beiden Fällen siehe [Systemaufforderungs-Flags in fortgesetzten Konversationen](/docs/de/cli-reference#system-prompt-flags-in-resumed-conversations). Claude Code sucht nach dem Agent an zwei Stellen: im ursprünglichen Verzeichnis der Sitzung, sofern Sie [diesem Arbeitsbereich vertraut haben](/docs/de/permissions#project-allow-rules-and-workspace-trust), und dann im Verzeichnis, aus dem Sie fortsetzen, sodass ein projektbezogener Agent weiterhin geladen wird, wenn Sie aus einem anderen Verzeichnis fortsetzen. Wenn Claude Code den Agent an keiner Stelle findet, wird die Sitzung mit den Standard-Werkzeugen fortgesetzt und zeigt eine [Warnung mit dem Namen des Agenten](/docs/de/errors#session-agent-no-longer-available).42* Agent: Eine Sitzung, die mit [`--agent`](/docs/de/sub-agents#invoke-subagents-explicitly) oder der `agent`-Einstellung gestartet wurde, wird als dieser Agent fortgesetzt und behält seine Werkzeugbeschränkungen und sein Modell. Übergeben Sie `--agent` beim Fortsetzen, um einen anderen auszuwählen; für die Systemaufforderung in beiden Fällen siehe [Systemaufforderungs-Flags in fortgesetzten Konversationen](/docs/de/cli-reference#system-prompt-flags-in-resumed-conversations). Claude Code sucht nach dem Agent an zwei Stellen: im ursprünglichen Verzeichnis der Sitzung, sofern Sie [diesem Arbeitsbereich vertraut haben](/docs/de/permissions#project-allow-rules-and-workspace-trust), und dann im Verzeichnis, aus dem Sie fortsetzen, sodass ein projektbezogener Agent weiterhin geladen wird, wenn Sie aus einem anderen Verzeichnis fortsetzen. Wenn Claude Code den Agent an keiner Stelle findet, wird die Sitzung mit den Standard-Werkzeugen fortgesetzt und zeigt eine [Warnung mit dem Namen des Agenten](/docs/de/errors#session-agent-no-longer-available).

43* Berechtigungsmodus: Wenn Sie aus einem Terminal mit `claude --continue`, `claude --resume <session-id>` oder `claude --resume <name>` fortsetzen, wenn der Name einer Sitzung entspricht, ohne `-p`, stellt Claude Code den Berechtigungsmodus wieder her, in dem sich die Sitzung befand, außer in den Fällen in [Berechtigungsmodus beim Fortsetzen](#permission-mode-on-resume), die auch die Sitzungsauswahl, `/resume` und das Fortsetzen mit `claude -p` abdecken. Übergeben Sie `--permission-mode` oder `--dangerously-skip-permissions`, um den wiederhergestellten Modus zu überschreiben.43* Berechtigungsmodus: Wenn Sie aus einem Terminal mit `claude --continue`, `claude --resume <session-id>` oder `claude --resume <name>` fortsetzen, wenn der Name einer Sitzung entspricht, ohne `-p`, stellt Claude Code den Berechtigungsmodus wieder her, in dem sich die Sitzung befand, außer in den Fällen in [Berechtigungsmodus beim Fortsetzen](#permission-mode-on-resume), die auch die Sitzungsauswahl, `/resume` und das Fortsetzen mit `claude -p` abdecken. Übergeben Sie `--permission-mode` oder `--dangerously-skip-permissions`, um den wiederhergestellten Modus zu überschreiben.

settings.md +5 −1

Details

452 Teilen Sie Einstellungen mit Ihrem Team452 Teilen Sie Einstellungen mit Ihrem Team

453</h3>453</h3>

454 454 

455Committen Sie `.claude/settings.json`, damit jeder, der das Repository klont, die gleichen Berechtigungen, Hooks, Telemetrie und Plugins erhält. Jeder Teamkollege kann es für sich selbst in seiner eigenen `.claude/settings.local.json` überschreiben, sodass persönliche Ausnahmen keinen Commit benötigen. Für eine vollständige Team-Datei siehe [die gemeinsamen Einstellungen eines Teams](/docs/de/settings-example#a-teams-shared-settings).455Committen Sie `.claude/settings.json`, damit jeder, der das Repository klont, die gleichen Berechtigungen, Hooks und Plugins erhält. Jeder Teamkollege kann es für sich selbst in seiner eigenen `.claude/settings.local.json` überschreiben, sodass persönliche Ausnahmen keinen Commit benötigen. Für eine vollständige Team-Datei siehe [die gemeinsamen Einstellungen eines Teams](/docs/de/settings-example#a-teams-shared-settings).

456 456 

457Einiges von dem, das Sie committen, wartet, bis jeder Teamkollege den [Ordner vertraut](/docs/de/permissions#project-allow-rules-and-workspace-trust), und einige Schlüssel wirken sich nie aus einer Repository-Datei aus; [Beheben Sie eine Einstellung, die nicht angewendet wird](#common-cases) behandelt beides.457Einiges von dem, das Sie committen, wartet, bis jeder Teamkollege den [Ordner vertraut](/docs/de/permissions#project-allow-rules-and-workspace-trust), und einige Schlüssel wirken sich nie aus einer Repository-Datei aus; [Beheben Sie eine Einstellung, die nicht angewendet wird](#common-cases) behandelt beides.

458 458 


743* **Eine höhere Ebene setzt ihn.** Eine andere Einstellungsdatei, ein `--settings` Flag oder eine verwaltete Quelle setzt den Schlüssel über Ihrem; der [Stapel](#settings-precedence) sagt welche. Ein Flag oder eine Umgebungsvariable kann auch den Schlüssel auf eigene Faust überschreiben, entschieden Schlüssel für Schlüssel; der Eintrag des Schlüssels auf der [Einstellungsreferenz](/docs/de/settings-reference) sagt, welche Claude Code verwendet, und der [`env` Eintrag](/docs/de/settings-reference#env) behandelt einen verwalteten `env` Wert versus einen Shell-Export.743* **Eine höhere Ebene setzt ihn.** Eine andere Einstellungsdatei, ein `--settings` Flag oder eine verwaltete Quelle setzt den Schlüssel über Ihrem; der [Stapel](#settings-precedence) sagt welche. Ein Flag oder eine Umgebungsvariable kann auch den Schlüssel auf eigene Faust überschreiben, entschieden Schlüssel für Schlüssel; der Eintrag des Schlüssels auf der [Einstellungsreferenz](/docs/de/settings-reference) sagt, welche Claude Code verwendet, und der [`env` Eintrag](/docs/de/settings-reference#env) behandelt einen verwalteten `env` Wert versus einen Shell-Export.

744* **Ein Sicherheitsschlüssel behält seinen strengen Wert.** Für ein paar Schlüssel ehrt Claude Code den restriktiven Wert aus jeder Datei, sodass ein Projekt `true` für [`disableClaudeAiConnectors`](/docs/de/settings-reference#disableclaudeaiconnectors) bleibt an; siehe [Ausnahmen zur Priorität der verwalteten Einstellungen](#exceptions-to-managed-settings-precedence).744* **Ein Sicherheitsschlüssel behält seinen strengen Wert.** Für ein paar Schlüssel ehrt Claude Code den restriktiven Wert aus jeder Datei, sodass ein Projekt `true` für [`disableClaudeAiConnectors`](/docs/de/settings-reference#disableclaudeaiconnectors) bleibt an; siehe [Ausnahmen zur Priorität der verwalteten Einstellungen](#exceptions-to-managed-settings-precedence).

745* **Die Datei kann diesen Wert nicht setzen.** [`permissions.defaultMode`](/docs/de/settings-reference#permissions-defaultmode) Werte `auto` und `bypassPermissions` wirken sich nicht von Projekt- oder lokalen Einstellungen aus; setzen Sie sie stattdessen in Benutzer- oder verwaltete Einstellungen, oder übergeben Sie `--permission-mode` für eine Sitzung. Vor v2.1.257 wirkte sich `bypassPermissions` von jeder Datei aus.745* **Die Datei kann diesen Wert nicht setzen.** [`permissions.defaultMode`](/docs/de/settings-reference#permissions-defaultmode) Werte `auto` und `bypassPermissions` wirken sich nicht von Projekt- oder lokalen Einstellungen aus; setzen Sie sie stattdessen in Benutzer- oder verwaltete Einstellungen, oder übergeben Sie `--permission-mode` für eine Sitzung. Vor v2.1.257 wirkte sich `bypassPermissions` von jeder Datei aus.

746 

747 Eine Telemetrie-Exportvariable in einem [`env`](/docs/de/settings-reference#env) Block wirkt sich auch nicht von Projekt- oder lokalen Einstellungen aus, außer ein paar Off-Werte. [Variablen, die Claude Code in `env` ignoriert](/docs/de/settings-reference#variables-claude-code-ignores-in-env) listet die Variablen und diese Werte auf.

746* **Die Datei ist fehlerhaft.** Ungültiges JSON oder ein abgelehnter Wert lässt Claude Code die Datei oder den Eintrag überspringen; siehe [Beheben Sie eine fehlerhafte Einstellungsdatei](#fix-a-broken-settings-file).748* **Die Datei ist fehlerhaft.** Ungültiges JSON oder ein abgelehnter Wert lässt Claude Code die Datei oder den Eintrag überspringen; siehe [Beheben Sie eine fehlerhafte Einstellungsdatei](#fix-a-broken-settings-file).

747 749 

748<h4 id="a-change-you-made-in-claude-code-is-lost-in-new-sessions">750<h4 id="a-change-you-made-in-claude-code-is-lost-in-new-sessions">


766Zwei Dinge halten einen Schlüssel in `.claude/settings.json` davon ab, für alle zu gelten, die ihn klonen:768Zwei Dinge halten einen Schlüssel in `.claude/settings.json` davon ab, für alle zu gelten, die ihn klonen:

767 769 

768* **Claude Code ignoriert den Schlüssel in einer Repository-Datei.** Suchen Sie nach `User, local, or managed`, `User or managed`, `Managed` oder `Global config` in der Spalte Scope des [Einstellungsindex](/docs/de/settings-reference#settings-index). Diese Schlüssel wirken sich nie von der gemeinsamen Datei aus, außer ein paar, die eine Repository-Datei immer noch ausschalten kann. Jeder dieser Einträge sagt so auf seiner Scope-Zeile. `Global config` Schlüssel gelten nur von `~/.claude.json`.770* **Claude Code ignoriert den Schlüssel in einer Repository-Datei.** Suchen Sie nach `User, local, or managed`, `User or managed`, `Managed` oder `Global config` in der Spalte Scope des [Einstellungsindex](/docs/de/settings-reference#settings-index). Diese Schlüssel wirken sich nie von der gemeinsamen Datei aus, außer ein paar, die eine Repository-Datei immer noch ausschalten kann. Jeder dieser Einträge sagt so auf seiner Scope-Zeile. `Global config` Schlüssel gelten nur von `~/.claude.json`.

771 

772 Innerhalb des `env` Schlüssels gelten die Telemetrie-Exportvariablen auch nie von der gemeinsamen Datei, außer ein paar Off-Werte; siehe [Variablen, die Claude Code in `env` ignoriert](/docs/de/settings-reference#variables-claude-code-ignores-in-env).

769* **Der Schlüssel wartet auf Vertrauen.** `permissions.allow` Regeln, `permissions.additionalDirectories`, `extraKnownMarketplaces` und die meisten [`env`](/docs/de/settings-reference#env) Werte gelten nur, nachdem jeder Teamkollege den [Ordner vertraut](/docs/de/permissions#project-allow-rules-and-workspace-trust). Bis dahin sehen sie immer noch Aufforderungen und bekommen keine Plugins von einem Marketplace, den die Datei erklärt. `deny` und `ask` Regeln gelten sofort.773* **Der Schlüssel wartet auf Vertrauen.** `permissions.allow` Regeln, `permissions.additionalDirectories`, `extraKnownMarketplaces` und die meisten [`env`](/docs/de/settings-reference#env) Werte gelten nur, nachdem jeder Teamkollege den [Ordner vertraut](/docs/de/permissions#project-allow-rules-and-workspace-trust). Bis dahin sehen sie immer noch Aufforderungen und bekommen keine Plugins von einem Marketplace, den die Datei erklärt. `deny` und `ask` Regeln gelten sofort.

770 774 

771<h4 id="permission-rules-combine-differently-than-you-expected">775<h4 id="permission-rules-combine-differently-than-you-expected">

Details

98 Gemeinsame Einstellungen eines Teams98 Gemeinsame Einstellungen eines Teams

99</h2>99</h2>

100 100 

101Die gemeinsamen Einstellungen eines Teams, die im Repository festgehalten werden, damit jeder, der es klont, die gleichen Berechtigungen, Hooks, Telemetrie und das Plugin-Marketplace erhält. Speichern Sie eine Datei wie diese unter `.claude/settings.json` am oberen Ende des Repositories. Das sollten Sie vor dem Commit wissen:101Die gemeinsamen Einstellungen eines Teams, die im Repository festgehalten werden, damit jeder, der es klont, die gleichen Berechtigungen, Hooks und das Plugin-Marketplace erhält. Speichern Sie eine Datei wie diese unter `.claude/settings.json` am oberen Ende des Repositories. Das sollten Sie vor dem Commit wissen:

102 102 

103* **Cloud-Sitzungen lesen sie auch.** Eine [Cloud-Sitzung](/docs/de/settings#settings-in-cloud-sessions) startet von einem Klon des Repositories, daher gilt die festgesetzte Datei auch dort.103* **Cloud-Sitzungen lesen sie auch.** Eine [Cloud-Sitzung](/docs/de/settings#settings-in-cloud-sessions) startet von einem Klon des Repositories, daher gilt die festgesetzte Datei auch dort.

104* **Telemetrie gehört in verwaltete oder persönliche Einstellungen.** Claude Code ignoriert die [OpenTelemetry-Exporter-Variablen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) in den Einstellungsdateien eines Repositories, mit Ausnahme einiger Werte, die Telemetrie deaktivieren. Legen Sie diese in [verwalteten Einstellungen](/docs/de/monitoring-usage#administrator-configuration) für Ihre Organisation fest, oder in der `~/.claude/settings.json` jeder Person.

104* **Allow-Regeln warten auf Vertrauen.** Allow-Regeln und `extraKnownMarketplaces`-Einträge werden wirksam, nachdem jede Person [diesem Ordner selbst vertraut](/docs/de/permissions#project-allow-rules-and-workspace-trust), nicht nur einem übergeordneten Ordner; Deny- und Ask-Regeln gelten in jeder Sitzung, vertraut oder nicht.105* **Allow-Regeln warten auf Vertrauen.** Allow-Regeln und `extraKnownMarketplaces`-Einträge werden wirksam, nachdem jede Person [diesem Ordner selbst vertraut](/docs/de/permissions#project-allow-rules-and-workspace-trust), nicht nur einem übergeordneten Ordner; Deny- und Ask-Regeln gelten in jeder Sitzung, vertraut oder nicht.

105* **Der Hook ist ein Skript im Repo.** Der Hook dieser Datei führt `.claude/hooks/block-rm.sh` aus; [Wie ein Hook aufgelöst wird](/docs/de/hooks#how-a-hook-resolves) zeigt, wie man ihn schreibt.106* **Der Hook ist ein Skript im Repo.** Der Hook dieser Datei führt `.claude/hooks/block-rm.sh` aus; [Wie ein Hook aufgelöst wird](/docs/de/hooks#how-a-hook-resolves) zeigt, wie man ihn schreibt.

106* **Regeln entsprechen dem Befehl und Pfad wie geschrieben.** `Bash(git push *)` entspricht nicht [`git -C . push`](/docs/de/permissions#bash-rule-limits). `Read(./.env)` allein stoppt die Datei-Tools und Befehle, die die Datei benennen, wie `cat .env`, aber nicht [`grep -r` über das Verzeichnis ausgeführt](/docs/de/permissions#read-and-edit); der `sandbox`-Block in dieser Datei schließt diese Lücke, da die Sandbox [Ihre `Read`-Deny-Pfade](/docs/de/settings-reference#sandbox-filesystem-denyread) zu dem hinzufügt, was jeder Sandbox-Befehl nicht lesen kann.107* **Regeln entsprechen dem Befehl und Pfad wie geschrieben.** `Bash(git push *)` entspricht nicht [`git -C . push`](/docs/de/permissions#bash-rule-limits). `Read(./.env)` allein stoppt die Datei-Tools und Befehle, die die Datei benennen, wie `cat .env`, aber nicht [`grep -r` über das Verzeichnis ausgeführt](/docs/de/permissions#read-and-edit); der `sandbox`-Block in dieser Datei schließt diese Lücke, da die Sandbox [Ihre `Read`-Deny-Pfade](/docs/de/settings-reference#sandbox-filesystem-denyread) zu dem hinzufügt, was jeder Sandbox-Befehl nicht lesen kann.


124 "Read(./secrets/**)"125 "Read(./secrets/**)"

125 ]126 ]

126 },127 },

127 "env": {

128 "CLAUDE_CODE_ENABLE_TELEMETRY": "1",

129 "OTEL_METRICS_EXPORTER": "otlp",

130 "OTEL_EXPORTER_OTLP_PROTOCOL": "grpc",

131 "OTEL_EXPORTER_OTLP_ENDPOINT": "http://collector.example.com:4317"

132 },

133 "hooks": {128 "hooks": {

134 "PreToolUse": [129 "PreToolUse": [

135 {130 {


194 "Read(./secrets/**)"189 "Read(./secrets/**)"

195 ]190 ]

196 },191 },

197 // OpenTelemetry-Metriken über gRPC an den Collector des Teams senden; ersetzen Sie den Endpunkt durch die URL Ihres Collectors

198 "env": {

199 "CLAUDE_CODE_ENABLE_TELEMETRY": "1",

200 "OTEL_METRICS_EXPORTER": "otlp",

201 "OTEL_EXPORTER_OTLP_PROTOCOL": "grpc",

202 "OTEL_EXPORTER_OTLP_ENDPOINT": "http://collector.example.com:4317"

203 },

204 // Vor jedem Bash-Befehl ein Skript im Repo ausführen, das ihn blockieren kann192 // Vor jedem Bash-Befehl ein Skript im Repo ausführen, das ihn blockieren kann

205 "hooks": {193 "hooks": {

206 "PreToolUse": [194 "PreToolUse": [

Details

626| [`axScreenReader`](#axscreenreader) | Rendern Sie [bildschirmleserfreundliche Ausgabe](/docs/de/accessibility) | Interface and terminal | Any file |626| [`axScreenReader`](#axscreenreader) | Rendern Sie [bildschirmleserfreundliche Ausgabe](/docs/de/accessibility) | Interface and terminal | Any file |

627| [`bashEditDiffEnabled`](#basheditdiffenabled) | Zeichnen Sie die [Dateien auf, die sich während der Ausführung eines Bash-Befehls geändert haben](/docs/de/hooks#bash) in jedem Berechtigungsmodus | Interface and terminal | User or managed |627| [`bashEditDiffEnabled`](#basheditdiffenabled) | Zeichnen Sie die [Dateien auf, die sich während der Ausführung eines Bash-Befehls geändert haben](/docs/de/hooks#bash) in jedem Berechtigungsmodus | Interface and terminal | User or managed |

628| [`bashOutputMaxChars`](#bashoutputmaxchars) | Legen Sie fest, wie viel der [Ausgabe](/docs/de/tools-reference#output-limits) eines erfolgreichen Befehls Claude inline erhält | Memory and context | Any file |628| [`bashOutputMaxChars`](#bashoutputmaxchars) | Legen Sie fest, wie viel der [Ausgabe](/docs/de/tools-reference#output-limits) eines erfolgreichen Befehls Claude inline erhält | Memory and context | Any file |

629| [`blockedMarketplaces`](#blockedmarketplaces) | Blockieren Sie [Plugin-Marketplace](/docs/de/plugin-marketplaces)-Quellen für Ihre Organisation | Plugins and skills | Managed |629| [`blockedMarketplaces`](#blockedmarketplaces) | Blockieren Sie [Plugin-Marketplace](/docs/de/plugins/overview)-Quellen für Ihre Organisation | Plugins and skills | Managed |

630| [`browserExternalPageTools`](#browserexternalpagetools) | Halten Sie Claudes Tools auf externen Seiten im [Desktop](/docs/de/desktop)-Browser-Bereich aus | Tools | Managed |630| [`browserExternalPageTools`](#browserexternalpagetools) | Halten Sie Claudes Tools auf externen Seiten im [Desktop](/docs/de/desktop)-Browser-Bereich aus | Tools | Managed |

631| [`channelsEnabled`](#channelsenabled) | Ermöglichen Sie [Kanäle](/docs/de/channels#enable-channels-for-your-organization) für Ihre Organisation | Plugins and skills | Managed |631| [`channelsEnabled`](#channelsenabled) | Ermöglichen Sie [Kanäle](/docs/de/channels#enable-channels-for-your-organization) für Ihre Organisation | Plugins and skills | Managed |

632| [`claudeMd`](#claudemd) | Injizieren Sie organisationsweite [CLAUDE.md](/docs/de/memory#deploy-organization-wide-claude-md)-Anweisungen aus verwalteten Einstellungen | Memory and context | Managed |632| [`claudeMd`](#claudemd) | Injizieren Sie organisationsweite [CLAUDE.md](/docs/de/memory#deploy-organization-wide-claude-md)-Anweisungen aus verwalteten Einstellungen | Memory and context | Managed |


647| [`disableBrowserExternalNavigation`](#disablebrowserexternalnavigation) | Beschränken Sie den [Desktop](/docs/de/desktop)-Browser-Bereich auf localhost für Personen und Claude | Tools | Managed |647| [`disableBrowserExternalNavigation`](#disablebrowserexternalnavigation) | Beschränken Sie den [Desktop](/docs/de/desktop)-Browser-Bereich auf localhost für Personen und Claude | Tools | Managed |

648| [`disableBundledSkills`](#disablebundledskills) | Schalten Sie die [Skills](/docs/de/skills#bundled-skills) und [Workflows](/docs/de/workflows) aus, die mit Claude Code enthalten sind | Plugins and skills | Any file |648| [`disableBundledSkills`](#disablebundledskills) | Schalten Sie die [Skills](/docs/de/skills#bundled-skills) und [Workflows](/docs/de/workflows) aus, die mit Claude Code enthalten sind | Plugins and skills | Any file |

649| [`disableClaudeAiConnectors`](#disableclaudeaiconnectors) | Schalten Sie [claude.ai-Konnektoren](/docs/de/mcp#disable-claude-ai-connectors) aus, damit Claude Code sie nicht abruft | MCP | Any file |649| [`disableClaudeAiConnectors`](#disableclaudeaiconnectors) | Schalten Sie [claude.ai-Konnektoren](/docs/de/mcp#disable-claude-ai-connectors) aus, damit Claude Code sie nicht abruft | MCP | Any file |

650| [`disableCommandPluginSources`](#disablecommandpluginsources) | Blockieren Sie [Plugins](/docs/de/plugins), die durch Ausführung eines vom Marketplace deklarierten Befehls installiert werden | Plugins and skills | Managed |650| [`disableCommandPluginSources`](#disablecommandpluginsources) | Blockieren Sie [Plugins](/docs/de/plugins/overview), die durch Ausführung eines vom Marketplace deklarierten Befehls installiert werden | Plugins and skills | Managed |

651| [`disableDeepLinkRegistration`](#disabledeeplinkregistration) | Verhindern Sie, dass Claude Code den [`claude-cli://`-Handler](/docs/de/deep-links) registriert | Remote, desktop, and notifications | Any file |651| [`disableDeepLinkRegistration`](#disabledeeplinkregistration) | Verhindern Sie, dass Claude Code den [`claude-cli://`-Handler](/docs/de/deep-links) registriert | Remote, desktop, and notifications | Any file |

652| [`disableDesktopLocalSessions`](#disabledesktoplocalsessions) | Schalten Sie [Desktop Code-Sitzungen](/docs/de/desktop#local-sessions-on-managed-devices) aus, die auf dem Gerät ausgeführt werden, und lassen Sie SSH zu anderen Hosts und Cloud | Remote, desktop, and notifications | Managed |652| [`disableDesktopLocalSessions`](#disabledesktoplocalsessions) | Schalten Sie [Desktop Code-Sitzungen](/docs/de/desktop#local-sessions-on-managed-devices) aus, die auf dem Gerät ausgeführt werden, und lassen Sie SSH zu anderen Hosts und Cloud | Remote, desktop, and notifications | Managed |

653| [`disabledMcpjsonServers`](#disabledmcpjsonservers) | Lehnen Sie spezifische Server aus der [`.mcp.json`](/docs/de/mcp#project-scope) eines Projekts ab | MCP | Any file |653| [`disabledMcpjsonServers`](#disabledmcpjsonservers) | Lehnen Sie spezifische Server aus der [`.mcp.json`](/docs/de/mcp#project-scope) eines Projekts ab | MCP | Any file |

654| [`disableMobileSimulatorTools`](#disablemobilesimulatortools) | Blockieren Sie Claudes Tools im [Desktop](/docs/de/desktop)-iOS-Simulator-Bereich | Tools | Managed |654| [`disableMobileSimulatorTools`](#disablemobilesimulatortools) | Blockieren Sie Claudes Tools im [Desktop](/docs/de/desktop)-iOS-Simulator-Bereich | Tools | Managed |

655| [`disableRemoteControl`](#disableremotecontrol) | Schalten Sie [Remote Control](/docs/de/remote-control) überall dort aus, wo es starten kann | Remote, desktop, and notifications | Any file |655| [`disableRemoteControl`](#disableremotecontrol) | Schalten Sie [Remote Control](/docs/de/remote-control) überall dort aus, wo es starten kann | Remote, desktop, and notifications | Any file |

656| [`disableSideloadFlags`](#disablesideloadflags) | Lehnen Sie die CLI-Flags ab, die [Plugins](/docs/de/plugins), [Subagenten](/docs/de/sub-agents) und [MCP-Server](/docs/de/mcp) sideloaden | Enterprise and managed settings | Managed |656| [`disableSideloadFlags`](#disablesideloadflags) | Lehnen Sie die CLI-Flags ab, die [Plugins](/docs/de/plugins/overview), [Subagenten](/docs/de/sub-agents) und [MCP-Server](/docs/de/mcp) sideloaden | Enterprise and managed settings | Managed |

657| [`disableSkillShellExecution`](#disableskillshellexecution) | Verhindern Sie, dass [Skills](/docs/de/skills) und benutzerdefinierte Befehle Inline-Shell ausführen | Plugins and skills | Any file |657| [`disableSkillShellExecution`](#disableskillshellexecution) | Verhindern Sie, dass [Skills](/docs/de/skills) und benutzerdefinierte Befehle Inline-Shell ausführen | Plugins and skills | Any file |

658| [`disableWorkflows`](#disableworkflows) | Schalten Sie [dynamische Workflows](/docs/de/workflows) für alle aus; verwenden Sie `enableWorkflows` für sich selbst | Hooks and automation | Any file |658| [`disableWorkflows`](#disableworkflows) | Schalten Sie [dynamische Workflows](/docs/de/workflows) für alle aus; verwenden Sie `enableWorkflows` für sich selbst | Hooks and automation | Any file |

659| [`editorMode`](#editormode) | Verwenden Sie [vim-Tastenbindungen](/docs/de/interactive-mode#vim-editor-mode) in der Eingabeaufforderung | Interface and terminal | Any file |659| [`editorMode`](#editormode) | Verwenden Sie [vim-Tastenbindungen](/docs/de/interactive-mode#vim-editor-mode) in der Eingabeaufforderung | Interface and terminal | Any file |


662| [`enableAllProjectMcpServers`](#enableallprojectmcpservers) | Genehmigen Sie jeden Server in Projekt-[`.mcp.json`](/docs/de/mcp#project-server-approvals-and-workspace-trust)-Dateien ohne Aufforderung | MCP | Any file |662| [`enableAllProjectMcpServers`](#enableallprojectmcpservers) | Genehmigen Sie jeden Server in Projekt-[`.mcp.json`](/docs/de/mcp#project-server-approvals-and-workspace-trust)-Dateien ohne Aufforderung | MCP | Any file |

663| [`enableArtifact`](#enableartifact) | Schalten Sie das [Artifact-Tool](/docs/de/artifacts) mit einem `false` in einer beliebigen Datei aus; keine Datei kann es wieder einschalten | Remote, desktop, and notifications | Any file |663| [`enableArtifact`](#enableartifact) | Schalten Sie das [Artifact-Tool](/docs/de/artifacts) mit einem `false` in einer beliebigen Datei aus; keine Datei kann es wieder einschalten | Remote, desktop, and notifications | Any file |

664| [`enabledMcpjsonServers`](#enabledmcpjsonservers) | Genehmigen Sie spezifische Server aus der [`.mcp.json`](/docs/de/mcp#project-server-approvals-and-workspace-trust) eines Projekts | MCP | Any file |664| [`enabledMcpjsonServers`](#enabledmcpjsonservers) | Genehmigen Sie spezifische Server aus der [`.mcp.json`](/docs/de/mcp#project-server-approvals-and-workspace-trust) eines Projekts | MCP | Any file |

665| [`enabledPlugins`](#enabledplugins) | Schalten Sie einzelne [Plugins](/docs/de/plugins) pro Bereich ein oder aus | Plugins and skills | Any file |665| [`enabledPlugins`](#enabledplugins) | Schalten Sie einzelne [Plugins](/docs/de/plugins/overview) pro Bereich ein oder aus | Plugins and skills | Any file |

666| [`enableWorkflows`](#enableworkflows) | Schalten Sie [dynamische Workflows](/docs/de/workflows) gegen den Standard Ihres Plans ein oder aus | Hooks and automation | Any file |666| [`enableWorkflows`](#enableworkflows) | Schalten Sie [dynamische Workflows](/docs/de/workflows) gegen den Standard Ihres Plans ein oder aus | Hooks and automation | Any file |

667| [`enforceAvailableModels`](#enforceavailablemodels) | Halten Sie die [`/model`-Standardauswahl](/docs/de/model-config#enforce-the-allowlist-for-the-default-model) innerhalb Ihrer `availableModels`-Zulassungsliste | Model and responses | Any file |667| [`enforceAvailableModels`](#enforceavailablemodels) | Halten Sie die [`/model`-Standardauswahl](/docs/de/model-config#enforce-the-allowlist-for-the-default-model) innerhalb Ihrer `availableModels`-Zulassungsliste | Model and responses | Any file |

668| [`env`](#env) | Legen Sie [Umgebungsvariablen](/docs/de/env-vars#in-settings-files) für jede Sitzung und ihre Unterprozesse fest | Memory and context | Any file |668| [`env`](#env) | Legen Sie [Umgebungsvariablen](/docs/de/env-vars#in-settings-files) für jede Sitzung und ihre Unterprozesse fest | Memory and context | Any file |

669| [`externalEditorContext`](#externaleditorcontext) | Zeigen Sie Claudes letzte Antwort als Kommentare an, wenn Sie [Strg+G](/docs/de/interactive-mode#general-controls) drücken, um zu bearbeiten | Global config settings | Global config |669| [`externalEditorContext`](#externaleditorcontext) | Zeigen Sie Claudes letzte Antwort als Kommentare an, wenn Sie [Strg+G](/docs/de/interactive-mode#general-controls) drücken, um zu bearbeiten | Global config settings | Global config |

670| [`extraKnownMarketplaces`](#extraknownmarketplaces) | Registrieren Sie [Marketplaces](/docs/de/plugin-marketplaces) für ein Repository oder eine Organisation | Plugins and skills | Any file |670| [`extraKnownMarketplaces`](#extraknownmarketplaces) | Registrieren Sie [Marketplaces](/docs/de/plugins/overview) für ein Repository oder eine Organisation | Plugins and skills | Any file |

671| [`fallbackModel`](#fallbackmodel) | Benennen Sie [Backup-Modelle](/docs/de/model-config#fallback-model-chains) für den Fall, dass das primäre überlastet ist | Model and responses | Any file |671| [`fallbackModel`](#fallbackmodel) | Benennen Sie [Backup-Modelle](/docs/de/model-config#fallback-model-chains) für den Fall, dass das primäre überlastet ist | Model and responses | Any file |

672| [`fastMode`](#fastmode) | Schalten Sie [Fast-Modus](/docs/de/fast-mode) für Sitzungen ein, in denen er verfügbar ist | Model and responses | Any file |672| [`fastMode`](#fastmode) | Schalten Sie [Fast-Modus](/docs/de/fast-mode) für Sitzungen ein, in denen er verfügbar ist | Model and responses | Any file |

673| [`fastModePerSessionOptIn`](#fastmodepersessionoptin) | Erfordern Sie, dass Personen [Fast-Modus](/docs/de/fast-mode) in jeder Sitzung einschalten | Model and responses | Any file |673| [`fastModePerSessionOptIn`](#fastmodepersessionoptin) | Erfordern Sie, dass Personen [Fast-Modus](/docs/de/fast-mode) in jeder Sitzung einschalten | Model and responses | Any file |


712| [`permissions.deny`](#permissions-deny) | Blockieren Sie aufgelistete [Tool-Verwendungen](/docs/de/permissions#permission-rule-syntax), einschließlich Lesevorgänge von Dateien, die Geheimnisse enthalten | Permission settings | Any file |712| [`permissions.deny`](#permissions-deny) | Blockieren Sie aufgelistete [Tool-Verwendungen](/docs/de/permissions#permission-rule-syntax), einschließlich Lesevorgänge von Dateien, die Geheimnisse enthalten | Permission settings | Any file |

713| [`permissions.disableBypassPermissionsMode`](#permissions-disablebypasspermissionsmode) | Verhindern Sie, dass jemand den [bypassPermissions-Modus](/docs/de/permission-modes#skip-all-checks-with-bypasspermissions-mode) betritt | Permission settings | Any file |713| [`permissions.disableBypassPermissionsMode`](#permissions-disablebypasspermissionsmode) | Verhindern Sie, dass jemand den [bypassPermissions-Modus](/docs/de/permission-modes#skip-all-checks-with-bypasspermissions-mode) betritt | Permission settings | Any file |

714| [`plansDirectory`](#plansdirectory) | Wählen Sie, wo [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) Plan-Dateien schreibt | Memory and context | Any file |714| [`plansDirectory`](#plansdirectory) | Wählen Sie, wo [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) Plan-Dateien schreibt | Memory and context | Any file |

715| [`pluginConfigs`](#pluginconfigs) | Speichern Sie die Antworten, die Sie dem Konfigurationsdialog eines [Plugins](/docs/de/plugins) gegeben haben | Plugins and skills | User or managed |715| [`pluginConfigs`](#pluginconfigs) | Speichern Sie die Antworten, die Sie dem Konfigurationsdialog eines [Plugins](/docs/de/plugins/overview) gegeben haben | Plugins and skills | User or managed |

716| [`pluginSuggestionMarketplaces`](#pluginsuggestionmarketplaces) | Wählen Sie, welche [Marketplaces](/docs/de/plugin-marketplaces#managed-marketplace-restrictions) Plugin-Installationsvorschläge in `/plugin` anzeigen können | Plugins and skills | Managed |716| [`pluginSuggestionMarketplaces`](#pluginsuggestionmarketplaces) | Wählen Sie, welche [Marketplaces](/docs/de/plugins/overview) Plugin-Installationsvorschläge in `/plugin` anzeigen können | Plugins and skills | Managed |

717| [`pluginTrustMessage`](#plugintrustmessage) | Fügen Sie Ihren eigenen Text zur [Plugin](/docs/de/plugins)-Vertrauenswarnung hinzu | Plugins and skills | Managed |717| [`pluginTrustMessage`](#plugintrustmessage) | Fügen Sie Ihren eigenen Text zur [Plugin](/docs/de/plugins/overview)-Vertrauenswarnung hinzu | Plugins and skills | Managed |

718| [`policyHelper`](#policyhelper) | Führen Sie eine ausführbare Datei aus, die [verwaltete Einstellungen](/docs/de/managed-settings#compute-the-policy-with-a-helper-program) beim Start berechnet | Enterprise and managed settings | Managed |718| [`policyHelper`](#policyhelper) | Führen Sie eine ausführbare Datei aus, die [verwaltete Einstellungen](/docs/de/managed-settings#compute-the-policy-with-a-helper-program) beim Start berechnet | Enterprise and managed settings | Managed |

719| [`policyHelper.path`](#policyhelper-path) | Benennen Sie die [Helper-Ausführungsdatei](/docs/de/managed-settings#compute-the-policy-with-a-helper-program), die Claude Code ausführt | Enterprise and managed settings | Managed |719| [`policyHelper.path`](#policyhelper-path) | Benennen Sie die [Helper-Ausführungsdatei](/docs/de/managed-settings#compute-the-policy-with-a-helper-program), die Claude Code ausführt | Enterprise and managed settings | Managed |

720| [`policyHelper.refreshIntervalMs`](#policyhelper-refreshintervalms) | Führen Sie den [Helper](/docs/de/managed-settings#compute-the-policy-with-a-helper-program) im Hintergrund in einem Intervall erneut aus | Enterprise and managed settings | Managed |720| [`policyHelper.refreshIntervalMs`](#policyhelper-refreshintervalms) | Führen Sie den [Helper](/docs/de/managed-settings#compute-the-policy-with-a-helper-program) im Hintergrund in einem Intervall erneut aus | Enterprise and managed settings | Managed |


785| [`sshConfigs`](#sshconfigs) | Fügen Sie [SSH-Verbindungen](/docs/de/desktop#pre-configure-ssh-connections-for-your-team) zum Desktop-Umgebungs-Dropdown hinzu | Remote, desktop, and notifications | User or managed |785| [`sshConfigs`](#sshconfigs) | Fügen Sie [SSH-Verbindungen](/docs/de/desktop#pre-configure-ssh-connections-for-your-team) zum Desktop-Umgebungs-Dropdown hinzu | Remote, desktop, and notifications | User or managed |

786| [`sshHostAllowlist`](#sshhostallowlist) | Begrenzen Sie, welche Hosts [Desktop-SSH-Sitzungen](/docs/de/desktop#restrict-which-ssh-hosts-users-can-connect-to) erreichen können | Remote, desktop, and notifications | Managed |786| [`sshHostAllowlist`](#sshhostallowlist) | Begrenzen Sie, welche Hosts [Desktop-SSH-Sitzungen](/docs/de/desktop#restrict-which-ssh-hosts-users-can-connect-to) erreichen können | Remote, desktop, and notifications | Managed |

787| [`statusLine`](#statusline) | Führen Sie Ihren eigenen Befehl aus, um eine [Statuszeile](/docs/de/statusline) unter der Eingabeaufforderung zu rendern | Interface and terminal | Any file |787| [`statusLine`](#statusline) | Führen Sie Ihren eigenen Befehl aus, um eine [Statuszeile](/docs/de/statusline) unter der Eingabeaufforderung zu rendern | Interface and terminal | Any file |

788| [`strictKnownMarketplaces`](#strictknownmarketplaces) | Zulassungsliste der [Marketplace](/docs/de/plugin-marketplaces)-Quellen, die Benutzer hinzufügen und installieren können | Plugins and skills | Managed |788| [`strictKnownMarketplaces`](#strictknownmarketplaces) | Zulassungsliste der [Marketplace](/docs/de/plugins/overview)-Quellen, die Benutzer hinzufügen und installieren können | Plugins and skills | Managed |

789| [`strictPluginOnlyCustomization`](#strictpluginonlycustomization) | Blockieren Sie [Skills](/docs/de/skills), [Agenten](/docs/de/sub-agents), [Hooks](/docs/de/hooks) und [MCP-Server](/docs/de/mcp) aus Benutzer- und Projektquellen | Plugins and skills | Managed |789| [`strictPluginOnlyCustomization`](#strictpluginonlycustomization) | Blockieren Sie [Skills](/docs/de/skills), [Agenten](/docs/de/sub-agents), [Hooks](/docs/de/hooks) und [MCP-Server](/docs/de/mcp) aus Benutzer- und Projektquellen | Plugins and skills | Managed |

790| [`strictPluginOnlyCustomization.agents`](#strictpluginonlycustomization-agents) | Sperren Sie [Agenten](/docs/de/sub-agents) auf Plugin- und verwaltete Quellen | Plugins and skills | Managed |790| [`strictPluginOnlyCustomization.agents`](#strictpluginonlycustomization-agents) | Sperren Sie [Agenten](/docs/de/sub-agents) auf Plugin- und verwaltete Quellen | Plugins and skills | Managed |

791| [`strictPluginOnlyCustomization.hooks`](#strictpluginonlycustomization-hooks) | Sperren Sie [Hooks](/docs/de/hooks) auf Plugin- und verwaltete Quellen | Plugins and skills | Managed |791| [`strictPluginOnlyCustomization.hooks`](#strictpluginonlycustomization-hooks) | Sperren Sie [Hooks](/docs/de/hooks) auf Plugin- und verwaltete Quellen | Plugins and skills | Managed |


794| [`subagentPromptCacheTtl`](#subagentpromptcachettl) | Wählen Sie die [Prompt-Cache-Lebensdauer](/docs/de/prompt-caching#cache-lifetime) für Subagenten und andere Anfragen außerhalb der Hauptkonversation | Model and responses | Any file |794| [`subagentPromptCacheTtl`](#subagentpromptcachettl) | Wählen Sie die [Prompt-Cache-Lebensdauer](/docs/de/prompt-caching#cache-lifetime) für Subagenten und andere Anfragen außerhalb der Hauptkonversation | Model and responses | Any file |

795| [`subagentStatusLine`](#subagentstatusline) | Schreiben Sie Zeilen in der [Subagenten](/docs/de/sub-agents)-Aufgabenanzeige mit Ihrem eigenen Befehl um | Interface and terminal | Any file |795| [`subagentStatusLine`](#subagentstatusline) | Schreiben Sie Zeilen in der [Subagenten](/docs/de/sub-agents)-Aufgabenanzeige mit Ihrem eigenen Befehl um | Interface and terminal | Any file |

796| [`switchModelsOnFlag`](#switchmodelsonflag) | Wechseln Sie Modelle automatisch oder pausieren Sie, wenn ein [Sicherheitsklassifizierer](/docs/de/model-config#ask-before-switching) eine Anfrage kennzeichnet | Model and responses | Any file |796| [`switchModelsOnFlag`](#switchmodelsonflag) | Wechseln Sie Modelle automatisch oder pausieren Sie, wenn ein [Sicherheitsklassifizierer](/docs/de/model-config#ask-before-switching) eine Anfrage kennzeichnet | Model and responses | Any file |

797| [`syncClaudeAiPlugins`](#syncclaudeaiplugins) | Beenden Sie das Laden der [auf Ihrem claude.ai-Konto aktivierten Plugins](/docs/de/plugins-reference#synced-plugins) und beenden Sie das Herunterladen neuer | Plugins and skills | User, local, or managed |797| [`syncClaudeAiPlugins`](#syncclaudeaiplugins) | Beenden Sie das Laden der [auf Ihrem claude.ai-Konto aktivierten Plugins](/docs/de/plugins/overview) und beenden Sie das Herunterladen neuer | Plugins and skills | User, local, or managed |

798| [`syncClaudeAiSkills`](#syncclaudeaiskills) | Beenden Sie das Laden der [auf Ihrem claude.ai-Konto aktivierten Skills](/docs/de/skills#how-synced-skills-behave) und beenden Sie das Herunterladen neuer | Plugins and skills | User, local, or managed |798| [`syncClaudeAiSkills`](#syncclaudeaiskills) | Beenden Sie das Laden der [auf Ihrem claude.ai-Konto aktivierten Skills](/docs/de/skills#how-synced-skills-behave) und beenden Sie das Herunterladen neuer | Plugins and skills | User, local, or managed |

799| [`syntaxHighlightingDisabled`](#syntaxhighlightingdisabled) | Schalten Sie die Syntaxhervorhebung in Diffs und Code-Blöcken aus | Interface and terminal | Any file |799| [`syntaxHighlightingDisabled`](#syntaxhighlightingdisabled) | Schalten Sie die Syntaxhervorhebung in Diffs und Code-Blöcken aus | Interface and terminal | Any file |

800| [`taskOutputMaxChars`](#taskoutputmaxchars) | Entfernt in v2.1.277, zusammen mit dem `TaskOutput`-Tool, das es dimensioniert | Memory and context | Any file |800| [`taskOutputMaxChars`](#taskoutputmaxchars) | Entfernt in v2.1.277, zusammen mit dem `TaskOutput`-Tool, das es dimensioniert | Memory and context | Any file |


2256 `sandbox.credentials`2256 `sandbox.credentials`

2257</h3>2257</h3>

2258 2258 

2259Deklarieren Sie die Anmeldedateien und Umgebungsvariablen, um [sie vor sandboxed Befehlen zu schützen](/docs/de/sandboxing#protect-credentials). Jeder Eintrag benennt eine Datei `path` oder eine Variable `name` und einen `mode`: `deny` verbirgt die Anmeldedaten in der Sandbox, und `mask` zeigt sandboxed Befehlen einen Platzhalter, während der [Sandbox-Proxy](/docs/de/sandboxing#mask-credentials) den echten Wert bei ausgehenden Anfragen ersetzt. Claude Code schützt nur die Einträge, die Sie auflisten; es gibt keine integrierte Anmeldedaten-Ablehnungsliste. Erfordert Claude Code v2.1.187 oder später.2259Deklarieren Sie die Anmeldedateien und Umgebungsvariablen, um [sie vor sandboxed Befehlen zu schützen](/docs/de/sandboxing#protect-credentials). Jeder Eintrag benennt eine Datei `path` oder eine Variable `name` und einen `mode`: `deny` verbirgt die Anmeldedaten in der Sandbox, und `mask` zeigt sandboxed Befehlen einen Platzhalter, während der [Sandbox-Proxy](/docs/de/sandboxing#mask-credentials) den echten Wert bei ausgehenden Anfragen ersetzt. Claude Code schützt nur die Einträge, die Sie auflisten; es gibt keine integrierte Anmeldedaten-Ablehnungsliste.

2260 2260 

2261* **Bereich**: [`Any file`](#scopes). Claude Code beachtet `mask`-Einträge, `allowPlaintextInject`, `awsPairs` und `sigv4` nur aus Benutzereinstellungen, verwalteten Einstellungen und dem `--settings`-Flag.2261* **Bereich**: [`Any file`](#scopes). Claude Code beachtet `mask`-Einträge, `allowPlaintextInject`, `awsPairs` und `sigv4` nur aus Benutzereinstellungen, verwalteten Einstellungen und dem `--settings`-Flag.

2262* **Typ**: Objekt mit `files`, `envVars`, `allowPlaintextInject`, `awsPairs` und `sigv4`2262* **Typ**: Objekt mit `files`, `envVars`, `allowPlaintextInject`, `awsPairs` und `sigv4`


2275}2275}

2276```2276```

2277 2277 

2278Der `deny`-Dateischutz ist Teil der Dateisystem-Schicht, daher gilt er nicht, wenn Sie [Dateisystem-Isolierung deaktivieren](/docs/de/sandboxing#disable-filesystem-isolation); der Umgebungsvariablenschutz gilt weiterhin. Erfordert Claude Code v2.1.187 oder später.2278Der `deny`-Dateischutz ist Teil der Dateisystem-Schicht, daher gilt er nicht, wenn Sie [Dateisystem-Isolierung deaktivieren](/docs/de/sandboxing#disable-filesystem-isolation); der Umgebungsvariablenschutz gilt weiterhin.

2279 2279 

2280<h4 id="invalid-credential-entries-in-managed-settings">2280<h4 id="invalid-credential-entries-in-managed-settings">

2281 Ungültige Anmeldedaten-Einträge in verwalteten Einstellungen2281 Ungültige Anmeldedaten-Einträge in verwalteten Einstellungen


2293 `sandbox.credentials.files`2293 `sandbox.credentials.files`

2294</h3>2294</h3>

2295 2295 

2296Schützen Sie Anmeldedateien oder Verzeichnisse vor sandboxed Befehlen. Mit `"mode": "deny"` blockiert Claude Code Lesevorgänge des Pfads in der Sandbox, der gleiche Lesblock wie [`sandbox.filesystem.denyRead`](#sandbox-filesystem-denyread). Mit `"mode": "mask"` lesen sandboxed Befehle auf Linux und WSL2 eine Sentinel-Kopie der Datei, und der Sandbox-Proxy ersetzt den echten Wert bei ausgehenden Anfragen an die `injectHosts` dieses Eintrags; auf macOS ist die Datei in der Sandbox stattdessen nicht lesbar. Erfordert Claude Code v2.1.187 oder später, und `"mode": "mask"` erfordert v2.1.221 oder später.2296Schützen Sie Anmeldedateien oder Verzeichnisse vor sandboxed Befehlen. Mit `"mode": "deny"` blockiert Claude Code Lesevorgänge des Pfads in der Sandbox, der gleiche Lesblock wie [`sandbox.filesystem.denyRead`](#sandbox-filesystem-denyread). Mit `"mode": "mask"` lesen sandboxed Befehle auf Linux und WSL2 eine Sentinel-Kopie der Datei, und der Sandbox-Proxy ersetzt den echten Wert bei ausgehenden Anfragen an die `injectHosts` dieses Eintrags; auf macOS ist die Datei in der Sandbox stattdessen nicht lesbar. `"mode": "mask"` erfordert Claude Code v2.1.221 oder später.

2297 2297 

2298* **Bereich**: [`Any file`](#scopes). Claude Code lässt `mask`-Einträge aus Projekt `.claude/settings.json` und lokal `.claude/settings.local.json` fallen.2298* **Bereich**: [`Any file`](#scopes). Claude Code lässt `mask`-Einträge aus Projekt `.claude/settings.json` und lokal `.claude/settings.local.json` fallen.

2299* **Typ**: Array von Objekten, jedes mit `path` und einem `mode` von `"deny"` oder `"mask"`, plus die optionalen [Maskierungsfelder für Dateien](#mask-fields-for-files)2299* **Typ**: Array von Objekten, jedes mit `path` und einem `mode` von `"deny"` oder `"mask"`, plus die optionalen [Maskierungsfelder für Dateien](#mask-fields-for-files)


2314}2314}

2315```2315```

2316 2316 

2317Pfade verwenden die gleichen [Präfixe](#sandbox-path-prefixes) wie die `sandbox.filesystem.*`-Einstellungen, und Claude Code führt die Arrays aus jedem Einstellungsbereich zusammen, den die Sitzung lädt. [Protect credentials](/docs/de/sandboxing#protect-credentials) behandelt das, was weiterhin aus Quellen gilt, die Sie mit `--setting-sources` ausschließen. Erfordert Claude Code v2.1.187 oder später; `mask`-Einträge erfordern v2.1.221 oder später.2317Pfade verwenden die gleichen [Präfixe](#sandbox-path-prefixes) wie die `sandbox.filesystem.*`-Einstellungen, und Claude Code führt die Arrays aus jedem Einstellungsbereich zusammen, den die Sitzung lädt. [Protect credentials](/docs/de/sandboxing#protect-credentials) behandelt das, was weiterhin aus Quellen gilt, die Sie mit `--setting-sources` ausschließen. `mask`-Einträge erfordern Claude Code v2.1.221 oder später.

2318 2318 

2319`mask`-Ersetzung läuft nur durch den Sandbox-Proxy, daher setzen Sie [`sandbox.network.tlsTerminate`](#sandbox-network-tlsterminate) oder [`allowPlaintextInject`](#sandbox-credentials-allowplaintextinject) für Plain-HTTP-Test-Netzwerke. `mask` gilt für eine einzelne Datei, daher listen Sie jede Anmeldedatei einzeln auf. Claude Code akzeptiert aber ignoriert die `mask`-Felder auf einem `deny`-Eintrag. [Mask credential files](/docs/de/sandboxing#mask-credential-files) behandelt, welche Einstellungsquellen beachtet werden und wann ein Eintrag auf `deny` zurückfällt.2319`mask`-Ersetzung läuft nur durch den Sandbox-Proxy, daher setzen Sie [`sandbox.network.tlsTerminate`](#sandbox-network-tlsterminate) oder [`allowPlaintextInject`](#sandbox-credentials-allowplaintextinject) für Plain-HTTP-Test-Netzwerke. `mask` gilt für eine einzelne Datei, daher listen Sie jede Anmeldedatei einzeln auf. Claude Code akzeptiert aber ignoriert die `mask`-Felder auf einem `deny`-Eintrag. [Mask credential files](/docs/de/sandboxing#mask-credential-files) behandelt, welche Einstellungsquellen beachtet werden und wann ein Eintrag auf `deny` zurückfällt.

2320 2320 


2370 `sandbox.credentials.envVars`2370 `sandbox.credentials.envVars`

2371</h3>2371</h3>

2372 2372 

2373Schützen Sie Umgebungsvariablen vor sandboxed Befehlen. Mit `"mode": "deny"` entfernt Claude Code die Variable aus der Umgebung von sandboxed Befehlen. Mit `"mode": "mask"` sehen sandboxed Befehle einen pro-Sitzungs-Sentinel-Wert, und der Sandbox-Proxy ersetzt den echten Wert bei ausgehenden Anfragen an die `injectHosts` dieses Eintrags, daher behalten Tools wie `gh` und `npm` die Authentifizierung bei, ohne jemals die echte Anmeldedaten zu halten. Erfordert Claude Code v2.1.187 oder später, und `"mode": "mask"` erfordert v2.1.199 oder später.2373Schützen Sie Umgebungsvariablen vor sandboxed Befehlen. Mit `"mode": "deny"` entfernt Claude Code die Variable aus der Umgebung von sandboxed Befehlen. Mit `"mode": "mask"` sehen sandboxed Befehle einen pro-Sitzungs-Sentinel-Wert, und der Sandbox-Proxy ersetzt den echten Wert bei ausgehenden Anfragen an die `injectHosts` dieses Eintrags, daher behalten Tools wie `gh` und `npm` die Authentifizierung bei, ohne jemals die echte Anmeldedaten zu halten. `"mode": "mask"` erfordert Claude Code v2.1.199 oder später.

2374 2374 

2375* **Bereich**: [`Any file`](#scopes). Claude Code lässt `mask`-Einträge aus Projekt `.claude/settings.json` und lokal `.claude/settings.local.json` fallen.2375* **Bereich**: [`Any file`](#scopes). Claude Code lässt `mask`-Einträge aus Projekt `.claude/settings.json` und lokal `.claude/settings.local.json` fallen.

2376* **Typ**: Array von Objekten, jedes mit `name` und einem `mode` von `"deny"` oder `"mask"`, plus die optionalen [Maskierungsfelder für Umgebungsvariablen](#mask-fields-for-environment-variables)2376* **Typ**: Array von Objekten, jedes mit `name` und einem `mode` von `"deny"` oder `"mask"`, plus die optionalen [Maskierungsfelder für Umgebungsvariablen](#mask-fields-for-environment-variables)


2391}2391}

2392```2392```

2393 2393 

2394Der `name` muss mit einem Buchstaben oder Unterstrich beginnen und darf nur Buchstaben, Ziffern und Unterstriche enthalten. Claude Code führt die Arrays aus jedem Einstellungsbereich zusammen, den die Sitzung lädt, und wendet `deny` an, wenn die gleiche Variable mit beiden Modi erscheint. [Protect credentials](/docs/de/sandboxing#protect-credentials) behandelt das, was weiterhin aus Quellen gilt, die Sie mit `--setting-sources` ausschließen. Erfordert Claude Code v2.1.187 oder später; `mask`-Einträge erfordern v2.1.199 oder später.2394Der `name` muss mit einem Buchstaben oder Unterstrich beginnen und darf nur Buchstaben, Ziffern und Unterstriche enthalten. Claude Code führt die Arrays aus jedem Einstellungsbereich zusammen, den die Sitzung lädt, und wendet `deny` an, wenn die gleiche Variable mit beiden Modi erscheint. [Protect credentials](/docs/de/sandboxing#protect-credentials) behandelt das, was weiterhin aus Quellen gilt, die Sie mit `--setting-sources` ausschließen. `mask`-Einträge erfordern Claude Code v2.1.199 oder später.

2395 2395 

2396`mask`-Ersetzung läuft nur durch den Sandbox-Proxy, daher setzen Sie [`sandbox.network.tlsTerminate`](#sandbox-network-tlsterminate) oder [`allowPlaintextInject`](#sandbox-credentials-allowplaintextinject) für Plain-HTTP-Test-Netzwerke; siehe [Mask environment variables](/docs/de/sandboxing#mask-environment-variables). Claude Code akzeptiert aber ignoriert die `mask`-Felder auf einem `deny`-Eintrag.2396`mask`-Ersetzung läuft nur durch den Sandbox-Proxy, daher setzen Sie [`sandbox.network.tlsTerminate`](#sandbox-network-tlsterminate) oder [`allowPlaintextInject`](#sandbox-credentials-allowplaintextinject) für Plain-HTTP-Test-Netzwerke; siehe [Mask environment variables](/docs/de/sandboxing#mask-environment-variables). Claude Code akzeptiert aber ignoriert die `mask`-Felder auf einem `deny`-Eintrag.

2397 2397 


2954 `env`2954 `env`

2955</h3>2955</h3>

2956 2956 

2957Legen Sie Umgebungsvariablen für jede Sitzung und für die Unterprozesse fest, die Claude Code von ihr aus startet. Jede Variable in der [Umgebungsvariablenreferenz](/docs/de/env-vars) kann hier gehen, was ist, wie Sie eine auf jede Sitzung anwenden oder sie in Ihrem Team verteilen.2957Legen Sie Umgebungsvariablen für jede Sitzung und für die Unterprozesse fest, die Claude Code von ihr aus startet. Die meisten Variablen in der [Umgebungsvariablenreferenz](/docs/de/env-vars) können hier gehen, was ist, wie Sie eine auf jede Sitzung anwenden oder sie in Ihrem Team verteilen. Projekt- und lokale Einstellungen können [einige davon](#variables-claude-code-ignores-in-env) nicht setzen.

2958 2958 

2959* **Bereich**: [`Any file`](#scopes)2959* **Bereich**: [`Any file`](#scopes)

2960* **Typ**: Objekt, das Variablennamen auf String-Werte abbildet2960* **Typ**: Objekt, das Variablennamen auf String-Werte abbildet


2975 Wie `env`-Werte mit Ihrer Shell interagieren2975 Wie `env`-Werte mit Ihrer Shell interagieren

2976</h4>2976</h4>

2977 2977 

2978* Ein Wert hier überschreibt die gleiche Variable, die in Ihrer Shell exportiert wird, und wenn mehr als eine Einstellungsdatei eine Variable setzt, gilt die [höchste Priorität](/docs/de/settings#settings-precedence).2978* Ein Wert hier überschreibt die gleiche Variable, die in Ihrer Shell exportiert wird, und wenn mehr als eine Einstellungsdatei eine Variable setzt, gilt die [höchste Priorität](/docs/de/settings#settings-precedence). [Variablen, die Claude Code in `env` ignoriert](#variables-claude-code-ignores-in-env) listet die Ausnahmen für Projekt- und lokale Einstellungen auf.

2979* Um einen Shell-Export zu stornieren, setzen Sie die Variable auf `""`. Claude Code behandelt einen leeren Wert als nicht gesetzt für die Anbieterauswahl, und Unterprozesse erben den leeren Wert.2979* Um einen Shell-Export zu stornieren, setzen Sie die Variable auf `""`. Claude Code behandelt einen leeren Wert als nicht gesetzt für die Anbieterauswahl, und Unterprozesse erben den leeren Wert.

2980* `NO_COLOR` und `FORCE_COLOR`, die hier gesetzt sind, erreichen nur Unterprozesse. Um die Farben der Claude Code-Oberfläche selbst zu ändern, setzen Sie sie in Ihrer Shell, bevor Sie `claude` starten.2980* `NO_COLOR` und `FORCE_COLOR`, die hier gesetzt sind, erreichen nur Unterprozesse. Um die Farben der Claude Code-Oberfläche selbst zu ändern, setzen Sie sie in Ihrer Shell, bevor Sie `claude` starten.

2981* Werte hier sind Klartext in der Einstellungsdatei und erreichen jeden Unterprozess, den Claude Code startet. Für ein OTLP-Bearer-Token, das sich dreht, verwenden Sie [`otelHeadersHelper`](#otelheadershelper); für API-Anmeldedaten verwenden Sie [`apiKeyHelper`](#apikeyhelper).2981* Werte hier sind Klartext in der Einstellungsdatei und erreichen jeden Unterprozess, den Claude Code startet. Für ein OTLP-Bearer-Token, das sich dreht, verwenden Sie [`otelHeadersHelper`](#otelheadershelper); für API-Anmeldedaten verwenden Sie [`apiKeyHelper`](#apikeyhelper).


2986 2986 

2987* Aus Benutzereinstellungen, `--settings` und verwalteten Einstellungen: beim Start und erneut in der laufenden Sitzung, wenn eine gespeicherte Änderung die zusammengeführte `env` ändert.2987* Aus Benutzereinstellungen, `--settings` und verwalteten Einstellungen: beim Start und erneut in der laufenden Sitzung, wenn eine gespeicherte Änderung die zusammengeführte `env` ändert.

2988* Aus Projekt- und lokalen Einstellungen: nachdem Sie dem Workspace vertrauen, oder beim Start im `-p`-Modus, der niemals den Vertrauensdialog anzeigt, und erneut, wenn eine gespeicherte Änderung die zusammengeführte `env` ändert.2988* Aus Projekt- und lokalen Einstellungen: nachdem Sie dem Workspace vertrauen, oder beim Start im `-p`-Modus, der niemals den Vertrauensdialog anzeigt, und erneut, wenn eine gespeicherte Änderung die zusammengeführte `env` ändert.

2989* Variablen, die Claude Code als sicher klassifiziert, wie Modellauswahl, Timeouts und Limits, Feature-Toggles und Telemetrie-Einstellungen: beim Start aus jeder Einstellungsdatei, außer den [Variablen, die Projekt- und lokale Einstellungen nicht setzen können](#variables-claude-code-ignores-in-env).2989* Variablen, die Claude Code als sicher klassifiziert, wie Modellauswahl, Timeouts und Limits, und Feature-Toggles: beim Start aus jeder Einstellungsdatei, außer den [Variablen, die Projekt- und lokale Einstellungen nicht setzen können](#variables-claude-code-ignores-in-env).

2990* Nachdem Sie die Sitzung mit `/cd` [verschieben](/docs/de/permissions#move-the-session-to-another-directory) auf v2.1.246 oder später: die `env`-Werte des neuen Verzeichnisses, zusätzlich zu denen des vorherigen Verzeichnisses.2990* Nachdem Sie die Sitzung mit `/cd` [verschieben](/docs/de/permissions#move-the-session-to-another-directory) auf v2.1.246 oder später: die `env`-Werte des neuen Verzeichnisses, zusätzlich zu denen des vorherigen Verzeichnisses.

2991 2991 

2992<h4 id="variables-claude-code-ignores-in-env">2992<h4 id="variables-claude-code-ignores-in-env">

2993 Variablen, die Claude Code in `env` ignoriert2993 Variablen, die Claude Code in `env` ignoriert

2994</h4>2994</h4>

2995 2995 

2996* Projekt- und lokale Einstellungen können keine Variablen setzen, die ein ausgechecktes Repository nicht kontrollieren sollte; setzen Sie diese stattdessen in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Claude Code löscht jede und protokolliert eine Warnung, die Sie mit `claude --debug` sehen können. Sie umfassen:2996* Projekt- und lokale Einstellungen können keine Variablen setzen, die ein ausgechecktes Repository nicht kontrollieren sollte; setzen Sie diese stattdessen in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Claude Code löscht jede, außer einigen Werten, die Telemetrie ausschalten, und protokolliert eine Warnung, die Sie mit `claude --debug` sehen können. Sie umfassen:

2997 2997 

2998 * Variablen, die wählen, wo Claude Code seine eigenen Dateien speichert oder schreibt: `CLAUDE_CONFIG_DIR`, `CLAUDE_CODE_TMPDIR` und die Betriebssystem-Verzeichnisvariablen wie `HOME`, `TMPDIR`, `TMP`, `TEMP` und die `XDG_*`-Familie.2998 * Variablen, die wählen, wo Claude Code seine eigenen Dateien speichert oder schreibt: `CLAUDE_CONFIG_DIR`, `CLAUDE_CODE_TMPDIR` und die Betriebssystem-Verzeichnisvariablen wie `HOME`, `TMPDIR`, `TMP`, `TEMP` und die `XDG_*`-Familie.

2999 * Variablen, die Sitzungsinhalte exportieren: [`OTEL_LOG_RAW_API_BODIES`](/docs/de/env-vars#variables) und das detaillierte Beta-Tracing-Paar `ENABLE_BETA_TRACING_DETAILED` und `BETA_TRACING_ENDPOINT`.2999 * Variablen, die Sitzungsinhalte exportieren: [`OTEL_LOG_RAW_API_BODIES`](/docs/de/env-vars#variables) und das detaillierte Beta-Tracing-Paar `ENABLE_BETA_TRACING_DETAILED` und `BETA_TRACING_ENDPOINT`.

3000 * Die [OpenTelemetry-Exporter](/docs/de/monitoring-usage)-Variablen, die Telemetrie aktivieren, wählen, wohin sie geht, oder wählen, welche Inhalte sie erfasst:

3001 

3002 * `CLAUDE_CODE_ENABLE_TELEMETRY`, plus das erweiterte Telemetrie-Beta-Paar `CLAUDE_CODE_ENHANCED_TELEMETRY_BETA` und `ENABLE_ENHANCED_TELEMETRY_BETA`

3003 * Die Exporter-Selektoren `OTEL_LOGS_EXPORTER`, `OTEL_METRICS_EXPORTER` und `OTEL_TRACES_EXPORTER`

3004 * Die Inhaltsvariablen `OTEL_LOG_USER_PROMPTS`, `OTEL_LOG_ASSISTANT_RESPONSES`, `OTEL_LOG_TOOL_CONTENT` und `OTEL_LOG_TOOL_DETAILS`

3005 * `OTEL_EXPORTER_OTLP_*`-Variablen, deren Namen auf `_ENDPOINT`, `_HEADERS`, `_PROTOCOL`, `_CERTIFICATE`, `_CLIENT_KEY` oder `_INSECURE` enden, in den generischen und pro-Signal-Formen, wie `OTEL_EXPORTER_OTLP_ENDPOINT` und `OTEL_EXPORTER_OTLP_METRICS_HEADERS`

3006 * `OTEL_EXPORTER_PROMETHEUS_HOST` und `OTEL_EXPORTER_PROMETHEUS_PORT`

3007 

3008 Nur diese Werte gelten weiterhin aus Projekt- und lokalen Einstellungen, da sie etwas ausschalten: `none` für die drei Exporter-Selektoren und ein Aus-Wert wie `0` für `OTEL_LOG_USER_PROMPTS`, `OTEL_LOG_TOOL_CONTENT` und `OTEL_LOG_TOOL_DETAILS`. Ein solcher Wert überschreibt die gleiche Variable in Ihren Benutzereinstellungen, aber nicht eine, die die Umgebung, von der Sie Claude Code starten, eine `--settings`-Datei oder verwaltete Einstellungen setzen.

3009 

3010 Wenn eine Projekt- oder lokale Einstellungsdatei eine Variable in dieser Gruppe setzt, zeigt eine lokale interaktive Sitzung beim Start einen Hinweis. Führen Sie `/status` oder `claude doctor` aus, um zu sehen, welche Claude Code ignoriert hat und welche Telemetrie ausgeschaltet haben; beide listen Namen auf, niemals Werte. Ein nicht-interaktiver Lauf mit `-p` oder eine Agent SDK-Sitzung zeigt keinen Hinweis, daher überprüfen Sie, ob Ihr Collector nach dem Upgrade noch Daten empfängt. Wenn nicht, setzen Sie die Variablen in Ihren Benutzereinstellungen, verwalteten Einstellungen, der Umgebung des Jobs oder einer Datei, die Sie mit `--settings` übergeben.

3011 

3012 Das Ignorieren dieser Gruppe in Projekt- und lokalen Einstellungen erfordert Claude Code v2.1.282 oder später.

3000 * Variablen, die ändern, wie Claude Code startet oder synchronisiert, wie `CLAUDE_CODE_PROCESS_WRAPPER`, `CLAUDE_CODE_SYNC_SKILLS`, `CLAUDE_CODE_SYNC_PLUGINS`, `CLAUDE_CODE_PLUGIN_CACHE_DIR` und `CLAUDE_CODE_PLUGIN_SEED_DIR`.3013 * Variablen, die ändern, wie Claude Code startet oder synchronisiert, wie `CLAUDE_CODE_PROCESS_WRAPPER`, `CLAUDE_CODE_SYNC_SKILLS`, `CLAUDE_CODE_SYNC_PLUGINS`, `CLAUDE_CODE_PLUGIN_CACHE_DIR` und `CLAUDE_CODE_PLUGIN_SEED_DIR`.

3001 3014 

3002 Vor v2.1.251 konnten Projekt- und lokale Einstellungen jede Variable in dieser Liste setzen, außer `HOME`, `XDG_CONFIG_HOME` und die Variablen, die ändern, wie Claude Code startet oder synchronisiert.3015 Vor v2.1.251 konnten Projekt- und lokale Einstellungen auch die Variablen in dieser Liste setzen, die wählen, wo Claude Code seine Dateien schreibt oder die Sitzungsinhalte exportieren, außer `HOME` und `XDG_CONFIG_HOME`.

3003* Identitätsvariablen, die Claude Codes Hosting-Umgebungen besitzen, wie `CLAUDE_CODE_REMOTE` und `CLAUDE_CODE_ACCOUNT_UUID`, werden aus jeder Datei ignoriert.3016* Identitätsvariablen, die Claude Codes Hosting-Umgebungen besitzen, wie `CLAUDE_CODE_REMOTE` und `CLAUDE_CODE_ACCOUNT_UUID`, werden aus jeder Datei ignoriert.

3004* [`CLAUDE_CODE_MESSAGING_SOCKET` und `CLAUDE_CODE_MESSAGING_TOKEN`](/docs/de/env-vars#variables), die Claude Code selbst exportiert, werden aus jeder Datei ignoriert. Das Ignorieren der Socket-Variable erfordert Claude Code v2.1.224 oder später, und das Ignorieren des Tokens erfordert v2.1.228 oder später.3017* [`CLAUDE_CODE_MESSAGING_SOCKET` und `CLAUDE_CODE_MESSAGING_TOKEN`](/docs/de/env-vars#variables), die Claude Code selbst exportiert, werden aus jeder Datei ignoriert. Das Ignorieren der Socket-Variable erfordert Claude Code v2.1.224 oder später, und das Ignorieren des Tokens erfordert v2.1.228 oder später.

3005* [`CLAUDE_CODE_PROJECT_DIR_NAME`](/docs/de/sessions#name-the-project-directory-yourself), das Claude Code nur aus der Start-Umgebung liest, wird aus jeder Datei ignoriert; erfordert v2.1.234 oder später.3018* [`CLAUDE_CODE_PROJECT_DIR_NAME`](/docs/de/sessions#name-the-project-directory-yourself), das Claude Code nur aus der Start-Umgebung liest, wird aus jeder Datei ignoriert; erfordert v2.1.234 oder später.


3464 `respondToBashCommands`3477 `respondToBashCommands`

3465</h3>3478</h3>

3466 3479 

3467Wählen Sie, ob Claude antwortet, nachdem Sie einen Shell-Befehl mit dem Präfix [`!`](/docs/de/interactive-mode#shell-mode-with-prefix) im Eingabefeld ausführen. Standardmäßig fügt Claude Code die Ausgabe des Befehls zum Gespräch hinzu und Claude antwortet darauf. Setzen Sie diesen Schlüssel auf `false`, um die Ausgabe zum Kontext hinzuzufügen, ohne eine Antwort zu geben, damit Sie mehrere Befehle ausführen und zusammen darüber sprechen können. Erfordert Claude Code v2.1.186 oder später.3480Wählen Sie, ob Claude antwortet, nachdem Sie einen Shell-Befehl mit dem Präfix [`!`](/docs/de/interactive-mode#shell-mode-with-prefix) im Eingabefeld ausführen. Standardmäßig fügt Claude Code die Ausgabe des Befehls zum Gespräch hinzu und Claude antwortet darauf. Setzen Sie diesen Schlüssel auf `false`, um die Ausgabe zum Kontext hinzuzufügen, ohne eine Antwort zu geben, damit Sie mehrere Befehle ausführen und zusammen darüber sprechen können.

3468 3481 

3469* **Bereich**: [`Beliebige Datei`](#scopes)3482* **Bereich**: [`Beliebige Datei`](#scopes)

3470* **Typ**: Boolean3483* **Typ**: Boolean


3478}3491}

3479```3492```

3480 3493 

3481Siehe [Shell-Modus mit `!`-Präfix](/docs/de/interactive-mode#shell-mode-with-prefix). Erfordert Claude Code v2.1.186 oder später.3494Siehe [Shell-Modus mit `!`-Präfix](/docs/de/interactive-mode#shell-mode-with-prefix).

3482 3495 

3483<h3 id="showclearcontextonplanaccept">3496<h3 id="showclearcontextonplanaccept">

3484 `showClearContextOnPlanAccept`3497 `showClearContextOnPlanAccept`


3985Passen Sie die Zuordnung an, die Claude Code zu Git-Commits und Pull Requests hinzufügt. Commits erhalten standardmäßig einen [Git-Trailer](https://git-scm.com/docs/git-interpret-trailers) wie `Co-Authored-By`; Pull-Request-Beschreibungen erhalten Klartext. Legen Sie jeden Teil separat mit den folgenden Unterschlüsseln fest.3998Passen Sie die Zuordnung an, die Claude Code zu Git-Commits und Pull Requests hinzufügt. Commits erhalten standardmäßig einen [Git-Trailer](https://git-scm.com/docs/git-interpret-trailers) wie `Co-Authored-By`; Pull-Request-Beschreibungen erhalten Klartext. Legen Sie jeden Teil separat mit den folgenden Unterschlüsseln fest.

3986 3999 

3987* **Bereich**: [`Any file`](#scopes)4000* **Bereich**: [`Any file`](#scopes)

3988* **Typ**: Objekt mit `commit`- und `pr`-Zeichenketten und einem `sessionUrl`-Boolean4001* **Typ**: Objekt mit `commit`- und `pr`-Zeichenketten und einem `sessionUrl`-Boolean, oder `false`, um alle Zuordnungen auszublenden. Der Wert `false` erfordert Claude Code v2.1.281 oder später; frühere Versionen lehnen ihn ab und [überspringen die gesamte Benutzer-, Projekt- oder lokale Einstellungsdatei](/docs/de/settings#fix-a-broken-settings-file), die ihn enthält

3989* **Standard**: nicht gesetzt, daher verwendet Claude Code die unter jedem Unterschlüssel angezeigte Standard-Zuordnung4002* **Standard**: nicht gesetzt, daher verwendet Claude Code die unter jedem Unterschlüssel angezeigte Standard-Zuordnung

3990 4003 

4004Um alle Zuordnungen auszublenden, setzen Sie `attribution` auf `false`. In einer Einstellungsdatei, die auch frühere Versionen lesen, setzen Sie stattdessen [`commit`](#attribution-commit) und [`pr`](#attribution-pr) auf leere Zeichenketten und [`sessionUrl`](#attribution-sessionurl) auf `false`.

4005 

3991Dieses Beispiel ersetzt die Commit-Zuordnung, entfernt die Pull-Request-Zuordnung und löscht den Sitzungslink:4006Dieses Beispiel ersetzt die Commit-Zuordnung, entfernt die Pull-Request-Zuordnung und löscht den Sitzungslink:

3992 4007 

3993```json settings.json theme={null}4008```json settings.json theme={null}


4000}4015}

4001```4016```

4002 4017 

4003Um alle Zuordnungen auszublenden, setzen Sie [`commit`](#attribution-commit) und [`pr`](#attribution-pr) auf leere Zeichenketten und [`sessionUrl`](#attribution-sessionurl) auf `false`. Sobald Sie `commit` oder `pr` setzen, ignoriert Claude Code die veraltete Einstellung `includeCoAuthoredBy` und verwendet seinen Standard-Text für denjenigen der beiden, den Sie nicht gesetzt haben.4018Sobald Sie `commit` oder `pr` setzen, ignoriert Claude Code die veraltete Einstellung `includeCoAuthoredBy` und verwendet seinen Standard-Text für denjenigen der beiden, den Sie nicht gesetzt haben.

4004 4019 

4005Claude Code teilt Claude mit, dass Ihre eigenen Anweisungen zur Zuordnung, wie eine CLAUDE.md oder [Memory](/docs/de/memory)-Regel, Vorrang vor diesen Commit- und PR-Zeilen haben, es sei denn, die Zeile ist in [verwalteten Einstellungen](/docs/de/managed-settings) gesetzt.4020Claude Code teilt Claude mit, dass Ihre eigenen Anweisungen zur Zuordnung, wie eine CLAUDE.md oder [Memory](/docs/de/memory)-Regel, Vorrang vor diesen Commit- und PR-Zeilen haben, es sei denn, die Zeile ist in [verwalteten Einstellungen](/docs/de/managed-settings) gesetzt.

4006 4021 


4026}4041}

4027```4042```

4028 4043 

4029Um alle Zuordnungen heute auszublenden, setzen Sie [`attribution.commit`](#attribution-commit) und [`attribution.pr`](#attribution-pr) auf leere Zeichenketten und [`attribution.sessionUrl`](#attribution-sessionurl) auf `false`.4044Um alle Zuordnungen auszublenden, siehe [`attribution`](#attribution).

4030 4045 

4031<h3 id="includegitinstructions">4046<h3 id="includegitinstructions">

4032 `includeGitInstructions`4047 `includeGitInstructions`


4184* **Verwaltete und SDK-Hooks werden ausgeführt**: Hooks aus verwalteten Einstellungen und Hooks, die das [Agent SDK](/docs/de/agent-sdk/overview) im Prozess registriert4199* **Verwaltete und SDK-Hooks werden ausgeführt**: Hooks aus verwalteten Einstellungen und Hooks, die das [Agent SDK](/docs/de/agent-sdk/overview) im Prozess registriert

4185* **Erzwungene Plugin-Hooks werden ausgeführt**: Hooks aus Plugins, die Ihre verwalteten Einstellungen durch [`enabledPlugins`](#enabledplugins) erzwingen. Claude Code gleicht die vollständige `plugin@marketplace`-ID ab, daher bleibt ein Plugin mit demselben Namen aus einem anderen Marketplace blockiert. Dies ermöglicht es Ihnen, überprüfte Hooks über einen Organisations-Marketplace zu verteilen und alles andere zu blockieren4200* **Erzwungene Plugin-Hooks werden ausgeführt**: Hooks aus Plugins, die Ihre verwalteten Einstellungen durch [`enabledPlugins`](#enabledplugins) erzwingen. Claude Code gleicht die vollständige `plugin@marketplace`-ID ab, daher bleibt ein Plugin mit demselben Namen aus einem anderen Marketplace blockiert. Dies ermöglicht es Ihnen, überprüfte Hooks über einen Organisations-Marketplace zu verteilen und alles andere zu blockieren

4186* **Alles andere wird blockiert**: Benutzer-, Projekt- und lokale Hooks, Hooks aus anderen Plugins und Hooks, die in Agent-Frontmatter deklariert sind4201* **Alles andere wird blockiert**: Benutzer-, Projekt- und lokale Hooks, Hooks aus anderen Plugins und Hooks, die in Agent-Frontmatter deklariert sind

4187* **Command-sourced Plugins sind deaktiviert**: Claude Code deaktiviert auch Plugins mit einer [`command`-Quelle](/docs/de/plugin-marketplaces#command-sources), einschließlich Plugins, die in verwalteten `enabledPlugins` erzwungen werden, es sei denn, Sie setzen [`disableCommandPluginSources`](#disablecommandpluginsources) explizit auf `false`4202* **Command-sourced Plugins sind deaktiviert**: Claude Code deaktiviert auch Plugins mit einer [`command`-Quelle](/docs/de/plugins/marketplace-reference#command-plugin-source), einschließlich Plugins, die in verwalteten `enabledPlugins` erzwungen werden, es sei denn, Sie setzen [`disableCommandPluginSources`](#disablecommandpluginsources) explizit auf `false`

4188* **Marketplace `headersHelper`-Befehle werden blockiert**: Claude Code blockiert auch Marketplace-[`headersHelper`-Befehle](/docs/de/plugin-marketplaces#authenticate-archive-downloads), es sei denn, [`disableCommandPluginSources`](#disablecommandpluginsources) ist explizit auf `false` gesetzt, außer für einen Marketplace, den die verwalteten Einstellungen selbst deklarieren. Erfordert Claude Code v2.1.238 oder später4203* **Marketplace `headersHelper`-Befehle werden blockiert**: Claude Code blockiert auch Marketplace-[`headersHelper`-Befehle](/docs/de/plugins/host-marketplace#authenticate-archive-downloads), es sei denn, [`disableCommandPluginSources`](#disablecommandpluginsources) ist explizit auf `false` gesetzt, außer für einen Marketplace, den die verwalteten Einstellungen selbst deklarieren. Erfordert Claude Code v2.1.238 oder später

4189* **Statuszeile und Dateivorschlag werden auf verwaltete Einstellungen beschränkt**: Claude Code liest [`statusLine`](/docs/de/statusline), [`fileSuggestion`](#filesuggestion) und [`subagentStatusLine`](/docs/de/statusline#subagent-status-lines) nur aus verwalteten Einstellungen, gemäß den [Statuszeilen- und Dateivorschlag-Gates](#status-line-and-file-suggestion-gates)4204* **Statuszeile und Dateivorschlag werden auf verwaltete Einstellungen beschränkt**: Claude Code liest [`statusLine`](/docs/de/statusline), [`fileSuggestion`](#filesuggestion) und [`subagentStatusLine`](/docs/de/statusline#subagent-status-lines) nur aus verwalteten Einstellungen, gemäß den [Statuszeilen- und Dateivorschlag-Gates](#status-line-and-file-suggestion-gates)

4190 4205 

4191Der [`/goal`](/docs/de/goal)-Befehl kann nicht ausgeführt werden, während dieser Schlüssel gesetzt ist, da er von Hooks abhängt.4206Der [`/goal`](/docs/de/goal)-Befehl kann nicht ausgeführt werden, während dieser Schlüssel gesetzt ist, da er von Hooks abhängt.


4369 Plugins und Skills4384 Plugins und Skills

4370</h2>4385</h2>

4371 4386 

4372Aktivieren Sie Plugins, registrieren Sie Marketplaces, beschränken Sie, welche Plugin-Quellen eine Organisation zulässt, und kontrollieren Sie, welche Skills geladen werden. Informationen zum Installieren und Erstellen von Plugins finden Sie unter [Plugins](/docs/de/plugins).4387Aktivieren Sie Plugins, registrieren Sie Marketplaces, beschränken Sie, welche Plugin-Quellen eine Organisation zulässt, und kontrollieren Sie, welche Skills geladen werden. Informationen zum Installieren und Erstellen von Plugins finden Sie unter [Plugins](/docs/de/plugins/overview).

4373 4388 

4374<h3 id="disablebundledskills">4389<h3 id="disablebundledskills">

4375 `disableBundledSkills`4390 `disableBundledSkills`


4465 `syncClaudeAiPlugins`4480 `syncClaudeAiPlugins`

4466</h3>4481</h3>

4467 4482 

4468Deaktivieren Sie den Download der [Plugins, die für Ihr claude.ai-Konto aktiviert sind](/docs/de/plugins-reference#synced-plugins). Claude Code lädt sie in `~/.claude/plugins/synced/` am Anfang von Terminalsitzungen herunter, in denen Sie sich mit Ihrem claude.ai-Konto anmelden, und in Cowork- und Cloud-Sitzungen, und lädt jedes als `<name>@synced`. Setzen Sie `false`, um diesen Download zu stoppen und das Laden der bereits synchronisierten Plugins zu beenden. Claude Code berücksichtigt nur `false`: `true` ist dasselbe wie nicht gesetzt und aktiviert die Synchronisierung nicht, wo sie sonst deaktiviert ist. Erfordert Claude Code v2.1.273 oder später.4483Deaktivieren Sie den Download der [Plugins, die für Ihr claude.ai-Konto aktiviert sind](/docs/de/plugins/loading#synced-plugins). Claude Code lädt sie in `~/.claude/plugins/synced/` am Anfang von Terminalsitzungen herunter, in denen Sie sich mit Ihrem claude.ai-Konto anmelden, und in Cowork-Sitzungen, und lädt jedes als `<name>@synced`. Setzen Sie `false`, um diesen Download zu stoppen und das Laden der bereits synchronisierten Plugins zu beenden. Claude Code berücksichtigt nur `false`: `true` ist dasselbe wie nicht gesetzt und aktiviert die Synchronisierung nicht, wo sie sonst deaktiviert ist. Erfordert Claude Code v2.1.273 oder später.

4469 4484 

4470* **Bereich**: [`User, local, or managed`](#scopes) und Dateien, die mit `--settings` übergeben werden. Ein Repository kann es für Sie nicht deaktivieren.4485* **Bereich**: [`User, local, or managed`](#scopes) und Dateien, die mit `--settings` übergeben werden. Ein Repository kann es für Sie nicht deaktivieren.

4471* **Typ**: Boolean4486* **Typ**: Boolean


4514 4529 

4515Blockieren Sie Plugin-Marketplace-Quellen für Ihre Organisation. Claude Code überprüft die Blockliste beim Hinzufügen von Marketplace und beim Installieren, Aktualisieren, Aktualisieren und automatischen Aktualisieren von Plugins, daher kann ein Marketplace, den jemand hinzugefügt hat, bevor Sie die Richtlinie festgelegt haben, nicht zum Abrufen von Plugins verwendet werden. Blockierte Quellen werden vor dem Download überprüft, daher berühren sie niemals das Dateisystem.4530Blockieren Sie Plugin-Marketplace-Quellen für Ihre Organisation. Claude Code überprüft die Blockliste beim Hinzufügen von Marketplace und beim Installieren, Aktualisieren, Aktualisieren und automatischen Aktualisieren von Plugins, daher kann ein Marketplace, den jemand hinzugefügt hat, bevor Sie die Richtlinie festgelegt haben, nicht zum Abrufen von Plugins verwendet werden. Blockierte Quellen werden vor dem Download überprüft, daher berühren sie niemals das Dateisystem.

4516 4531 

4517Wenn Sie diesen Schlüssel in der [claude.ai Admin-Konsole](/docs/de/server-managed-settings) festlegen, wendet claude.ai ihn auch an, wenn jemand in Ihrer Organisation einen Marketplace aus einem Git-Repository auf claude.ai hinzufügt, wie [Wie Einschränkungen funktionieren](/docs/de/plugin-marketplaces#how-restrictions-work) beschreibt.4532Wenn Sie diesen Schlüssel in der [claude.ai Admin-Konsole](/docs/de/server-managed-settings) festlegen, wendet claude.ai ihn auch an, wenn jemand in Ihrer Organisation einen Marketplace aus einem Git-Repository auf claude.ai hinzufügt, wie [Wie Einschränkungen funktionieren](/docs/de/plugins/org#restrict-what-users-can-install) beschreibt.

4518 4533 

4519* **Bereich**: [`Managed`](#scopes)4534* **Bereich**: [`Managed`](#scopes)

4520* **Typ**: Array von Marketplace-Quellobjekten in denselben Formen wie [`strictKnownMarketplaces`](#allowed-source-types)4535* **Typ**: Array von Marketplace-Quellobjekten in denselben Formen wie [`strictKnownMarketplaces`](#allowed-source-types)


4530}4545}

4531```4546```

4532 4547 

4533Ein `github` Eintrag kann die [Owner-Wildcard-Form](#owner-wildcards) `"owner/*"` verwenden, um jedes Repository unter diesem GitHub-Owner zu blockieren, was Claude Code v2.1.223 oder später erfordert. Fügen Sie `{ "source": "skills-dir" }` hinzu, um Claude Code daran zu hindern, [`@skills-dir` Plugins](/docs/de/plugins-reference#skills-directory-plugins) aus `~/.claude/skills/` zu laden, ohne einen Marketplace einzuschränken. Siehe [Verwaltete Marketplace-Einschränkungen](/docs/de/plugin-marketplaces#managed-marketplace-restrictions).4548Ein `github` Eintrag kann die [Owner-Wildcard-Form](#owner-wildcards) `"owner/*"` verwenden, um jedes Repository unter diesem GitHub-Owner zu blockieren, was Claude Code v2.1.223 oder später erfordert. Fügen Sie `{ "source": "skills-dir" }` hinzu, um Claude Code daran zu hindern, [`@skills-dir` Plugins](/docs/de/plugins/loading#plugins-shared-through-a-repository) aus `~/.claude/skills/` zu laden, ohne einen Marketplace einzuschränken. Siehe [Verwaltete Marketplace-Einschränkungen](/docs/de/plugins/org#restrict-what-users-can-install).

4534 4549 

4535<h3 id="channelsenabled">4550<h3 id="channelsenabled">

4536 `channelsEnabled`4551 `channelsEnabled`


4556 `disableCommandPluginSources`4571 `disableCommandPluginSources`

4557</h3>4572</h3>

4558 4573 

4559Blockieren Sie die [`command` Plugin-Quelle](/docs/de/plugin-marketplaces#command-sources), die ein Plugin durch Ausführen eines von Marketplace deklarierten Befehls auf dem Computer des Benutzers installiert. Wenn Sie es auf `true` setzen, führt Claude Code den Befehl niemals aus, installiert oder aktualisiert keine Befehls-Quellen-Plugins und stoppt das Laden der bereits installierten. Setzen Sie es auf `false`, um sie explizit zuzulassen. Wann immer es Befehlsquellen blockiert, ob Sie es auf `true` setzen oder es unter [`allowManagedHooksOnly`](#allowmanagedhooksonly) nicht gesetzt lassen, blockiert es auch Marketplace [`headersHelper` Befehle](/docs/de/plugin-marketplaces#authenticate-archive-downloads), außer für einen Marketplace, den verwaltete Einstellungen selbst deklarieren. Erfordert Claude Code v2.1.229 oder später, und der `headersHelper` Block erfordert v2.1.238 oder später.4574Blockieren Sie die [`command` Plugin-Quelle](/docs/de/plugins/marketplace-reference#command-plugin-source), die ein Plugin durch Ausführung eines von Marketplace deklarierten Befehls auf dem Computer des Benutzers installiert. Wenn Sie es auf `true` setzen, führt Claude Code den Befehl niemals aus, installiert oder aktualisiert keine Befehls-Quellen-Plugins und stoppt das Laden der bereits installierten. Setzen Sie es auf `false`, um sie explizit zuzulassen. Wann immer es Befehlsquellen blockiert, ob Sie es auf `true` setzen oder es unter [`allowManagedHooksOnly`](#allowmanagedhooksonly) nicht gesetzt lassen, blockiert es auch Marketplace [`headersHelper` Befehle](/docs/de/plugins/host-marketplace#authenticate-archive-downloads), außer für einen Marketplace, den verwaltete Einstellungen selbst deklarieren. Erfordert Claude Code v2.1.229 oder später, und der `headersHelper` Block erfordert v2.1.238 oder später.

4560 4575 

4561* **Bereich**: [`Managed`](#scopes)4576* **Bereich**: [`Managed`](#scopes)

4562* **Typ**: Boolean4577* **Typ**: Boolean


4588}4603}

4589```4604```

4590 4605 

4591Ein Name wird nur wirksam, wenn der Marketplace auf dem Computer registriert ist und seine registrierte Quelle auch in denselben verwalteten Einstellungen deklariert ist, entweder als [`extraKnownMarketplaces`](#extraknownmarketplaces) Eintrag für diesen Namen oder als Eintrag von [`strictKnownMarketplaces`](#strictknownmarketplaces). Claude Code ignoriert einen Marketplace, der von einer anderen Quelle unter einem zulässigen Namen registriert ist. Der offizielle Marketplace ist von der Quellanforderung befreit: das Zulassen seines Namens allein genügt, da dieser Name nur von der offiziellen Anthropic-Quelle registriert werden kann. Siehe [Plugins nach Kontext vorschlagen](/docs/de/plugin-relevance).4606Ein Name wird nur wirksam, wenn der Marketplace auf dem Computer registriert ist und seine registrierte Quelle auch in denselben verwalteten Einstellungen deklariert ist, entweder als [`extraKnownMarketplaces`](#extraknownmarketplaces) Eintrag für diesen Namen oder als Eintrag von [`strictKnownMarketplaces`](#strictknownmarketplaces). Claude Code ignoriert einen Marketplace, der von einer anderen Quelle unter einem zulässigen Namen registriert ist. Der offizielle Marketplace ist von der Quellanforderung befreit: das Zulassen seines Namens allein genügt, da dieser Name nur von der offiziellen Anthropic-Quelle registriert werden kann. Siehe [Plugins nach Kontext vorschlagen](/docs/de/plugins/relevance).

4592 4607 

4593<h3 id="plugintrustmessage">4608<h3 id="plugintrustmessage">

4594 `pluginTrustMessage`4609 `pluginTrustMessage`


4612 4627 

4613Beschränken Sie, welche Plugin-Marketplace-Quellen Personen in Ihrer Organisation hinzufügen und Plugins installieren können. Claude Code erzwingt die Zulassungsliste beim Hinzufügen von Marketplace und beim Installieren, Aktualisieren, Aktualisieren und automatischen Aktualisieren von Plugins, vor jeder Netzwerk- oder Dateisystemoperation, daher kann ein Marketplace, den jemand hinzugefügt hat, bevor Sie die Richtlinie festgelegt haben, nicht zum Abrufen von Plugins verwendet werden, sobald seine Quelle nicht mehr übereinstimmt. Blockierte Benutzer sehen einen Fehler, der die verwaltete Richtlinie benennt.4628Beschränken Sie, welche Plugin-Marketplace-Quellen Personen in Ihrer Organisation hinzufügen und Plugins installieren können. Claude Code erzwingt die Zulassungsliste beim Hinzufügen von Marketplace und beim Installieren, Aktualisieren, Aktualisieren und automatischen Aktualisieren von Plugins, vor jeder Netzwerk- oder Dateisystemoperation, daher kann ein Marketplace, den jemand hinzugefügt hat, bevor Sie die Richtlinie festgelegt haben, nicht zum Abrufen von Plugins verwendet werden, sobald seine Quelle nicht mehr übereinstimmt. Blockierte Benutzer sehen einen Fehler, der die verwaltete Richtlinie benennt.

4614 4629 

4615Wenn Sie diesen Schlüssel in der [claude.ai Admin-Konsole](/docs/de/server-managed-settings) festlegen, wendet claude.ai ihn auch an, wenn jemand in Ihrer Organisation einen Marketplace aus einem Git-Repository auf claude.ai hinzufügt, wie [Wie Einschränkungen funktionieren](/docs/de/plugin-marketplaces#how-restrictions-work) beschreibt.4630Wenn Sie diesen Schlüssel in der [claude.ai Admin-Konsole](/docs/de/server-managed-settings) festlegen, wendet claude.ai ihn auch an, wenn jemand in Ihrer Organisation einen Marketplace aus einem Git-Repository auf claude.ai hinzufügt, wie [Wie Einschränkungen funktionieren](/docs/de/plugins/org#restrict-what-users-can-install) beschreibt.

4616 4631 

4617* **Bereich**: [`Managed`](#scopes)4632* **Bereich**: [`Managed`](#scopes)

4618* **Typ**: Array von Marketplace-Quellobjekten; siehe [Zulässige Quellentypen](#allowed-source-types)4633* **Typ**: Array von Marketplace-Quellobjekten; siehe [Zulässige Quellentypen](#allowed-source-types)


4630}4645}

4631```4646```

4632 4647 

4633Sie können diesen Schlüssel auch als `allowedMarketplaces` schreiben; [Marketplace-Schlüssel-Aliase](#marketplace-key-aliases) beschreibt, wie Claude Code den Alias behandelt und welche Version ihn akzeptiert. Dieser Schlüssel ist ein Richtlinien-Gate: er kontrolliert, was Benutzer hinzufügen dürfen, registriert aber nichts. Um in einer Datei einzuschränken und vorab zu registrieren, siehe [Mit `extraKnownMarketplaces` kombinieren](#combine-with-extraknownmarketplaces). Für die benutzergerichtete Ansicht siehe [Verwaltete Marketplace-Einschränkungen](/docs/de/plugin-marketplaces#managed-marketplace-restrictions).4648Sie können diesen Schlüssel auch als `allowedMarketplaces` schreiben; [Marketplace-Schlüssel-Aliase](#marketplace-key-aliases) beschreibt, wie Claude Code den Alias behandelt und welche Version ihn akzeptiert. Dieser Schlüssel ist ein Richtlinien-Gate: er kontrolliert, was Benutzer hinzufügen dürfen, registriert aber nichts. Um in einer Datei einzuschränken und vorab zu registrieren, siehe [Mit `extraKnownMarketplaces` kombinieren](#combine-with-extraknownmarketplaces). Für die benutzergerichtete Ansicht siehe [Verwaltete Marketplace-Einschränkungen](/docs/de/plugins/org#restrict-what-users-can-install).

4634 4649 

4635<h4 id="allowed-source-types">4650<h4 id="allowed-source-types">

4636 Zulässige Quellentypen4651 Zulässige Quellentypen


4639Jeder Eintrag unten zeigt einen Zulassungslisten-Eintrag pro Quellentyp und die Felder, die er akzeptiert. Die meisten Typen stimmen genau überein; `hostPattern` und `pathPattern` stimmen per Regex überein, und `github` Einträge können eine [Owner-Wildcard](#owner-wildcards) verwenden.4654Jeder Eintrag unten zeigt einen Zulassungslisten-Eintrag pro Quellentyp und die Felder, die er akzeptiert. Die meisten Typen stimmen genau überein; `hostPattern` und `pathPattern` stimmen per Regex überein, und `github` Einträge können eine [Owner-Wildcard](#owner-wildcards) verwenden.

4640 4655 

4641| Quelle | Beispiel-Eintrag | Felder |4656| Quelle | Beispiel-Eintrag | Felder |

4642| :------------ | :------------------------------------------------------------------------------------------------------------------------------ | :-------------------------------------------------------------------------------------------------------------- |4657| :------------ | :------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

4643| `github` | `{ "source": "github", "repo": "acme-corp/plugins", "ref": "main", "path": "marketplace" }` | `repo` erforderlich; `ref` ist ein Branch oder Tag; `path` ist ein Unterverzeichnis |4658| `github` | `{ "source": "github", "repo": "acme-corp/plugins", "ref": "main", "path": "marketplace" }` | `repo` erforderlich; `ref` ist ein Branch oder Tag; `path` ist ein Unterverzeichnis |

4644| `git` | `{ "source": "git", "url": "https://gitlab.example.com/tools/plugins.git", "ref": "production" }` | `url` erforderlich; `ref` und `path` wie für `github` |4659| `git` | `{ "source": "git", "url": "https://gitlab.example.com/tools/plugins.git", "ref": "production" }` | `url` erforderlich; `ref` und `path` wie für `github` |

4645| `url` | `{ "source": "url", "url": "https://plugins.example.com/marketplace.json", "headers": { "Authorization": "Bearer ${TOKEN}" } }` | `url` erforderlich; `headers` fügt HTTP-Header für authentifizierten Zugriff hinzu |4660| `url` | `{ "source": "url", "url": "https://plugins.example.com/marketplace.json", "headers": { "Authorization": "Bearer ${TOKEN}" } }` | `url` erforderlich; `headers` fügt HTTP-Header für authentifizierten Zugriff hinzu |

4646| `file` | `{ "source": "file", "path": "/opt/acme-corp/plugins/marketplace.json" }` | `path` erforderlich, der absolute Pfad zu einer `marketplace.json` Datei |4661| `file` | `{ "source": "file", "path": "/opt/acme-corp/plugins/marketplace.json" }` | `path` erforderlich, der absolute Pfad zu einer `marketplace.json` Datei |

4647| `directory` | `{ "source": "directory", "path": "/opt/acme-corp/approved-marketplaces" }` | `path` erforderlich, der absolute Pfad zu einem Verzeichnis mit `.claude-plugin/marketplace.json` |4662| `directory` | `{ "source": "directory", "path": "/opt/acme-corp/approved-marketplaces" }` | `path` erforderlich, der absolute Pfad zu einem Verzeichnis mit `.claude-plugin/marketplace.json` |

4648| `hostPattern` | `{ "source": "hostPattern", "hostPattern": "^github\\.example\\.com$" }` | `hostPattern` erforderlich, ein Regex, das gegen den Marketplace-Host abgeglichen wird |4663| `hostPattern` | `{ "source": "hostPattern", "hostPattern": "^github\\.example\\.com$" }` | `hostPattern` erforderlich, ein Regex, das gegen den Marketplace-Host abgeglichen wird; verankern Sie es mit `^` und `$`, um den ganzen Host abzugleichen |

4649| `pathPattern` | `{ "source": "pathPattern", "pathPattern": "^/opt/approved/" }` | `pathPattern` erforderlich, ein Regex, das gegen den `path` von `file` und `directory` Quellen abgeglichen wird |4664| `pathPattern` | `{ "source": "pathPattern", "pathPattern": "^/opt/approved/" }` | `pathPattern` erforderlich, ein Regex, das gegen den `path` von `file` und `directory` Quellen abgeglichen wird; beginnen Sie es mit `^`, um ein Präfix zu fixieren |

4650| `skills-dir` | `{ "source": "skills-dir" }` | Keine Felder. Aktiviert den `~/.claude/skills/` Plugin-Scan wieder |4665| `skills-dir` | `{ "source": "skills-dir" }` | Keine Felder. Aktiviert den `~/.claude/skills/` Plugin-Scan wieder |

4651 4666 

4652Drei Quellentypen tragen Regeln über die Tabelle hinaus:4667Drei Quellentypen tragen Regeln über die Tabelle hinaus:

4653 4668 

4654* **`url`**: Ein URL-Marketplace lädt nur die `marketplace.json` Datei herunter, und Claude Code lädt Plugin-Dateien nicht per relativem Pfad von diesem Server herunter, daher müssen seine Plugins eine [Plugin-Quelle](/docs/de/plugin-marketplaces#plugin-sources) verwenden, die nicht ein relativer Pfad ist, wie eine Archiv-URL, die auf demselben Host sein kann. Für Plugins mit relativen Pfaden verwenden Sie stattdessen einen Git-basierten Marketplace. Siehe [Plugins mit relativen Pfaden schlagen in URL-basierten Marketplaces fehl](/docs/de/plugin-marketplaces#plugins-with-relative-paths-fail-in-url-based-marketplaces).4669* **`url`**: Ein URL-Marketplace lädt nur die `marketplace.json` Datei herunter, und Claude Code lädt Plugin-Dateien nicht per relativem Pfad von diesem Server herunter, daher müssen seine Plugins eine [Plugin-Quelle](/docs/de/plugins/marketplace-reference#plugin-sources) verwenden, die nicht ein relativer Pfad ist, wie eine Archiv-URL, die auf demselben Host sein kann. Für Plugins mit relativen Pfaden verwenden Sie stattdessen einen Git-basierten Marketplace. Siehe [Plugins mit relativen Pfaden schlagen in URL-basierten Marketplaces fehl](/docs/de/plugins/troubleshooting#plugins-with-relative-paths-fail-in-url-based-marketplaces).

4655* **`hostPattern`**: Verwenden Sie es, um jeden Marketplace auf einem internen GitHub Enterprise oder GitLab Server zuzulassen, ohne jedes Repository aufzulisten. Claude Code gleicht `github` Quellen gegen `github.com` ab, nimmt den Hostnamen von `url` Quellen und nimmt ihn von `git` Quellen je nach [git URL](https://git-scm.com/docs/git-clone#_git_urls) Form:4670* **`hostPattern`**: Verwenden Sie es, um jeden Marketplace auf einem internen GitHub Enterprise oder GitLab Server zuzulassen, ohne jedes Repository aufzulisten. Claude Code gleicht `github` Quellen gegen `github.com` ab, nimmt den Hostnamen von `url` Quellen und nimmt ihn von `git` Quellen je nach [git URL](https://git-scm.com/docs/git-clone#_git_urls) Form:

4656 4671 

4657 * Eine URL mit einem Schema, wie `https://` oder `ssh://`: der Hostname in der URL.4672 * Eine URL mit einem Schema, wie `https://` oder `ssh://`: der Hostname in der URL.


4661 `file` und `directory` Quellen haben keinen Host und stimmen niemals mit einem `hostPattern` Eintrag überein.4676 `file` und `directory` Quellen haben keinen Host und stimmen niemals mit einem `hostPattern` Eintrag überein.

4662* **`pathPattern`**: Verwenden Sie es, um Dateisystem-Marketplaces neben `hostPattern` Einträgen für Netzwerkquellen zuzulassen. `".*"` erlaubt jeden lokalen Pfad; ein engeres Muster wie `"^/opt/approved/"` beschränkt auf ein Verzeichnis.4677* **`pathPattern`**: Verwenden Sie es, um Dateisystem-Marketplaces neben `hostPattern` Einträgen für Netzwerkquellen zuzulassen. `".*"` erlaubt jeden lokalen Pfad; ein engeres Muster wie `"^/opt/approved/"` beschränkt auf ein Verzeichnis.

4663 4678 

4664Jede Zulassungsliste, auch eine leere, stoppt auch Claude Code beim Laden von [`@skills-dir` Plugins](/docs/de/plugins-reference#skills-directory-plugins) aus `~/.claude/skills/`. Fügen Sie den `{ "source": "skills-dir" }` Eintrag hinzu, um sie weiterhin zu laden; der Eintrag hat außerhalb dieses Schlüssels und `blockedMarketplaces` keine Bedeutung.4679Jede Zulassungsliste, auch eine leere, stoppt auch Claude Code beim Laden von [`@skills-dir` Plugins](/docs/de/plugins/loading#plugins-shared-through-a-repository) aus `~/.claude/skills/`. Fügen Sie den `{ "source": "skills-dir" }` Eintrag hinzu, um sie weiterhin zu laden; der Eintrag hat außerhalb dieses Schlüssels und `blockedMarketplaces` keine Bedeutung.

4665 4680 

4666<h4 id="owner-wildcards">4681<h4 id="owner-wildcards">

4667 Owner-Wildcards4682 Owner-Wildcards


4679}4694}

4680```4695```

4681 4696 

4682Nur die ganze Repository-Namen-Position kann ein Wildcard sein. Claude Code vergleicht Einträge wie `*`, `*/plugins` oder `acme-corp/tools-*` buchstäblich, daher stimmen sie mit keinem Repository überein.4697Nur die ganze Repository-Namen-Position kann ein Wildcard sein. Claude Code ignoriert Einträge wie `*`, `*/plugins` oder `acme-corp/tools-*` als ungültig, daher stimmen sie mit keinem Repository überein.

4683 4698 

4684Die Abgleichregeln unterscheiden sich zwischen den beiden Einstellungen:4699Die Abgleichregeln unterscheiden sich zwischen den beiden Einstellungen:

4685 4700 


4846 `enabledPlugins`4861 `enabledPlugins`

4847</h3>4862</h3>

4848 4863 

4849Schalten Sie einzelne [Plugins](/docs/de/plugins) ein oder aus, gekennzeichnet durch `plugin-name@marketplace-name`. Ein Plugin ohne Eintrag in einem beliebigen Bereich fällt auf seinen [`defaultEnabled`](/docs/de/plugins-reference#default-enablement) Wert zurück. Wenn Sie ein Plugin mit `/plugin` oder `claude plugin enable` aktivieren oder deaktivieren, schreibt Claude Code diesen Schlüssel für Sie.4864Schalten Sie einzelne [Plugins](/docs/de/plugins/overview) ein oder aus, gekennzeichnet durch `plugin-name@marketplace-name`. Ein Plugin ohne Eintrag in einem beliebigen Bereich fällt auf seinen [`defaultEnabled`](/docs/de/plugins/manifest-reference#fields) Wert zurück. Wenn Sie ein Plugin mit `/plugin` oder `claude plugin enable` aktivieren oder deaktivieren, schreibt Claude Code diesen Schlüssel für Sie.

4850 4865 

4851* **Bereich**: [`Any file`](#scopes)4866* **Bereich**: [`Any file`](#scopes)

4852* **Typ**: Objekt, das `plugin-name@marketplace-name` auf einen Boolean abbildet4867* **Typ**: Objekt, das `plugin-name@marketplace-name` auf einen Boolean abbildet


4873 4888 

4874Projekteinstellungen haben Vorrang vor Benutzereinstellungen, daher deaktiviert das Setzen eines Plugins auf `false` in `~/.claude/settings.json` kein Plugin, das die `.claude/settings.json` des Projekts aktiviert. Um sich von einem von Projekt aktivierten Plugin auf Ihrem Computer abzumelden, setzen Sie es stattdessen auf `false` in `.claude/settings.local.json`. Plugins, die von verwalteten Einstellungen erzwungen aktiviert werden, können auf diese Weise nicht deaktiviert werden, da verwaltete Einstellungen lokale Einstellungen außer Kraft setzen.4889Projekteinstellungen haben Vorrang vor Benutzereinstellungen, daher deaktiviert das Setzen eines Plugins auf `false` in `~/.claude/settings.json` kein Plugin, das die `.claude/settings.json` des Projekts aktiviert. Um sich von einem von Projekt aktivierten Plugin auf Ihrem Computer abzumelden, setzen Sie es stattdessen auf `false` in `.claude/settings.local.json`. Plugins, die von verwalteten Einstellungen erzwungen aktiviert werden, können auf diese Weise nicht deaktiviert werden, da verwaltete Einstellungen lokale Einstellungen außer Kraft setzen.

4875 4890 

4876Das Aktivieren eines Plugins aus einer externen Quelle wie einem GitHub-Repository oder npm-Paket in der `.claude/settings.json` eines Projekts installiert es nicht für andere Personen. Auf jedem Pfad, der Plugins lädt, meldet Claude Code das Plugin als nicht installiert, bis jeder Benutzer es selbst [installiert](/docs/de/discover-plugins#configure-team-marketplaces).4891Das Aktivieren eines Plugins aus einer externen Quelle wie einem GitHub-Repository oder npm-Paket in der `.claude/settings.json` eines Projekts installiert es nicht für andere Personen. Auf jedem Pfad, der Plugins lädt, meldet Claude Code das Plugin als nicht installiert, bis jeder Benutzer es selbst [installiert](/docs/de/plugins/org#require-plugins-per-repository).

4877 4892 

4878<h3 id="extraknownmarketplaces">4893<h3 id="extraknownmarketplaces">

4879 `extraKnownMarketplaces`4894 `extraKnownMarketplaces`


4908 4923 

4909[Was lädt, bevor Sie einen Ordner vertrauen](/docs/de/permissions#what-runs-before-you-trust-a-folder) vergleicht das Vertrauens-Gate mit dem anderen Inhalt, den ein Repository liefern kann. Sie können diesen Schlüssel auch als `additionalMarketplaces` schreiben; siehe [Marketplace-Schlüssel-Aliase](#marketplace-key-aliases).4924[Was lädt, bevor Sie einen Ordner vertrauen](/docs/de/permissions#what-runs-before-you-trust-a-folder) vergleicht das Vertrauens-Gate mit dem anderen Inhalt, den ein Repository liefern kann. Sie können diesen Schlüssel auch als `additionalMarketplaces` schreiben; siehe [Marketplace-Schlüssel-Aliase](#marketplace-key-aliases).

4910 4925 

4911Setzen Sie `"autoUpdate": true` neben `source`, um Claude Code zu veranlassen, diesen Marketplace zu aktualisieren und seine installierten Plugins nach dem Start im Hintergrund zu aktualisieren. Wenn weggelassen, standardmäßig `claude-plugins-official` und die meisten anderen offiziellen Anthropic-Marketplaces auf `true`, und Drittanbieter-Marketplaces standardmäßig auf `false`. Siehe [Konfigurieren Sie Auto-Updates](/docs/de/discover-plugins#configure-auto-updates).4926Setzen Sie `"autoUpdate": true` neben `source`, um Claude Code zu veranlassen, diesen Marketplace zu aktualisieren und seine installierten Plugins nach dem Start im Hintergrund zu aktualisieren. Wenn weggelassen, standardmäßig `claude-plugins-official` und die meisten anderen offiziellen Anthropic-Marketplaces auf `true`, und Drittanbieter-Marketplaces standardmäßig auf `false`. Siehe [Konfigurieren Sie Auto-Updates](/docs/de/plugins/install#keep-plugins-updated).

4912 4927 

4913Wenn mehr als eine Einstellungsdatei einen Marketplace-Eintrag unter demselben Namen definiert, verwendet Claude Code den Eintrag aus der [höchsten Prioritätsdatei](/docs/de/settings#settings-precedence) ganz. Dieser Eintrag ersetzt den Eintrag mit niedrigerer Priorität und erbt keine seiner Felder, daher kann eine Neudefinition nicht die `source.headers` Anmeldedaten einer Datei mit einer URL kombinieren, die eine andere Datei kontrolliert. Vor v2.1.228 fusionierte Claude Code Einträge mit demselben Namen Feld für Feld, daher konnte ein Eintrag in einer höher priorisierten Datei Felder erben, die er nicht setzte, einschließlich `headers` einer anderen Datei.4928Wenn mehr als eine Einstellungsdatei einen Marketplace-Eintrag unter demselben Namen definiert, verwendet Claude Code den Eintrag aus der [höchsten Prioritätsdatei](/docs/de/settings#settings-precedence) ganz. Dieser Eintrag ersetzt den Eintrag mit niedrigerer Priorität und erbt keine seiner Felder, daher kann eine Neudefinition nicht die `source.headers` Anmeldedaten einer Datei mit einer URL kombinieren, die eine andere Datei kontrolliert. Vor v2.1.228 fusionierte Claude Code Einträge mit demselben Namen Feld für Feld, daher konnte ein Eintrag in einer höher priorisierten Datei Felder erben, die er nicht setzte, einschließlich `headers` einer anderen Datei.

4914 4929 


4925* **`directory`**: ein lokaler Dateisystem-Pfad, mit `path`, nur für Entwicklung4940* **`directory`**: ein lokaler Dateisystem-Pfad, mit `path`, nur für Entwicklung

4926* **`settings`**: ein Inline-Marketplace, der direkt in der Einstellungsdatei ohne ein gehostetes Repository deklariert ist, mit `name` und `plugins`4941* **`settings`**: ein Inline-Marketplace, der direkt in der Einstellungsdatei ohne ein gehostetes Repository deklariert ist, mit `name` und `plugins`

4927 4942 

4928Der `git` Quellentyp funktioniert mit jedem Git-Hosting-Service, einschließlich selbst gehosteter GitLab und Bitbucket. Claude Code klont das Repository mit derselben Authentifizierung, die `git clone` auf diesem Computer verwenden würde: konfigurierte Credential-Helper oder SSH-Schlüssel. Ein Provider-Token wie `GITHUB_TOKEN` wird nur durch einen Credential-Helper wirksam, der ihn liest. Siehe [Private Repositories](/docs/de/plugin-marketplaces#private-repositories) für Setup-Details.4943Der `git` Quellentyp funktioniert mit jedem Git-Hosting-Service, einschließlich selbst gehosteter GitLab und Bitbucket. Claude Code klont das Repository mit derselben Authentifizierung, die `git clone` auf diesem Computer verwenden würde: konfigurierte Credential-Helper oder SSH-Schlüssel. Ein Provider-Token wie `GITHUB_TOKEN` wird nur durch einen Credential-Helper wirksam, der ihn liest. Siehe [Private Repositories](/docs/de/plugins/host-marketplace#grant-access-to-a-private-marketplace) für Setup-Details.

4929 4944 

4930Für `github` und `git` Quellen lädt Claude Code niemals [Git LFS](https://git-lfs.com) Inhalte herunter, wenn es das Marketplace-Repository klont, um es hinzuzufügen oder zu aktualisieren. LFS-verfolgte Dateien werden als Zeiger-Dateien ausgecheckt, und die Ausgabe zum Hinzufügen oder Aktualisieren meldet, wie viele.4945Für `github` und `git` Quellen lädt Claude Code niemals [Git LFS](https://git-lfs.com) Inhalte herunter, wenn es das Marketplace-Repository klont, um es hinzuzufügen oder zu aktualisieren. LFS-verfolgte Dateien werden als Zeiger-Dateien ausgecheckt, und die Ausgabe zum Hinzufügen oder Aktualisieren meldet, wie viele.

4931 4946 

4932Das `skipLfs` Feld im `source` Objekt wird akzeptiert und hat keine Auswirkung. Vor v2.1.274 lud Claude Code LFS-Inhalte herunter, es sei denn, Sie setzen `"skipLfs": true`.4947Das `skipLfs` Feld im `source` Objekt wird akzeptiert und hat keine Auswirkung. Vor v2.1.274 lud Claude Code LFS-Inhalte herunter, es sei denn, Sie setzen `"skipLfs": true`.

4933 4948 

4934Für eine `url` Quelle setzen Sie `headersHelper` im `source` Objekt, wenn die Anmeldedaten in `headers` ablaufen und ein Befehl eine frische produzieren muss. Erfordert Claude Code v2.1.238 oder später. Für das, was der Befehl drucken muss und wo Claude Code ihn ausführt, siehe [Schreiben Sie den headersHelper-Befehl](/docs/de/plugin-marketplaces#write-the-headershelper-command), und für die Fälle, in denen Claude Code ihn nicht ausführt, siehe [Wenn Claude Code einen headersHelper-Befehl überspringt oder seine Ausgabe verwirft](/docs/de/plugin-marketplaces#when-claude-code-skips-a-headershelper-command-or-drops-its-output). Sobald Sie `headersHelper` auf einer `https://` Marketplace-URL setzen, führt Claude Code den Befehl an zwei Punkten aus und verwendet die Ausgabe eines Laufs für bis zu 60 Sekunden erneut:4949Für eine `url` Quelle setzen Sie `headersHelper` im `source` Objekt, wenn die Anmeldedaten in `headers` ablaufen und ein Befehl eine frische produzieren muss. Erfordert Claude Code v2.1.238 oder später. Für das, was der Befehl drucken muss und wo Claude Code ihn ausführt, siehe [Schreiben Sie den headersHelper-Befehl](/docs/de/plugins/host-marketplace#write-the-headershelper-command), und für die Fälle, in denen Claude Code ihn nicht ausführt, siehe [Wenn Claude Code einen headersHelper-Befehl überspringt oder seine Ausgabe verwirft](/docs/de/plugins/host-marketplace#when-claude-code-skips-a-headershelper-command-or-drops-its-output). Sobald Sie `headersHelper` auf einer `https://` Marketplace-URL setzen, führt Claude Code den Befehl an zwei Punkten aus und verwendet die Ausgabe eines Laufs für bis zu 60 Sekunden erneut:

4935 4950 

4936* Vor jedem Abrufen von diesem Marketplace `marketplace.json`, einschließlich einer späteren Aktualisierung. Claude Code sendet die gedruckten Header mit diesem Abrufen.4951* Vor jedem Abrufen von diesem Marketplace `marketplace.json`, einschließlich einer späteren Aktualisierung. Claude Code sendet die gedruckten Header mit diesem Abrufen.

4937* Vor jedem Plugin-Archiv-Download auf dem Ursprung der Marketplace-URL, was dasselbe Schema, Host und Port bedeutet. Claude Code sendet die Ausgabe mit diesem Download, und kein anderer Download erhält die Header.4952* Vor jedem Plugin-Archiv-Download auf dem Ursprung der Marketplace-URL, was dasselbe Schema, Host und Port bedeutet. Claude Code sendet die Ausgabe mit diesem Download, und kein anderer Download erhält die Header.

4938 4953 

4939Claude Code ignoriert jeden `headersHelper`, der in der `.claude/settings.json` oder `.claude/settings.local.json` eines Verzeichnisses gesetzt ist, das Sie mit [`--add-dir`](/docs/de/permissions#what-runs-before-you-trust-a-folder) hinzufügen, auf einer `url` Quelle und auf einem Inline-Plugin-Eintrag gleichermaßen, und sendet nur die festen `headers`, die in dieser Datei gesetzt sind. [Wie Benutzer einen headersHelper-Befehl akzeptieren](/docs/de/plugin-marketplaces#how-users-accept-a-headershelper-command) behandelt die anderen Einstellungsdateien.4954Claude Code ignoriert jeden `headersHelper`, der in der `.claude/settings.json` oder `.claude/settings.local.json` eines Verzeichnisses gesetzt ist, das Sie mit [`--add-dir`](/docs/de/permissions#what-runs-before-you-trust-a-folder) hinzufügen, auf einer `url` Quelle und auf einem Inline-Plugin-Eintrag gleichermaßen, und sendet nur die festen `headers`, die in dieser Datei gesetzt sind. [Wie Benutzer einen headersHelper-Befehl akzeptieren](/docs/de/plugins/host-marketplace#how-users-accept-a-headershelper-command) behandelt die anderen Einstellungsdateien.

4940 4955 

4941Plugins, die in einer `settings` Quelle aufgelistet sind, müssen externe Quellen wie GitHub oder npm referenzieren, und der `name` muss dem Marketplace-Schlüssel entsprechen. Sie aktivieren immer noch jedes Plugin separat in `enabledPlugins`. Dieses Beispiel deklariert ein Plugin inline:4956Plugins, die in einer `settings` Quelle aufgelistet sind, müssen externe Quellen wie GitHub oder npm referenzieren, und der `name` muss dem Marketplace-Schlüssel entsprechen. Sie aktivieren immer noch jedes Plugin separat in `enabledPlugins`. Dieses Beispiel deklariert ein Plugin inline:

4942 4957 


4962}4977}

4963```4978```

4964 4979 

4965Ein Plugin-Eintrag unter `source: 'settings'`, dessen eigene `source` ein [`archive`](/docs/de/plugin-marketplaces#zip-archives) ist, kann `headers` für den Archiv-Download setzen. Wenn der Wert, den Sie in `headers` setzen würden, kurzlebig ist, wie ein Token, den Ihre Registry auf Anfrage prägt, setzen Sie stattdessen einen `headersHelper` Befehl. Ein Eintrag kann beide setzen. Beide Felder erfordern Claude Code v2.1.238 oder später.4980Ein Plugin-Eintrag unter `source: 'settings'`, dessen eigene `source` ein [`archive`](/docs/de/plugins/marketplace-reference#archive-plugin-source) ist, kann `headers` für den Archiv-Download setzen. Wenn der Wert, den Sie in `headers` setzen würden, kurzlebig ist, wie ein Token, den Ihre Registry auf Anfrage prägt, setzen Sie stattdessen einen `headersHelper` Befehl. Ein Eintrag kann beide setzen. Beide Felder erfordern Claude Code v2.1.238 oder später.

4966 4981 

4967Claude Code sendet die `headers` des Eintrags und alles, was der Befehl druckt, mit dem Archiv-Download dieses Plugins und mit keinem anderen Download. Claude Code führt den Befehl nur aus, wenn ein Benutzer [dieses eine Plugin selbst installiert oder aktualisiert](/docs/de/plugin-marketplaces#how-users-accept-a-headershelper-command). Drei weitere Regeln hängen davon ab, welche Datei den Eintrag hält:4982Claude Code sendet die `headers` des Eintrags und alles, was der Befehl druckt, mit dem Archiv-Download dieses Plugins und mit keinem anderen Download. Claude Code führt den Befehl nur aus, wenn ein Benutzer [dieses eine Plugin selbst installiert oder aktualisiert](/docs/de/plugins/host-marketplace#how-users-accept-a-headershelper-command). Drei weitere Regeln hängen davon ab, welche Datei den Eintrag hält:

4968 4983 

4969* **`strict`**: anders als ein Eintrag in einem Marketplace `marketplace.json` benötigt ein Eintrag in Einstellungen kein `"strict": false`, weil eine Einstellungsdatei keine Manifest-Felder zum Inline-Einfügen trägt. Siehe [Strict Mode](/docs/de/plugin-marketplaces#strict-mode).4984* **`strict`**: anders als ein Eintrag in einem Marketplace `marketplace.json` benötigt ein Eintrag in Einstellungen kein `"strict": false`, weil eine Einstellungsdatei keine Manifest-Felder zum Inline-Einfügen trägt. Siehe [Strict Mode](/docs/de/plugins/marketplace-reference#strict-mode).

4970* **Ordner-Vertrauen**: für einen Eintrag in der `.claude/settings.json` oder `.claude/settings.local.json` eines Projekts führt Claude Code den Befehl nur aus, nachdem der Benutzer auch [diesen Ordner vertraut hat](/docs/de/permissions#what-runs-before-you-trust-a-folder).4985* **Ordner-Vertrauen**: für einen Eintrag in der `.claude/settings.json` oder `.claude/settings.local.json` eines Projekts führt Claude Code den Befehl nur aus, nachdem der Benutzer auch [diesen Ordner vertraut hat](/docs/de/permissions#what-runs-before-you-trust-a-folder).

4971* **Header-Filter**: Claude Code verwirft [Request-Routing- und Client-Identitäts-Header-Namen](/docs/de/plugin-marketplaces#when-claude-code-skips-a-headershelper-command-or-drops-its-output) aus einem Eintrag in der `.claude/settings.json` oder `.claude/settings.local.json` eines Projekts, weil ein Repository diese Dateien liefern kann. Claude Code wendet denselben Filter auf einen Katalog-Eintrag und auf einen Eintrag in einem `--add-dir` Verzeichnis-Einstellungen an, und keinen Filter auf einen Eintrag in Ihren Benutzereinstellungen, einer `--settings` Datei oder verwalteten Einstellungen.4986* **Header-Filter**: Claude Code verwirft [Request-Routing- und Client-Identitäts-Header-Namen](/docs/de/plugins/host-marketplace#when-claude-code-skips-a-headershelper-command-or-drops-its-output) aus einem Eintrag in der `.claude/settings.json` oder `.claude/settings.local.json` eines Projekts, weil ein Repository diese Dateien liefern kann. Claude Code wendet denselben Filter auf einen Katalog-Eintrag und auf einen Eintrag in einem `--add-dir` Verzeichnis-Einstellungen an, und keinen Filter auf einen Eintrag in Ihren Benutzereinstellungen, einer `--settings` Datei oder verwalteten Einstellungen.

4972 4987 

4973<h4 id="marketplace-key-aliases">4988<h4 id="marketplace-key-aliases">

4974 Marketplace-Schlüssel-Aliase4989 Marketplace-Schlüssel-Aliase


4985 `pluginConfigs`5000 `pluginConfigs`

4986</h3>5001</h3>

4987 5002 

4988Speichern Sie die nicht-sensiblen Antworten, die Sie einem Plugin [`userConfig`](/docs/de/plugins-reference#user-configuration) Konfigurationsdialog geben, gekennzeichnet durch Plugin-ID. Claude Code schreibt diesen Schlüssel in Ihre Benutzereinstellungen, wenn Sie den Dialog ausfüllen, daher müssen Sie ihn nicht von Hand bearbeiten. Claude Code speichert sensible Optionen stattdessen im macOS Keychain, fällt auf `~/.claude/.credentials.json` zurück, wenn der Keychain den Schreibvorgang ablehnt; auf Plattformen ohne einen unterstützten Keychain speichert es sie in `~/.claude/.credentials.json`.5003Speichern Sie die nicht-sensiblen Antworten, die Sie einem Plugin [`userConfig`](/docs/de/plugins/manifest-reference#user-configuration) Konfigurationsdialog geben, gekennzeichnet durch Plugin-ID. Claude Code schreibt diesen Schlüssel in Ihre Benutzereinstellungen, wenn Sie den Dialog ausfüllen, daher müssen Sie ihn nicht von Hand bearbeiten. Claude Code speichert sensible Optionen stattdessen im macOS Keychain, fällt auf `~/.claude/.credentials.json` zurück, wenn der Keychain den Schreibvorgang ablehnt; auf Plattformen ohne einen unterstützten Keychain speichert es sie in `~/.claude/.credentials.json`.

4989 5004 

4990* **Bereich**: [`User or managed`](#scopes)5005* **Bereich**: [`User or managed`](#scopes)

4991* **Typ**: Objekt, das eine Plugin-ID auf ein Objekt mit einem `options` Feld abbildet, das jeden Optionsnamen auf einen String, eine Zahl, einen Boolean oder ein Array von Strings abbildet, und ein optionales `mcpServers` Feld mit Pro-Server-Benutzer-Konfigurationswerten in derselben Form5006* **Typ**: Objekt, das eine Plugin-ID auf ein Objekt mit einem `options` Feld abbildet, das jeden Optionsnamen auf einen String, eine Zahl, einen Boolean oder ein Array von Strings abbildet, und ein optionales `mcpServers` Feld mit Pro-Server-Benutzer-Konfigurationswerten in derselben Form


5233}5248}

5234```5249```

5235 5250 

5236Die eigene `settings.json` eines Plugins kann diesen Schlüssel auch bereitstellen; siehe [Versenden Sie Standard-Einstellungen mit Ihrem Plugin](/docs/de/plugins#ship-default-settings-with-your-plugin).5251Die eigene `settings.json` eines Plugins kann diesen Schlüssel auch bereitstellen; siehe [Versenden Sie Standard-Einstellungen mit Ihrem Plugin](/docs/de/plugins/components#default-settings).

5237 5252 

5238<h3 id="crosssessioninbound">5253<h3 id="crosssessioninbound">

5239 `crossSessionInbound`5254 `crossSessionInbound`


5329 * `"in-process"`: Teamkollegen werden in Ihrem Haupt-Terminal-Bereich ausgeführt5344 * `"in-process"`: Teamkollegen werden in Ihrem Haupt-Terminal-Bereich ausgeführt

5330 * `"auto"`: geteilte Bereiche, wenn Sie sich in tmux befinden, oder in iTerm2 mit `it2` auf Ihrem `PATH` oder tmux installiert; ansonsten in-process5345 * `"auto"`: geteilte Bereiche, wenn Sie sich in tmux befinden, oder in iTerm2 mit `it2` auf Ihrem `PATH` oder tmux installiert; ansonsten in-process

5331 * `"tmux"`: geteilte Bereiche mit tmux oder iTerm2, erkannt von Ihrem Terminal5346 * `"tmux"`: geteilte Bereiche mit tmux oder iTerm2, erkannt von Ihrem Terminal

5332 * `"iterm2"`: iTerm2 native geteilte Bereiche über die `it2` CLI, in Claude Code v2.1.186 oder später5347 * `"iterm2"`: iTerm2 native geteilte Bereiche über die `it2` CLI

5333* **Standard**: `"in-process"`5348* **Standard**: `"in-process"`

5334* **Sitzungsspezifische Außerkraftsetzungen**: `--teammate-mode` hat Vorrang vor diesem Schlüssel für eine Sitzung5349* **Sitzungsspezifische Außerkraftsetzungen**: `--teammate-mode` hat Vorrang vor diesem Schlüssel für eine Sitzung

5335 5350 


5339}5354}

5340```5355```

5341 5356 

5342Der Wert `iterm2` erfordert Claude Code v2.1.186 oder später.

5343 

5344<span id="worktree-settings" />5357<span id="worktree-settings" />

5345 5358 

5346<h3 id="worktree">5359<h3 id="worktree">


6200 6213 

6201Claude Code akzeptiert weiterhin ein `--mcp-config`, dessen Server alle In-Process-Einträge vom Typ `type: "sdk"` sind, sodass das Agent SDK und die VS Code-Erweiterung weiterhin funktionieren. Benutzer können weiterhin Server mit `claude mcp add` oder einer `.mcp.json`-Datei hinzufügen; für Pro-Server-Kontrolle setzen Sie auch [`allowedMcpServers`](/docs/de/managed-mcp). Erfordert Claude Code v2.1.193 oder später.6214Claude Code akzeptiert weiterhin ein `--mcp-config`, dessen Server alle In-Process-Einträge vom Typ `type: "sdk"` sind, sodass das Agent SDK und die VS Code-Erweiterung weiterhin funktionieren. Benutzer können weiterhin Server mit `claude mcp add` oder einer `.mcp.json`-Datei hinzufügen; für Pro-Server-Kontrolle setzen Sie auch [`allowedMcpServers`](/docs/de/managed-mcp). Erfordert Claude Code v2.1.193 oder später.

6202 6215 

6216Die gleiche Überprüfung deckt Plugin-Ordner ab, die in der Umgebungsvariablen [`CLAUDE_CODE_PLUGIN_DIRS`](/docs/de/env-vars#variables) benannt sind, was Claude Code v2.1.280 oder später erfordert. Wenn die Variable einen Ordner benennt, wird Claude Code mit dem gleichen Fehler beendet, und der Fehler sagt, die Variable zu deaktivieren.

6217 

6203In Cloud-Sitzungen ignoriert Claude Code auch vom Server bereitgestellte MCP-Updates während der Sitzung, den Pfad hinter der Cloud-Sitzungskonfiguration und SDK `setMcpServers()`-Aufrufe, die diese Sitzungen erreichen. In-Process-Einträge vom Typ `type: "sdk"` bleiben dort auch ausgenommen. Vor v2.1.239 blockierte ein vom Server bereitgestelltes `--mcp-config` den Start einer Cloud-Sitzung.6218In Cloud-Sitzungen ignoriert Claude Code auch vom Server bereitgestellte MCP-Updates während der Sitzung, den Pfad hinter der Cloud-Sitzungskonfiguration und SDK `setMcpServers()`-Aufrufe, die diese Sitzungen erreichen. In-Process-Einträge vom Typ `type: "sdk"` bleiben dort auch ausgenommen. Vor v2.1.239 blockierte ein vom Server bereitgestelltes `--mcp-config` den Start einer Cloud-Sitzung.

6204 6219 

6205<h3 id="forceremotesettingsrefresh">6220<h3 id="forceremotesettingsrefresh">

skills.md +16 −16

Details

129| Projekt | `.claude/skills/<skill-name>/SKILL.md` | Sitzungen in diesem Repository. Committen Sie es, damit Ihr Team es auch erhält |129| Projekt | `.claude/skills/<skill-name>/SKILL.md` | Sitzungen in diesem Repository. Committen Sie es, damit Ihr Team es auch erhält |

130| Verschachtelt | `<subdir>/.claude/skills/<skill-name>/SKILL.md` | Sitzungen, die in oder unter `<subdir>` gestartet werden. Eine Sitzung, die darüber gestartet wird, lädt den Skill einmal, wenn Claude an Dateien dort arbeitet. Siehe [Monorepos und Unterverzeichnisse](#discovery-from-parent-and-nested-directories) |130| Verschachtelt | `<subdir>/.claude/skills/<skill-name>/SKILL.md` | Sitzungen, die in oder unter `<subdir>` gestartet werden. Eine Sitzung, die darüber gestartet wird, lädt den Skill einmal, wenn Claude an Dateien dort arbeitet. Siehe [Monorepos und Unterverzeichnisse](#discovery-from-parent-and-nested-directories) |

131| Zusätzliches Verzeichnis | `.claude/skills/<skill-name>/SKILL.md` in einem Verzeichnis, das Sie mit `--add-dir` übergeben | Diese Sitzung. Siehe [Verzeichnisse außerhalb des Projekts](#skills-from-additional-directories) |131| Zusätzliches Verzeichnis | `.claude/skills/<skill-name>/SKILL.md` in einem Verzeichnis, das Sie mit `--add-dir` übergeben | Diese Sitzung. Siehe [Verzeichnisse außerhalb des Projekts](#skills-from-additional-directories) |

132| Plugin | `<plugin>/skills/<skill-name>/SKILL.md` | Überall dort, wo das [Plugin](/docs/de/plugins) aktiviert ist, als `/plugin-name:skill-name` |132| Plugin | `<plugin>/skills/<skill-name>/SKILL.md` | Überall dort, wo das [Plugin](/docs/de/plugins/overview) aktiviert ist, als `/plugin-name:skill-name` |

133| claude.ai-Konto | Skills, die für Ihr claude.ai-Konto aktiviert sind | Cowork-Sitzungen, Cloud-Sitzungen und Terminal-Sitzungen, in denen Sie sich mit diesem Konto anmelden. Siehe [Skills, die von claude.ai synchronisiert werden](#how-synced-skills-behave) |133| claude.ai-Konto | Skills, die für Ihr claude.ai-Konto aktiviert sind | Cowork-Sitzungen, Cloud-Sitzungen und Terminal-Sitzungen, in denen Sie sich mit diesem Konto anmelden. Siehe [Skills, die von claude.ai synchronisiert werden](#how-synced-skills-behave) |

134 134 

135Skill-Ordner folgen auch diesen Regeln:135Skill-Ordner folgen auch diesen Regeln:

136 136 

137* **Symverlinkte Ordner**: Ein `<skill-name>`-Eintrag am Enterprise-, Personal- oder Projekt-Speicherort kann ein Symlink zu einem Verzeichnis an anderer Stelle auf der Festplatte sein. Claude Code liest `SKILL.md` aus dem Ziel und lädt den Skill einmal, auch wenn mehrere Speicherorte auf dasselbe Ziel verweisen. Plugin-Skills [handhaben Symlinks anders](/docs/de/plugins-reference#share-files-within-a-marketplace-with-symlinks).137* **Symverlinkte Ordner**: Ein `<skill-name>`-Eintrag am Enterprise-, Personal- oder Projekt-Speicherort kann ein Symlink zu einem Verzeichnis an anderer Stelle auf der Festplatte sein. Claude Code liest `SKILL.md` aus dem Ziel und lädt den Skill einmal, auch wenn mehrere Speicherorte auf dasselbe Ziel verweisen. Plugin-Skills [handhaben Symlinks anders](/docs/de/plugins/host-marketplace#share-files-within-a-marketplace-with-symlinks).

138* **Reservierter Name**: Benennen Sie einen Skill-Ordner nicht `synced`, in keiner Schreibweise. Claude Code verwendet `~/.claude/skills/synced/` für [Skills, die von claude.ai heruntergeladen werden](#where-synced-skills-load) und überspringt einen Skill, den Sie unter diesem Namen an den Enterprise-, Personal- und Projekt-Speicherorten erstellen.138* **Reservierter Name**: Benennen Sie einen Skill-Ordner nicht `synced`, in keiner Schreibweise. Claude Code verwendet `~/.claude/skills/synced/` für [Skills, die von claude.ai heruntergeladen werden](#where-synced-skills-load) und überspringt einen Skill, den Sie unter diesem Namen an den Enterprise-, Personal- und Projekt-Speicherorten erstellen.

139* **Befehlsdateien**: Eine Markdown-Datei in `.claude/commands/` ist das ältere Format und funktioniert immer noch. Sie unterstützt dieselbe [Frontmatter](#frontmatter-reference) außer `name` und `paths`. Um den Namen zu finden, den Sie eingeben, um ihn aufzurufen, siehe [Wie ein Skill seinen Befehlsnamen erhält](#how-a-skill-gets-its-command-name). Bevorzugen Sie einen Skill für neue Arbeiten, da Skills auch [unterstützende Dateien](#add-supporting-files) unterstützen.139* **Befehlsdateien**: Eine Markdown-Datei in `.claude/commands/` ist das ältere Format und funktioniert immer noch. Sie unterstützt dieselbe [Frontmatter](#frontmatter-reference) außer `name` und `paths`. Um den Namen zu finden, den Sie eingeben, um ihn aufzurufen, siehe [Wie ein Skill seinen Befehlsnamen erhält](#how-a-skill-gets-its-command-name). Bevorzugen Sie einen Skill für neue Arbeiten, da Skills auch [unterstützende Dateien](#add-supporting-files) unterstützen.

140* **Skill-Ordner als Plugin**: Fügen Sie eine `.claude-plugin/plugin.json` zu einem Skill-Ordner hinzu und er wird als [Plugin](/docs/de/plugins-reference#skills-directory-plugins) mit dem Namen `<name>@skills-dir` geladen, sodass er Agents, Hooks und MCP-Server bündeln kann. In einem Projekt `.claude/skills/` ist dies erforderlich, um zuerst den Workspace-Trust-Dialog zu akzeptieren.140* **Skill-Ordner als Plugin**: Fügen Sie eine `.claude-plugin/plugin.json` zu einem Skill-Ordner hinzu und er wird als [Plugin](/docs/de/plugins/loading#plugins-shared-through-a-repository) mit dem Namen `<name>@skills-dir` geladen, sodass er Agents, Hooks und MCP-Server bündeln kann. In einem Projekt `.claude/skills/` ist dies erforderlich, um zuerst den Workspace-Trust-Dialog zu akzeptieren.

141 141 

142<h3 id="discovery-from-parent-and-nested-directories">142<h3 id="discovery-from-parent-and-nested-directories">

143 Skills in Monorepos und Unterverzeichnissen laden143 Skills in Monorepos und Unterverzeichnissen laden


275 275 

276Claude Code überwacht Skill-Verzeichnisse auf Dateiänderungen, außer im [Bare Mode](/docs/de/headless#start-faster-with-bare-mode). Wenn Sie einen Skill unter `~/.claude/skills/`, dem Projekt `.claude/skills/` oder einem `.claude/skills/` in einem `--add-dir`-Verzeichnis hinzufügen, bearbeiten oder entfernen, nimmt Claude Code die Änderung in der aktuellen Sitzung auf, ohne einen Neustart. Wenn Sie ein Top-Level-Skills-Verzeichnis erstellen, das beim Start der Sitzung nicht vorhanden war, starten Sie Claude Code neu, damit es das neue Verzeichnis überwachen kann.276Claude Code überwacht Skill-Verzeichnisse auf Dateiänderungen, außer im [Bare Mode](/docs/de/headless#start-faster-with-bare-mode). Wenn Sie einen Skill unter `~/.claude/skills/`, dem Projekt `.claude/skills/` oder einem `.claude/skills/` in einem `--add-dir`-Verzeichnis hinzufügen, bearbeiten oder entfernen, nimmt Claude Code die Änderung in der aktuellen Sitzung auf, ohne einen Neustart. Wenn Sie ein Top-Level-Skills-Verzeichnis erstellen, das beim Start der Sitzung nicht vorhanden war, starten Sie Claude Code neu, damit es das neue Verzeichnis überwachen kann.

277 277 

278Die Live-Änderungserkennung deckt nur `SKILL.md`-Text ab. Für einen Skill-Ordner, der auch ein [Plugin](/docs/de/plugins-reference#skills-directory-plugins) ist, benötigen Änderungen an `hooks/`, `.mcp.json`, `agents/` und `output-styles/` `/reload-plugins`, um wirksam zu werden.278Die Live-Änderungserkennung deckt nur `SKILL.md`-Text ab. Für einen Skill-Ordner, der auch ein [Plugin](/docs/de/plugins/loading#plugins-shared-through-a-repository) ist, benötigen Änderungen an `hooks/`, `.mcp.json`, `agents/` und `output-styles/` `/reload-plugins`, um wirksam zu werden.

279 279 

280<h3 id="remove-a-skill">280<h3 id="remove-a-skill">

281 Entfernen Sie einen Skill281 Entfernen Sie einen Skill


285 285 

286* **Persönlicher oder Projekt-Skill**: Löschen Sie das Verzeichnis des Skills, `~/.claude/skills/<skill-name>/` oder `.claude/skills/<skill-name>/`. Claude Code [entfernt ihn aus `/skills` in der aktuellen Sitzung](#live-change-detection); Inhalte, die Claude Code bereits daraus geladen hat, folgen dem [Skill-Content-Lebenszyklus](#skill-content-lifecycle).286* **Persönlicher oder Projekt-Skill**: Löschen Sie das Verzeichnis des Skills, `~/.claude/skills/<skill-name>/` oder `.claude/skills/<skill-name>/`. Claude Code [entfernt ihn aus `/skills` in der aktuellen Sitzung](#live-change-detection); Inhalte, die Claude Code bereits daraus geladen hat, folgen dem [Skill-Content-Lebenszyklus](#skill-content-lifecycle).

287* **Enterprise-Skill**: Ein Administrator löscht das Verzeichnis des Skills aus `.claude/skills/` im [Verzeichnis für verwaltete Einstellungen](/docs/de/managed-settings#delivery-mechanisms), zum Beispiel `/etc/claude-code/.claude/skills/<skill-name>/` auf Linux.287* **Enterprise-Skill**: Ein Administrator löscht das Verzeichnis des Skills aus `.claude/skills/` im [Verzeichnis für verwaltete Einstellungen](/docs/de/managed-settings#delivery-mechanisms), zum Beispiel `/etc/claude-code/.claude/skills/<skill-name>/` auf Linux.

288* **Plugin-Skill**: Deaktivieren oder deinstallieren Sie das Plugin, das ihn bereitstellt, aus dem `/plugin`-Menü oder mit `/plugin uninstall <plugin-name>@<marketplace-name>`. Claude Code entlädt die Skills des Plugins, wenn [die Änderung angewendet wird](/docs/de/discover-plugins#apply-plugin-changes-without-restarting) oder wenn Sie neu starten.288* **Plugin-Skill**: Deaktivieren oder deinstallieren Sie das Plugin, das ihn bereitstellt, aus dem `/plugin`-Menü oder mit `/plugin uninstall <plugin-name>@<marketplace-name>`. Claude Code entlädt die Skills des Plugins, wenn [die Änderung angewendet wird](/docs/de/plugins/cli-reference#reload-plugins) oder wenn Sie neu starten.

289* **Skill, der von claude.ai synchronisiert wird**: Schalten Sie den Skill für Ihr claude.ai-Konto aus, an derselben Stelle, an der Sie ihn [aktiviert haben](#skills-in-cowork-and-cloud-sessions). Claude Code entfernt ihn aus `~/.claude/skills/synced/` beim nächsten Mal, wenn es [Ihre Skills synchronisiert](#where-synced-skills-load). Wenn Sie das Verzeichnis stattdessen von Hand löschen, lädt die nächste Synchronisierung es erneut herunter, während der Skill auf claude.ai aktiviert bleibt.289* **Skill, der von claude.ai synchronisiert wird**: Schalten Sie den Skill für Ihr claude.ai-Konto aus, an derselben Stelle, an der Sie ihn [aktiviert haben](#skills-in-cowork-and-cloud-sessions). Claude Code entfernt ihn aus `~/.claude/skills/synced/` beim nächsten Mal, wenn es [Ihre Skills synchronisiert](#where-synced-skills-load). Wenn Sie das Verzeichnis stattdessen von Hand löschen, lädt die nächste Synchronisierung es erneut herunter, während der Skill auf claude.ai aktiviert bleibt.

290* **Gebündelter Skill**: Setzen Sie [`disableBundledSkills`](#bundled-skills) auf `true`, um gebündelte Skills auszuschalten, oder setzen Sie einen Skill auf `"off"` in [`skillOverrides`](#override-skill-visibility-from-settings), um ihn auszublenden.290* **Gebündelter Skill**: Setzen Sie [`disableBundledSkills`](#bundled-skills) auf `true`, um gebündelte Skills auszuschalten, oder setzen Sie einen Skill auf `"off"` in [`skillOverrides`](#override-skill-visibility-from-settings), um ihn auszublenden.

291 291 


389 389 

390| Verteilungspfad | Frontmatter-Felder, die Sie verwenden können |390| Verteilungspfad | Frontmatter-Felder, die Sie verwenden können |

391| :----------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------- |391| :----------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------- |

392| Claude Code-Fähigkeiten auf [beliebiger Ebene](#where-skills-live), einschließlich [Plugin](/docs/de/plugins)-Fähigkeiten | Jedes Feld in der obigen Tabelle |392| Claude Code-Fähigkeiten auf [beliebiger Ebene](#where-skills-live), einschließlich [Plugin](/docs/de/plugins/overview)-Fähigkeiten | Jedes Feld in der obigen Tabelle |

393| claude.ai-Fähigkeits-Uploads, die Skills-API und Verpackung mit `package_skill.py` aus [anthropics/skills](https://github.com/anthropics/skills) | `name`, `description`, `license`, `compatibility`, `metadata`, `allowed-tools` |393| claude.ai-Fähigkeits-Uploads, die Skills-API und Verpackung mit `package_skill.py` aus [anthropics/skills](https://github.com/anthropics/skills) | `name`, `description`, `license`, `compatibility`, `metadata`, `allowed-tools` |

394 394 

395Wenn Sie eine persönliche Fähigkeit für Ihr claude.ai-Konto aktivieren, um sie beispielsweise in [Cowork- und Cloud-Sitzungen](#skills-in-cowork-and-cloud-sessions) und Routinen zu verwenden, laden Sie sie auf claude.ai hoch, sodass die gleichen Regeln gelten.395Wenn Sie eine persönliche Fähigkeit für Ihr claude.ai-Konto aktivieren, um sie beispielsweise in [Cowork- und Cloud-Sitzungen](#skills-in-cowork-and-cloud-sessions) und Routinen zu verwenden, laden Sie sie auf claude.ai hoch, sodass die gleichen Regeln gelten.


411Die folgende Tabelle zeigt, woher der Befehlsname für jedes Layout kommt:411Die folgende Tabelle zeigt, woher der Befehlsname für jedes Layout kommt:

412 412 

413| Fähigkeitsort | Befehlsnamenquelle | Beispiel |413| Fähigkeitsort | Befehlsnamenquelle | Beispiel |

414| :------------------------------------------------------------------------------------------------------------------------ | :----------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------ |414| :------------------------------------------------------------------------------------------------------------------------ | :----------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------- |

415| Fähigkeitsverzeichnis unter `~/.claude/skills/` oder `.claude/skills/` | Verzeichnisname | `.claude/skills/deploy-staging/SKILL.md` → `/deploy-staging` |415| Fähigkeitsverzeichnis unter `~/.claude/skills/` oder `.claude/skills/` | Verzeichnisname | `.claude/skills/deploy-staging/SKILL.md` → `/deploy-staging` |

416| [Verschachteltes](#where-skills-live) `.claude/skills/`-Verzeichnis, wenn der Name mit einer anderen Fähigkeit kollidiert | Unterverzzeichnisspfad relativ zum Arbeitsverzeichnis, dann der Fähigkeitsverzeichnisname | `apps/web/.claude/skills/deploy/SKILL.md` → `/apps/web:deploy` |416| [Verschachteltes](#where-skills-live) `.claude/skills/`-Verzeichnis, wenn der Name mit einer anderen Fähigkeit kollidiert | Unterverzzeichnisspfad relativ zum Arbeitsverzeichnis, dann der Fähigkeitsverzeichnisname | `apps/web/.claude/skills/deploy/SKILL.md` → `/apps/web:deploy` |

417| Datei unter `.claude/commands/` | Dateiname ohne Erweiterung | `.claude/commands/deploy.md` → `/deploy` |417| Datei unter `.claude/commands/` | Dateiname ohne Erweiterung | `.claude/commands/deploy.md` → `/deploy` |

418| Datei in einem Unterverzeichnis von `.claude/commands/` | Unterverzzeichnisspfad relativ zu `commands/` mit jedem `/` ersetzt durch `:`, dann der Dateiname ohne Erweiterung | `.claude/commands/frontend/component.md` → `/frontend:component` |418| Datei in einem Unterverzeichnis von `.claude/commands/` | Unterverzzeichnisspfad relativ zu `commands/` mit jedem `/` ersetzt durch `:`, dann der Dateiname ohne Erweiterung | `.claude/commands/frontend/component.md` → `/frontend:component` |

419| Plugin `skills/` Unterverzeichnis | Frontmatter `name` oder der Verzeichnisname, mit Namespace durch Plugin | `my-plugin/skills/review/SKILL.md` → `/my-plugin:review`, oder `/my-plugin:fancy` mit `name: fancy` |419| Plugin `skills/` Unterverzeichnis | Frontmatter `name` oder der Verzeichnisname, mit Namespace durch Plugin | `my-plugin/skills/review/SKILL.md` → `/my-plugin:review`, oder `/my-plugin:fancy` mit `name: fancy` |

420| Plugin-Root `SKILL.md` | Frontmatter `name`, mit dem Plugin-Verzeichnisnamen als Fallback | `my-plugin/SKILL.md` mit `name: review` → `/my-plugin:review`. Siehe [Pfadverhaltenregeln](/docs/de/plugins-reference#path-behavior-rules) |420| Plugin-Root `SKILL.md` | Frontmatter `name`, mit dem Plugin-Verzeichnisnamen als Fallback | `my-plugin/SKILL.md` mit `name: review` → `/my-plugin:review`. Siehe [eine einzelne Fähigkeit im Plugin-Root](/docs/de/plugins/components#skills) |

421| Fähigkeit [synchronisiert von claude.ai](#how-synced-skills-behave) | Der Name der Fähigkeit auf Ihrem claude.ai-Konto, mit dem Präfix `anthropic-skills:` | Kontofähigkeit `deploy` → `/anthropic-skills:deploy`, oder `/deploy`, wenn kein anderer Befehl diesen Namen verwendet |421| Fähigkeit [synchronisiert von claude.ai](#how-synced-skills-behave) | Der Name der Fähigkeit auf Ihrem claude.ai-Konto, mit dem Präfix `anthropic-skills:` | Kontofähigkeit `deploy` → `/anthropic-skills:deploy`, oder `/deploy`, wenn kein anderer Befehl diesen Namen verwendet |

422 422 

423In einer Plugin-Fähigkeit ersetzt das Frontmatter-Feld `name` den Verzeichnisnamen im letzten Segment des Befehls, sodass `my-plugin/skills/review/SKILL.md` mit `name: fancy` zu `/my-plugin:fancy` wird. Der bloße `/fancy` ruft die Fähigkeit auch auf, es sei denn, ein anderer Befehl verwendet bereits diesen Namen. Wenn der `name`, den Sie schreiben, bereits mit dem eigenen Präfix des Plugins beginnt, fügt Claude Code das Präfix nicht erneut auf v2.1.246 oder später hinzu. Zum Beispiel wird `name: my-plugin:fancy` immer noch zu `/my-plugin:fancy`. Von v2.1.216 bis v2.1.245 verdoppelte Claude Code das Präfix, wenn der `name` es bereits trug.423In einer Plugin-Fähigkeit ersetzt das Frontmatter-Feld `name` den Verzeichnisnamen im letzten Segment des Befehls, sodass `my-plugin/skills/review/SKILL.md` mit `name: fancy` zu `/my-plugin:fancy` wird. Der bloße `/fancy` ruft die Fähigkeit auch auf, es sei denn, ein anderer Befehl verwendet bereits diesen Namen. Wenn der `name`, den Sie schreiben, bereits mit dem eigenen Präfix des Plugins beginnt, fügt Claude Code das Präfix nicht erneut auf v2.1.246 oder später hinzu. Zum Beispiel wird `name: my-plugin:fancy` immer noch zu `/my-plugin:fancy`. Von v2.1.216 bis v2.1.245 verdoppelte Claude Code das Präfix, wenn der `name` es bereits trug.


433Fähigkeiten unterstützen Zeichenkettensubstitution für dynamische Werte im Fähigkeitsinhalt:433Fähigkeiten unterstützen Zeichenkettensubstitution für dynamische Werte im Fähigkeitsinhalt:

434 434 

435| Variable | Beschreibung |435| Variable | Beschreibung |

436| :---------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |436| :---------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

437| `$ARGUMENTS` | Alle Argumente, die beim Aufrufen der Fähigkeit übergeben werden. Wenn kein Platzhalter ein Argument empfängt, hängt Claude Code `ARGUMENTS: <value>` am Ende des Fähigkeitsinhalts an. Siehe [Argumente an Fähigkeiten übergeben](#pass-arguments-to-skills). |437| `$ARGUMENTS` | Alle Argumente, die beim Aufrufen der Fähigkeit übergeben werden. Wenn kein Platzhalter ein Argument empfängt, hängt Claude Code `ARGUMENTS: <value>` am Ende des Fähigkeitsinhalts an. Siehe [Argumente an Fähigkeiten übergeben](#pass-arguments-to-skills). |

438| `$ARGUMENTS[N]` | Greifen Sie auf ein bestimmtes Argument nach 0-basiertem Index zu, z. B. `$ARGUMENTS[0]` für das erste Argument. |438| `$ARGUMENTS[N]` | Greifen Sie auf ein bestimmtes Argument nach 0-basiertem Index zu, z. B. `$ARGUMENTS[0]` für das erste Argument. |

439| `$N` | Kurzform für `$ARGUMENTS[N]`, z. B. `$0` für das erste Argument oder `$1` für das zweite. |439| `$N` | Kurzform für `$ARGUMENTS[N]`, z. B. `$0` für das erste Argument oder `$1` für das zweite. |


442| `${CLAUDE_EFFORT}` | Die aktuelle Aufwandsstufe: `low`, `medium`, `high`, `xhigh` oder `max`. Ultracode ist keine separate Stufe und wird als `xhigh` gemeldet. Verwenden Sie dies, um Fähigkeitsanweisungen an die aktive Aufwandseinstellung anzupassen. |442| `${CLAUDE_EFFORT}` | Die aktuelle Aufwandsstufe: `low`, `medium`, `high`, `xhigh` oder `max`. Ultracode ist keine separate Stufe und wird als `xhigh` gemeldet. Verwenden Sie dies, um Fähigkeitsanweisungen an die aktive Aufwandseinstellung anzupassen. |

443| `${CLAUDE_SKILL_DIR}` | Das Verzeichnis, das die `SKILL.md`-Datei der Fähigkeit enthält. Für Plugin-Fähigkeiten ist dies das Fähigkeitsunterverzeichnis innerhalb des Plugins, nicht die Plugin-Root. Verwenden Sie dies in Bash-Injektionsbefehlen, um auf Skripte oder Dateien zu verweisen, die mit der Fähigkeit gebündelt sind, unabhängig vom aktuellen Arbeitsverzeichnis. |443| `${CLAUDE_SKILL_DIR}` | Das Verzeichnis, das die `SKILL.md`-Datei der Fähigkeit enthält. Für Plugin-Fähigkeiten ist dies das Fähigkeitsunterverzeichnis innerhalb des Plugins, nicht die Plugin-Root. Verwenden Sie dies in Bash-Injektionsbefehlen, um auf Skripte oder Dateien zu verweisen, die mit der Fähigkeit gebündelt sind, unabhängig vom aktuellen Arbeitsverzeichnis. |

444| `${CLAUDE_PROJECT_DIR}` | Das Projektroot-Verzeichnis. Dies ist der gleiche Pfad, den [Hooks](/docs/de/hooks#reference-scripts-by-path) und MCP-Server als `CLAUDE_PROJECT_DIR` erhalten. Verwenden Sie dies, um auf projektlokale Skripte oder Dateien zu verweisen, z. B. `${CLAUDE_PROJECT_DIR}/.claude/hooks/helper.sh`, unabhängig davon, wo die Fähigkeit installiert ist. |444| `${CLAUDE_PROJECT_DIR}` | Das Projektroot-Verzeichnis. Dies ist der gleiche Pfad, den [Hooks](/docs/de/hooks#reference-scripts-by-path) und MCP-Server als `CLAUDE_PROJECT_DIR` erhalten. Verwenden Sie dies, um auf projektlokale Skripte oder Dateien zu verweisen, z. B. `${CLAUDE_PROJECT_DIR}/.claude/hooks/helper.sh`, unabhängig davon, wo die Fähigkeit installiert ist. |

445| `${CLAUDE_PLUGIN_ROOT}` | Das Installationsverzeichnis des Plugins. Wird nur in Plugin-Fähigkeiten ersetzt. Verwenden Sie dies, um auf Skripte oder Dateien zu verweisen, die überall im Plugin gebündelt sind, einschließlich Ressourcen, die zwischen den Plugin-Fähigkeiten geteilt werden. Siehe [Plugin-Umgebungsvariablen](/docs/de/plugins-reference#environment-variables). |445| `${CLAUDE_PLUGIN_ROOT}` | Das Installationsverzeichnis des Plugins. Wird nur in Plugin-Fähigkeiten ersetzt. Verwenden Sie dies, um auf Skripte oder Dateien zu verweisen, die überall im Plugin gebündelt sind, einschließlich Ressourcen, die zwischen den Plugin-Fähigkeiten geteilt werden. Siehe [Plugin-Umgebungsvariablen](/docs/de/plugins/manifest-reference#environment-variables). |

446| `${CLAUDE_PLUGIN_DATA}` | Das [persistente Datenverzeichnis](/docs/de/plugins-reference#persistent-data-directory) des Plugins, das Plugin-Updates überlebt. Wird nur in Plugin-Fähigkeiten ersetzt. Verwenden Sie dies, um auf installierte Abhängigkeiten, generierte Dateien oder Caches zu verweisen, die ein Update überleben müssen. |446| `${CLAUDE_PLUGIN_DATA}` | Das [persistente Datenverzeichnis](/docs/de/plugins/components#path-variables-and-persistent-data) des Plugins, das Plugin-Updates überlebt. Wird nur in Plugin-Fähigkeiten ersetzt. Verwenden Sie dies, um auf installierte Abhängigkeiten, generierte Dateien oder Caches zu verweisen, die ein Update überleben müssen. |

447 447 

448Claude Code ersetzt `${CLAUDE_SKILL_DIR}` und `${CLAUDE_PROJECT_DIR}` an zwei Stellen: im Markdown-Inhalt der Fähigkeit und in Bash-Regeln im [`allowed-tools`](#frontmatter-reference)-Frontmatter. In einer Plugin-Fähigkeit ersetzt Claude Code `${CLAUDE_PLUGIN_ROOT}` und `${CLAUDE_PLUGIN_DATA}` an den gleichen zwei Stellen. Die Verwendung der gleichen Variable an beiden Stellen ermöglicht es einer Fähigkeit, ein gebündeltes Skript ohne Genehmigungsaufforderung auszuführen. Die folgende Fähigkeit zeigt das Muster:448Claude Code ersetzt `${CLAUDE_SKILL_DIR}` und `${CLAUDE_PROJECT_DIR}` an zwei Stellen: im Markdown-Inhalt der Fähigkeit und in Bash-Regeln im [`allowed-tools`](#frontmatter-reference)-Frontmatter. In einer Plugin-Fähigkeit ersetzt Claude Code `${CLAUDE_PLUGIN_ROOT}` und `${CLAUDE_PLUGIN_DATA}` an den gleichen zwei Stellen. Die Verwendung der gleichen Variable an beiden Stellen ermöglicht es einer Fähigkeit, ein gebündeltes Skript ohne Genehmigungsaufforderung auszuführen. Die folgende Fähigkeit zeigt das Muster:

449 449 


892 892 

893Die Überprüfung beider ist ein Baseline-Vergleich. Sammle ein paar realistische Prompts, führe jeden in einer neuen Sitzung mit dem verfügbaren Skill aus und wiederhole dies mit ihm [deaktiviert](#override-skill-visibility-from-settings), und vergleiche die Ergebnisse. Eine neue Sitzung ist wichtig, da der verbleibende Kontext aus der Erstellung des Skills Lücken in den geschriebenen Anweisungen verdeckt.893Die Überprüfung beider ist ein Baseline-Vergleich. Sammle ein paar realistische Prompts, führe jeden in einer neuen Sitzung mit dem verfügbaren Skill aus und wiederhole dies mit ihm [deaktiviert](#override-skill-visibility-from-settings), und vergleiche die Ergebnisse. Eine neue Sitzung ist wichtig, da der verbleibende Kontext aus der Erstellung des Skills Lücken in den geschriebenen Anweisungen verdeckt.

894 894 

895Zwei Tools automatisieren diesen Vergleich. Für einen Skill, der in einem [Plugin](/docs/de/plugins) ausgeliefert wird, führt [`claude plugin eval`](/docs/de/plugin-evals) jeden Prompt in einer isolierten Sitzung mit und ohne das Plugin aus, bewertet ihn mit Gradern, die du definierst oder die er für dich schreibt, und beendet sich mit einem Nicht-Null-Wert unterhalb eines Schwellwerts, sodass du CI darauf abstimmen kannst. Um an einem einzelnen Skill in einer Claude Code-Konversation zu iterieren, führt das unten stehende skill-creator-Plugin eine ähnliche Schleife mit seinem eigenen `evals/evals.json`-Format aus. Die beiden Formate sind nicht austauschbar.895Zwei Tools automatisieren diesen Vergleich. Für einen Skill, der in einem [Plugin](/docs/de/plugins/overview) ausgeliefert wird, führt [`claude plugin eval`](/docs/de/plugin-evals) jeden Prompt in einer isolierten Sitzung mit und ohne das Plugin aus, bewertet ihn mit Gradern, die du definierst oder die er für dich schreibt, und beendet sich mit einem Nicht-Null-Wert unterhalb eines Schwellwerts, sodass du CI darauf abstimmen kannst. Um an einem einzelnen Skill in einer Claude Code-Konversation zu iterieren, führt das unten stehende skill-creator-Plugin eine ähnliche Schleife mit seinem eigenen `evals/evals.json`-Format aus. Die beiden Formate sind nicht austauschbar.

896 896 

897<h3 id="run-evals-with-skill-creator">897<h3 id="run-evals-with-skill-creator">

898 Evals mit skill-creator ausführen898 Evals mit skill-creator ausführen


907Wenn die Installation fehlschlägt, vergleiche die Nachricht, die Claude Code meldet:907Wenn die Installation fehlschlägt, vergleiche die Nachricht, die Claude Code meldet:

908 908 

909* `Marketplace "claude-plugins-official" not found`: Füge den Marketplace mit `/plugin marketplace add anthropics/claude-plugins-official` hinzu und versuche dann die Installation erneut.909* `Marketplace "claude-plugins-official" not found`: Füge den Marketplace mit `/plugin marketplace add anthropics/claude-plugins-official` hinzu und versuche dann die Installation erneut.

910* Das Plugin wird [nicht im Marketplace gefunden](/docs/de/discover-plugins#install-plugins): Überprüfe den Plugin-Namen.910* Das Plugin wird [nicht im Marketplace gefunden](/docs/de/plugins/install#install-a-plugin): Überprüfe den Plugin-Namen.

911 911 

912Wenn die Installationszusammenfassung `Run /reload-plugins to activate.` meldet, führt Claude Code dann diesen Reload für dich aus. Wenn der Reload warnt, dass deine nächste Nachricht die Konversation erneut lesen würde, führe `/reload-plugins --force` aus, um die Skills des Plugins in der aktuellen Sitzung verfügbar zu machen. Bitte dann Claude, einen vorhandenen Skill zu evaluieren, zum Beispiel `evaluate my summarize-changes skill with skill-creator`. Das Plugin führt dich durch das Schreiben von Testfällen und führt die Schleife aus:912Wenn die Installationszusammenfassung `Run /reload-plugins to activate.` meldet, führt Claude Code dann diesen Reload für dich aus. Wenn der Reload warnt, dass deine nächste Nachricht die Konversation erneut lesen würde, führe `/reload-plugins --force` aus, um die Skills des Plugins in der aktuellen Sitzung verfügbar zu machen. Bitte dann Claude, einen vorhandenen Skill zu evaluieren, zum Beispiel `evaluate my summarize-changes skill with skill-creator`. Das Plugin führt dich durch das Schreiben von Testfällen und führt die Schleife aus:

913 913 


928Fähigkeiten können je nach Zielgruppe in verschiedenen Bereichen verteilt werden:928Fähigkeiten können je nach Zielgruppe in verschiedenen Bereichen verteilt werden:

929 929 

930* **Projektfähigkeiten**: Commit `.claude/skills/` zur Versionskontrolle930* **Projektfähigkeiten**: Commit `.claude/skills/` zur Versionskontrolle

931* **Plugins**: Erstellen Sie ein `skills/`-Verzeichnis in Ihrem [Plugin](/docs/de/plugins)931* **Plugins**: Erstellen Sie ein `skills/`-Verzeichnis in Ihrem [Plugin](/docs/de/plugins/overview)

932* **Verwaltet**: Bereitstellung organisationsweit über [verwaltete Einstellungen](/docs/de/managed-settings)932* **Verwaltet**: Bereitstellung organisationsweit über [verwaltete Einstellungen](/docs/de/managed-settings)

933 933 

934<h3 id="generate-visual-output">934<h3 id="generate-visual-output">


1143 1143 

1144Wenn der Skill in einem Plugin enthalten ist, können Sie messen, wie oft er bei realistischen Prompts ausgelöst wird, anstatt ihn einzeln zu überprüfen: Schreiben Sie einen Eval-Fall mit einem [`tool_used: Skill` Grader](/docs/de/plugin-evals#create-your-first-eval-suite) und führen Sie ihn mit `claude plugin eval` nach jeder Beschreibungsänderung aus.1144Wenn der Skill in einem Plugin enthalten ist, können Sie messen, wie oft er bei realistischen Prompts ausgelöst wird, anstatt ihn einzeln zu überprüfen: Schreiben Sie einen Eval-Fall mit einem [`tool_used: Skill` Grader](/docs/de/plugin-evals#create-your-first-eval-suite) und führen Sie ihn mit `claude plugin eval` nach jeder Beschreibungsänderung aus.

1145 1145 

1146Um `SKILL.md`-Dateien zu finden, deren Frontmatter nicht geparst wird, führen Sie [`claude plugin validate`](/docs/de/plugin-marketplaces#validate-a-plugin-or-a-directory-without-a-manifest) im Skills-Verzeichnis aus, beispielsweise `claude plugin validate .claude/skills` für Projekt-Skills oder `claude plugin validate ~/.claude/skills` für persönliche Skills. Erfordert Claude Code v2.1.233 oder später.1146Um `SKILL.md`-Dateien zu finden, deren Frontmatter nicht geparst wird, führen Sie [`claude plugin validate`](/docs/de/plugins/cli-reference#validate-a-directory) im Skills-Verzeichnis aus, beispielsweise `claude plugin validate .claude/skills` für Projekt-Skills oder `claude plugin validate ~/.claude/skills` für persönliche Skills. Erfordert Claude Code v2.1.233 oder später.

1147 1147 

1148<h3 id="skill-triggers-too-often">1148<h3 id="skill-triggers-too-often">

1149 Skill wird zu oft ausgelöst1149 Skill wird zu oft ausgelöst


1184* **[Evaluating skill output quality](https://agentskills.io/skill-creation/evaluating-skills)**: das Eval-Dateiformat und Iterations-Workflow auf agentskills.io1184* **[Evaluating skill output quality](https://agentskills.io/skill-creation/evaluating-skills)**: das Eval-Dateiformat und Iterations-Workflow auf agentskills.io

1185* **[Skill authoring best practices](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/best-practices)**: Schreibanleitung, die über Claude-Produkte hinweg gilt1185* **[Skill authoring best practices](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/best-practices)**: Schreibanleitung, die über Claude-Produkte hinweg gilt

1186* **[Subagenten](/docs/de/sub-agents)**: Delegieren Sie Aufgaben an spezialisierte Agenten1186* **[Subagenten](/docs/de/sub-agents)**: Delegieren Sie Aufgaben an spezialisierte Agenten

1187* **[Plugins](/docs/de/plugins)**: Packen und verteilen Sie Skills mit anderen Erweiterungen1187* **[Plugins](/docs/de/plugins/overview)**: Packen und verteilen Sie Skills mit anderen Erweiterungen

1188* **[Hooks](/docs/de/hooks)**: Automatisieren Sie Workflows um Tool-Ereignisse1188* **[Hooks](/docs/de/hooks)**: Automatisieren Sie Workflows um Tool-Ereignisse

1189* **[Memory](/docs/de/memory)**: Verwalten Sie CLAUDE.md-Dateien für persistenten Kontext1189* **[Memory](/docs/de/memory)**: Verwalten Sie CLAUDE.md-Dateien für persistenten Kontext

1190* **[Befehle](/docs/de/commands)**: Referenz für integrierte Befehle und gebündelte Skills1190* **[Befehle](/docs/de/commands)**: Referenz für integrierte Befehle und gebündelte Skills

statusline.md +1 −1

Details

1142 1142 

1143Schreiben Sie eine JSON-Zeile auf stdout pro Zeile, die Sie überschreiben möchten, in der Form `{"id": "<task id>", "content": "<row body>"}`. Der `content` String wird wie vorhanden gerendert, einschließlich ANSI-Farben und OSC 8 Hyperlinks. Lassen Sie die `id` einer Aufgabe weg, um die Standard-Rendering für diese Zeile zu behalten; geben Sie einen leeren `content` String aus, um sie auszublenden.1143Schreiben Sie eine JSON-Zeile auf stdout pro Zeile, die Sie überschreiben möchten, in der Form `{"id": "<task id>", "content": "<row body>"}`. Der `content` String wird wie vorhanden gerendert, einschließlich ANSI-Farben und OSC 8 Hyperlinks. Lassen Sie die `id` einer Aufgabe weg, um die Standard-Rendering für diese Zeile zu behalten; geben Sie einen leeren `content` String aus, um sie auszublenden.

1144 1144 

1145Die gleichen Vertrauens-, `disableAllHooks`- und [`allowManagedHooksOnly`](/docs/de/settings-reference#allowmanagedhooksonly) Gates, die für `statusLine` gelten, gelten auch hier. Plugins können eine Standard-`subagentStatusLine` in ihrer [`settings.json`](/docs/de/plugins-reference#standard-plugin-layout) versenden, aber im Gegensatz zu Hooks werden Plugin-Werte nicht unter `allowManagedHooksOnly` ausgeführt, auch wenn das Plugin in verwalteten Einstellungen `enabledPlugins` erzwungen aktiviert ist.1145Die gleichen Vertrauens-, `disableAllHooks`- und [`allowManagedHooksOnly`](/docs/de/settings-reference#allowmanagedhooksonly) Gates, die für `statusLine` gelten, gelten auch hier. Plugins können eine Standard-`subagentStatusLine` in ihrer [`settings.json`](/docs/de/plugins/manifest-reference#standard-layout) versenden, aber im Gegensatz zu Hooks werden Plugin-Werte nicht unter `allowManagedHooksOnly` ausgeführt, auch wenn das Plugin in verwalteten Einstellungen `enabledPlugins` erzwungen aktiviert ist.

1146 1146 

1147<h2 id="tips">1147<h2 id="tips">

1148 Tipps1148 Tipps

sub-agents.md +15 −13

Details

174| `--agents` CLI-Flag | Aktuelle Sitzung | 2 | JSON beim Starten von Claude Code übergeben |174| `--agents` CLI-Flag | Aktuelle Sitzung | 2 | JSON beim Starten von Claude Code übergeben |

175| `.claude/agents/` | Aktuelles Projekt | 3 | Claude fragen oder die Datei manuell erstellen |175| `.claude/agents/` | Aktuelles Projekt | 3 | Claude fragen oder die Datei manuell erstellen |

176| `~/.claude/agents/` | Alle Ihre Projekte | 4 | Claude fragen oder die Datei manuell erstellen |176| `~/.claude/agents/` | Alle Ihre Projekte | 4 | Claude fragen oder die Datei manuell erstellen |

177| Plugin-Verzeichnis `agents/` | Wo Plugin aktiviert ist | 5 (niedrigste) | Installiert mit [Plugins](/docs/de/plugins) |177| Plugin-Verzeichnis `agents/` | Wo Plugin aktiviert ist | 5 (niedrigste) | Installiert mit [Plugins](/docs/de/plugins/overview) |

178 178 

179**Projekt-Subagenten** (`.claude/agents/`) sind ideal für Subagenten, die spezifisch für eine Codebase sind. Checken Sie sie in die Versionskontrolle ein, damit Ihr Team sie gemeinsam verwenden und verbessern kann.179**Projekt-Subagenten** (`.claude/agents/`) sind ideal für Subagenten, die spezifisch für eine Codebase sind. Checken Sie sie in die Versionskontrolle ein, damit Ihr Team sie gemeinsam verwenden und verbessern kann.

180 180 

181Projekt-Subagenten werden durch Aufwärts-Traversierung vom aktuellen Arbeitsverzeichnis entdeckt, sodass jedes `.claude/agents/`-Verzeichnis zwischen dort und dem Repository-Root gescannt wird. Ab v2.1.178 verwendet Claude Code, wenn mehr als eines dieser verschachtelten Verzeichnisse denselben `name` definiert, die Definition, die dem Arbeitsverzeichnis am nächsten liegt.181Projekt-Subagenten werden durch Aufwärts-Traversierung vom aktuellen Arbeitsverzeichnis entdeckt, sodass jedes `.claude/agents/`-Verzeichnis zwischen dort und dem Repository-Root gescannt wird. Wenn mehr als eines dieser verschachtelten Verzeichnisse denselben `name` definiert, verwendet Claude Code die Definition, die dem Arbeitsverzeichnis am nächsten liegt.

182 182 

183Wenn Sie ein Verzeichnis mit `--add-dir` oder `/add-dir` hinzufügen, lädt Claude Code auch seinen `.claude/agents/`-Ordner zusammen mit Ihren Projekt-Subagenten. Siehe [Zusätzliche Verzeichnisse](/docs/de/permissions#additional-directories-grant-file-access-not-configuration) für welche anderen Konfigurationstypen aus `--add-dir` geladen werden. Um Subagenten über Projekte hinweg zu teilen, ohne `--add-dir` zu verwenden, nutzen Sie `~/.claude/agents/` oder ein [Plugin](/docs/de/plugins).183Wenn Sie ein Verzeichnis mit `--add-dir` oder `/add-dir` hinzufügen, lädt Claude Code auch seinen `.claude/agents/`-Ordner zusammen mit Ihren Projekt-Subagenten. Siehe [Zusätzliche Verzeichnisse](/docs/de/permissions#additional-directories-grant-file-access-not-configuration) für welche anderen Konfigurationstypen aus `--add-dir` geladen werden. Um Subagenten über Projekte hinweg zu teilen, ohne `--add-dir` zu verwenden, nutzen Sie `~/.claude/agents/` oder ein [Plugin](/docs/de/plugins/overview).

184 184 

185**Benutzer-Subagenten** (`~/.claude/agents/`) sind persönliche Subagenten, die in allen Ihren Projekten verfügbar sind.185**Benutzer-Subagenten** (`~/.claude/agents/`) sind persönliche Subagenten, die in allen Ihren Projekten verfügbar sind.

186 186 


238 238 

239**Verwaltete Subagenten** werden von Organisationsadministratoren bereitgestellt. Platzieren Sie Markdown-Dateien in `.claude/agents/` im [Verzeichnis der verwalteten Einstellungen](/docs/de/managed-settings#delivery-mechanisms), wobei Sie das gleiche Frontmatter-Format wie bei Projekt- und Benutzer-Subagenten verwenden. Verwaltete Definitionen haben Vorrang vor Projekt- und Benutzer-Subagenten mit demselben Namen.239**Verwaltete Subagenten** werden von Organisationsadministratoren bereitgestellt. Platzieren Sie Markdown-Dateien in `.claude/agents/` im [Verzeichnis der verwalteten Einstellungen](/docs/de/managed-settings#delivery-mechanisms), wobei Sie das gleiche Frontmatter-Format wie bei Projekt- und Benutzer-Subagenten verwenden. Verwaltete Definitionen haben Vorrang vor Projekt- und Benutzer-Subagenten mit demselben Namen.

240 240 

241**Plugin-Subagenten** stammen von [Plugins](/docs/de/plugins), die Sie installiert haben. Sie werden automatisch zusammen mit Ihren benutzerdefinierten Subagenten geladen und erscheinen in der @-Erwähnung-Typeahead unter ihrem scoped name. Siehe die [Plugin-Komponenten-Referenz](/docs/de/plugins-reference#agents) für Details zum Erstellen von Plugin-Subagenten.241**Plugin-Subagenten** stammen von [Plugins](/docs/de/plugins/overview), die Sie installiert haben. Sie werden automatisch zusammen mit Ihren benutzerdefinierten Subagenten geladen und erscheinen in der @-Erwähnung-Typeahead unter ihrem scoped name. Siehe die [Plugin-Komponenten-Referenz](/docs/de/plugins/components#agents) für Details zum Erstellen von Plugin-Subagenten.

242 242 

243<Note>243<Note>

244 Aus Sicherheitsgründen unterstützen Plugin-Subagenten die Frontmatter-Felder `hooks`, `mcpServers` oder `permissionMode` nicht. Diese Felder werden ignoriert, wenn Agenten aus einem Plugin geladen werden. Wenn Sie sie benötigen, kopieren Sie die Agent-Datei in `.claude/agents/` oder `~/.claude/agents/`. Sie können auch Regeln zu [`permissions.allow`](/docs/de/settings-reference#permissions-allow) in `settings.json` oder `settings.local.json` hinzufügen, aber diese Regeln gelten für die gesamte Sitzung, nicht nur für den Plugin-Subagenten.244 Aus Sicherheitsgründen unterstützen Plugin-Subagenten die Frontmatter-Felder `hooks`, `mcpServers` oder `permissionMode` nicht. Diese Felder werden ignoriert, wenn Agenten aus einem Plugin geladen werden. Wenn Sie sie benötigen, kopieren Sie die Agent-Datei in `.claude/agents/` oder `~/.claude/agents/`. Sie können auch Regeln zu [`permissions.allow`](/docs/de/settings-reference#permissions-allow) in `settings.json` oder `settings.local.json` hinzufügen, aber diese Regeln gelten für die gesamte Sitzung, nicht nur für den Plugin-Subagenten.


305 305 

306| Feld | Erforderlich | Beschreibung |306| Feld | Erforderlich | Beschreibung |

307| :---------------- | :----------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |307| :---------------- | :----------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

308| `name` | Ja | Eindeutige Kennung, wie `code-reviewer` oder `reviewer-v2`. [Hooks](/docs/de/hooks#subagentstart) erhalten diesen Wert als `agent_type`. Der Dateiname muss nicht übereinstimmen. Namen können kein `:` enthalten, das für [Plugin-Umfang-Identifier](/docs/de/plugins) wie `my-plugin:reviewer` reserviert ist. Claude Code lädt eine Datei, deren Name eins enthält, nicht und protokolliert einen Fehler im Debug-Protokoll. Vor v2.1.218 wurden solche Namen akzeptiert |308| `name` | Ja | Eindeutige Kennung, wie `code-reviewer` oder `reviewer-v2`. [Hooks](/docs/de/hooks#subagentstart) erhalten diesen Wert als `agent_type`. Der Dateiname muss nicht übereinstimmen. Namen können kein `:` enthalten, das für [Plugin-Umfang-Identifier](/docs/de/plugins/overview) wie `my-plugin:reviewer` reserviert ist. Claude Code lädt eine Datei, deren Name eins enthält, nicht und protokolliert einen Fehler im Debug-Protokoll. Vor v2.1.218 wurden solche Namen akzeptiert |

309| `description` | Ja | Wann Claude an diesen Subagenten delegieren sollte |309| `description` | Ja | Wann Claude an diesen Subagenten delegieren sollte |

310| `tools` | Nein | [Werkzeuge](#available-tools), die der Subagent verwenden kann, als kommagetrennte Zeichenkette wie `Read, Grep, Bash` oder eine YAML-Liste. Erbt jedes Werkzeug, das für Subagenten verfügbar ist, wenn weggelassen. Wenn kein Eintrag in der Liste sich zu einem Werkzeug auflöst, schlägt der Subagent normalerweise [fehl zu starten](/docs/de/errors#agent-would-be-spawned-with-zero-tools) mit einem Fehler, der die Einträge benennt. Um Skills in den Kontext zu laden, verwenden Sie das `skills`-Feld statt `Skill` hier aufzulisten |310| `tools` | Nein | [Werkzeuge](#available-tools), die der Subagent verwenden kann, als kommagetrennte Zeichenkette wie `Read, Grep, Bash` oder eine YAML-Liste. Erbt jedes Werkzeug, das für Subagenten verfügbar ist, wenn weggelassen. Wenn kein Eintrag in der Liste sich zu einem Werkzeug auflöst, schlägt der Subagent normalerweise [fehl zu starten](/docs/de/errors#agent-would-be-spawned-with-zero-tools) mit einem Fehler, der die Einträge benennt. Um Skills in den Kontext zu laden, verwenden Sie das `skills`-Feld statt `Skill` hier aufzulisten |

311| `disallowedTools` | Nein | Werkzeuge zum Verweigern, entfernt aus geerbter oder angegebener Liste. Gleiches Format wie `tools`. Ein Eintrag mit einem Spezifizierer, wie `Bash(git push *)`, entfernt immer noch das [ganze Werkzeug](#available-tools) |311| `disallowedTools` | Nein | Werkzeuge zum Verweigern, entfernt aus geerbter oder angegebener Liste. Gleiches Format wie `tools`. Ein Eintrag mit einem Spezifizierer, wie `Bash(git push *)`, entfernt immer noch das [ganze Werkzeug](#available-tools) |


349 349 

350Um das Debug-Protokoll zu sehen, führen Sie Claude Code mit `--debug` aus.350Um das Debug-Protokoll zu sehen, führen Sie Claude Code mit `--debug` aus.

351 351 

352Ein [Plugin-Subagent](/docs/de/plugins-reference#agents), dessen Frontmatter kein `name` hat oder nicht analysiert wird, wird immer noch unter seinem Dateinamen geladen.352Ein [Plugin-Subagent](/docs/de/plugins/components#agents), dessen Frontmatter kein `name` hat oder nicht analysiert wird, wird immer noch unter seinem Dateinamen geladen.

353 353 

354<h5 id="check-an-agents-directory-before-a-session">354<h5 id="check-an-agents-directory-before-a-session">

355 Überprüfen Sie ein `agents`-Verzeichnis vor einer Sitzung355 Überprüfen Sie ein `agents`-Verzeichnis vor einer Sitzung

356</h5>356</h5>

357 357 

358Um Dateien in einem `agents`-Verzeichnis zu finden, deren Frontmatter nicht analysiert wird, führen Sie `claude plugin validate` gegen das Verzeichnis aus, beispielsweise `.claude/agents` oder `~/.claude/agents`. Claude Code überprüft nur [das Verzeichnis, das Sie benennen](/docs/de/plugin-marketplaces#validate-a-plugin-or-a-directory-without-a-manifest), und kennzeichnet keine Datei, deren Frontmatter analysiert wird, aber kein `name` hat. Erfordert Claude Code v2.1.233 oder später.358Um Dateien in einem `agents`-Verzeichnis zu finden, deren Frontmatter nicht analysiert wird, führen Sie `claude plugin validate` gegen das Verzeichnis aus, beispielsweise `.claude/agents` oder `~/.claude/agents`. Claude Code überprüft nur [das Verzeichnis, das Sie benennen](/docs/de/plugins/cli-reference#validate-a-directory), und kennzeichnet keine Datei, deren Frontmatter analysiert wird, aber kein `name` hat. Erfordert Claude Code v2.1.233 oder später.

359 359 

360<h3 id="choose-a-model">360<h3 id="choose-a-model">

361 Wählen Sie ein Modell361 Wählen Sie ein Modell


573* Ein Name, der auf einen bereits konfigurierten Server verweist573* Ein Name, der auf einen bereits konfigurierten Server verweist

574* Ein Inline-Server in einer Agent-Datei aus `~/.claude/agents/`, in einer, die Sie mit `--agents` oder der SDK-Option `agents` übergeben, oder in einer, die verwaltete Einstellungen liefern574* Ein Inline-Server in einer Agent-Datei aus `~/.claude/agents/`, in einer, die Sie mit `--agents` oder der SDK-Option `agents` übergeben, oder in einer, die verwaltete Einstellungen liefern

575 575 

576Ab v2.1.153 gelten die MCP-Einschränkungen, die für die Hauptsitzung gelten, auch für Server, die im Subagenten-Frontmatter deklariert sind:576Die MCP-Einschränkungen, die für die Hauptsitzung gelten, gelten auch für Server, die im Subagenten-Frontmatter deklariert sind:

577 577 

578* [`--strict-mcp-config`](/docs/de/cli-reference) und [`--bare`](/docs/de/cli-reference)578* [`--strict-mcp-config`](/docs/de/cli-reference) und [`--bare`](/docs/de/cli-reference)

579* [Enterprise verwaltete MCP-Konfiguration](/docs/de/managed-mcp)579* [Enterprise verwaltete MCP-Konfiguration](/docs/de/managed-mcp)


820| `SubagentStart` | Agent-Typname | Wenn ein Subagent mit der Ausführung beginnt |820| `SubagentStart` | Agent-Typname | Wenn ein Subagent mit der Ausführung beginnt |

821| `SubagentStop` | Agent-Typname | Wenn ein Subagent abgeschlossen ist |821| `SubagentStop` | Agent-Typname | Wenn ein Subagent abgeschlossen ist |

822 822 

823Beide Ereignisse unterstützen Matcher, um bestimmte Agent-Typen nach Name zu adressieren. Der Matcher-Wert ist der `name` des Frontmatters des Agenten für Projekt- und Benutzer-Subagenten oder der Plugin-Umfang-Identifier wie `my-plugin:db-agent` für [Plugin-Subagenten](/docs/de/plugins). Ein Umfang-Name enthält einen Doppelpunkt, daher wird er als [unverankerte reguläre Ausdrücke](/docs/de/hooks#matcher-patterns) ausgewertet; verankern Sie ihn mit `^` und `$`, wie in `^my-plugin:db-agent$`, um nur diesen Agent zu treffen.823Beide Ereignisse unterstützen Matcher, um bestimmte Agent-Typen nach Name zu adressieren. Der Matcher-Wert ist der `name` des Frontmatters des Agenten für Projekt- und Benutzer-Subagenten oder der Plugin-Umfang-Identifier wie `my-plugin:db-agent` für [Plugin-Subagenten](/docs/de/plugins/components#agents). Ein Umfang-Name enthält einen Doppelpunkt, daher wird er als [unverankerte reguläre Ausdrücke](/docs/de/hooks#matcher-patterns) ausgewertet; verankern Sie ihn mit `^` und `$`, wie in `^my-plugin:db-agent$`, um nur diesen Agent zu treffen.

824 824 

825Dieses Beispiel führt ein Setup-Skript nur aus, wenn der `db-agent`-Subagent startet, und ein Cleanup-Skript, wenn ein beliebiger Subagent stoppt:825Dieses Beispiel führt ein Setup-Skript nur aus, wenn der `db-agent`-Subagent startet, und ein Cleanup-Skript, wenn ein beliebiger Subagent stoppt:

826 826 


862 862 

863Halten Sie Beschreibungen kurz: Claude Code zeigt eine Startwarnmeldung an, wenn die kombinierten Beschreibungen Ihrer Subagenten das [Limit von 15.000 Token](/docs/de/errors#agent-descriptions-are-over-the-15000-token-limit) überschreiten, und lädt dennoch jeden Subagenten.863Halten Sie Beschreibungen kurz: Claude Code zeigt eine Startwarnmeldung an, wenn die kombinierten Beschreibungen Ihrer Subagenten das [Limit von 15.000 Token](/docs/de/errors#agent-descriptions-are-over-the-15000-token-limit) überschreiten, und lädt dennoch jeden Subagenten.

864 864 

865Wenn der Subagent in einem [Plugin](/docs/de/plugins/overview) enthalten ist, können Sie messen, wie zuverlässig Claude ihn über realistische Eingabeaufforderungen hinweg delegiert, anstatt sie einzeln zu überprüfen: [`claude plugin eval`](/docs/de/plugin-evals) führt jede Eingabeaufforderung mit und ohne das Plugin aus und bewertet die Ergebnisse.

866 

865<h3 id="invoke-subagents-explicitly">867<h3 id="invoke-subagents-explicitly">

866 Subagenten explizit aufrufen868 Subagenten explizit aufrufen

867</h3>869</h3>


887 889 

888Ihre vollständige Nachricht geht immer noch an Claude, der die Aufgabeneingabeaufforderung des Subagenten basierend auf Ihrer Anfrage schreibt. Die @-Erwähnung steuert, welcher Subagent Claude aufruft, nicht welche Eingabeaufforderung er erhält.890Ihre vollständige Nachricht geht immer noch an Claude, der die Aufgabeneingabeaufforderung des Subagenten basierend auf Ihrer Anfrage schreibt. Die @-Erwähnung steuert, welcher Subagent Claude aufruft, nicht welche Eingabeaufforderung er erhält.

889 891 

890Subagenten, die von einem aktivierten [Plugin](/docs/de/plugins) bereitgestellt werden, erscheinen in der Typvorhersage unter ihrem Bereichsnamen, z. B. `my-plugin:code-reviewer` oder `my-plugin:review:security`, wenn das Plugin [Agenten in Unterordnern organisiert](#choose-the-subagent-scope). Benannte Hintergrund-Subagenten, die derzeit in der Sitzung ausgeführt werden, erscheinen auch in der Typvorhersage und zeigen ihren Status neben dem Namen an.892Subagenten, die von einem aktivierten [Plugin](/docs/de/plugins/overview) bereitgestellt werden, erscheinen in der Typvorhersage unter ihrem Bereichsnamen, z. B. `my-plugin:code-reviewer` oder `my-plugin:review:security`, wenn das Plugin [Agenten in Unterordnern organisiert](#choose-the-subagent-scope). Benannte Hintergrund-Subagenten, die derzeit in der Sitzung ausgeführt werden, erscheinen auch in der Typvorhersage und zeigen ihren Status neben dem Namen an.

891 893 

892Sie können die Erwähnung auch manuell eingeben, ohne die Auswahl zu verwenden: `@agent-<name>` für lokale Subagenten oder `@agent-` gefolgt vom Bereichsnamen für Plugin-Subagenten, z. B. `@agent-my-plugin:code-reviewer`. Während Sie dieses Formular eingeben, zeigt die Typvorhersage Dateienübereinstimmungen anstelle von Agenten. Die Agent-Erwähnung wird trotzdem aufgelöst, wenn Sie absenden.894Sie können die Erwähnung auch manuell eingeben, ohne die Auswahl zu verwenden: `@agent-<name>` für lokale Subagenten oder `@agent-` gefolgt vom Bereichsnamen für Plugin-Subagenten, z. B. `@agent-my-plugin:code-reviewer`. Während Sie dieses Formular eingeben, zeigt die Typvorhersage Dateienübereinstimmungen anstelle von Agenten. Die Agent-Erwähnung wird trotzdem aufgelöst, wenn Sie absenden.

893 895 


934Subagenten können im Vordergrund oder im Hintergrund ausgeführt werden:936Subagenten können im Vordergrund oder im Hintergrund ausgeführt werden:

935 937 

936* **Vordergrund-Subagenten** blockieren die Hauptkonversation bis zur Fertigstellung. Genehmigungseingabeaufforderungen werden an Sie weitergeleitet, wenn sie auftauchen.938* **Vordergrund-Subagenten** blockieren die Hauptkonversation bis zur Fertigstellung. Genehmigungseingabeaufforderungen werden an Sie weitergeleitet, wenn sie auftauchen.

937* **Hintergrund-Subagenten** werden gleichzeitig ausgeführt, während Sie weiterarbeiten. Wenn ein Hintergrund-Subagent einen Werkzeugaufruf erreicht, der eine Genehmigung benötigt, zeigt Claude Code die Eingabeaufforderung in Ihrer Hauptsitzung an und nennt den Subagenten, der fragt. Genehmigen Sie, um den Subagenten fortsetzen zu lassen, oder drücken Sie Esc, um diesen einen Werkzeugaufruf zu verweigern, ohne den Subagenten zu stoppen. Vor v2.1.186 verweigerten Hintergrund-Subagenten automatisch jeden Werkzeugaufruf, der eine Eingabeaufforderung verursacht hätte.939* **Hintergrund-Subagenten** werden gleichzeitig ausgeführt, während Sie weiterarbeiten. Wenn ein Hintergrund-Subagent einen Werkzeugaufruf erreicht, der eine Genehmigung benötigt, zeigt Claude Code die Eingabeaufforderung in Ihrer Hauptsitzung an und nennt den Subagenten, der fragt. Genehmigen Sie, um den Subagenten fortsetzen zu lassen, oder drücken Sie Esc, um diesen einen Werkzeugaufruf zu verweigern, ohne den Subagenten zu stoppen.

938 940 

939Für jeden Subagenten, den Claude mit dem Agent-Werkzeug spawnt, wählt Claude Code Vordergrund oder Hintergrund aus dem ersten dieser Fälle, der zutrifft:941Für jeden Subagenten, den Claude mit dem Agent-Werkzeug spawnt, wählt Claude Code Vordergrund oder Hintergrund aus dem ersten dieser Fälle, der zutrifft:

940 942 


1177 1179 

1178Ein Subagent, den Sie selbst gestoppt haben, mit `x` in `/tasks` oder einer SDK-`stop_task`-Anfrage, wird nicht automatisch fortgesetzt. Wenn Claude ihm eine Nachricht sendet, wird die Nachricht verweigert und Claude wird mitgeteilt, dass der Agent abgebrochen wurde.1180Ein Subagent, den Sie selbst gestoppt haben, mit `x` in `/tasks` oder einer SDK-`stop_task`-Anfrage, wird nicht automatisch fortgesetzt. Wenn Claude ihm eine Nachricht sendet, wird die Nachricht verweigert und Claude wird mitgeteilt, dass der Agent abgebrochen wurde.

1179 1181 

1180Während [die Zeile dieses Subagenten immer noch im Subagenten-Panel ist](#run-subagents-in-foreground-or-background), geben Sie in sein Transkript ein, um ihn selbst fortzusetzen. Danach kann eine Nachricht von Claude ihn wieder automatisch fortsetzen. Erfordert Claude Code v2.1.191 oder später.1182Während [die Zeile dieses Subagenten immer noch im Subagenten-Panel ist](#run-subagents-in-foreground-or-background), geben Sie in sein Transkript ein, um ihn selbst fortzusetzen. Danach kann eine Nachricht von Claude ihn wieder automatisch fortsetzen.

1181 1183 

1182Das Fortsetzen startet einen neuen Lauf des Agenten unter derselben ID, sodass ein Subagent, der bereits fehlgeschlagen oder abgeschlossen war, in der Aufgabenliste und in den Task-Events des Agent SDK wieder als laufend angezeigt wird. Vor v2.1.205 zeigte er seinen früheren fehlgeschlagenen oder abgeschlossenen Status, während der fortgesetzte Lauf funktionierte.1184Das Fortsetzen startet einen neuen Lauf des Agenten unter derselben ID, sodass ein Subagent, der bereits fehlgeschlagen oder abgeschlossen war, in der Aufgabenliste und in den Task-Events des Agent SDK wieder als laufend angezeigt wird. Vor v2.1.205 zeigte er seinen früheren fehlgeschlagenen oder abgeschlossenen Status, während der fortgesetzte Lauf funktionierte.

1183 1185 


1495 1497 

1496Jetzt, da Sie Subagenten verstehen, erkunden Sie diese verwandten Funktionen:1498Jetzt, da Sie Subagenten verstehen, erkunden Sie diese verwandten Funktionen:

1497 1499 

1498* [Verteilen Sie Subagenten mit Plugins](/docs/de/plugins), um Subagenten über Teams oder Projekte hinweg zu teilen1500* [Verteilen Sie Subagenten mit Plugins](/docs/de/plugins/components#agents), um Subagenten über Teams oder Projekte hinweg zu teilen

1499* [Führen Sie Claude Code programmgesteuert aus](/docs/de/headless) mit dem Agent SDK für CI/CD und Automatisierung1501* [Führen Sie Claude Code programmgesteuert aus](/docs/de/headless) mit dem Agent SDK für CI/CD und Automatisierung

1500* [Verwenden Sie MCP-Server](/docs/de/mcp), um Subagenten Zugriff auf externe Werkzeuge und Daten zu geben1502* [Verwenden Sie MCP-Server](/docs/de/mcp), um Subagenten Zugriff auf externe Werkzeuge und Daten zu geben

Details

156 Benutzerdefiniertes Design erstellen156 Benutzerdefiniertes Design erstellen

157</h3>157</h3>

158 158 

159Zusätzlich zu den integrierten Voreinstellungen listet `/theme` alle benutzerdefinierten Designs auf, die Sie definiert haben, sowie alle Designs, die von installierten [Plugins](/docs/de/plugins-reference#themes) beigetragen wurden. Wählen Sie **Neues benutzerdefiniertes Design…** am Ende der Liste, um eines interaktiv zu erstellen: Sie benennen das Design und wählen dann einzelne Farbtoken aus, um sie zu überschreiben. Drücken Sie `Ctrl+E`, während ein benutzerdefiniertes Design hervorgehoben ist, um es zu bearbeiten.159Zusätzlich zu den integrierten Voreinstellungen listet `/theme` alle benutzerdefinierten Designs auf, die Sie definiert haben, sowie alle Designs, die von installierten [Plugins](/docs/de/plugins/components#themes-and-output-styles) beigetragen wurden. Wählen Sie **Neues benutzerdefiniertes Design…** am Ende der Liste, um eines interaktiv zu erstellen: Sie benennen das Design und wählen dann einzelne Farbtoken aus, um sie zu überschreiben. Drücken Sie `Ctrl+E`, während ein benutzerdefiniertes Design hervorgehoben ist, um es zu bearbeiten.

160 160 

161Jedes benutzerdefinierte Design ist eine JSON-Datei in `~/.claude/themes/`. Der Dateiname ohne die `.json`-Erweiterung ist der Slug des Designs, und das Auswählen des Designs speichert `custom:<slug>` als Ihre Design-Einstellung. Die Datei hat drei optionale Felder:161Jedes benutzerdefinierte Design ist eine JSON-Datei in `~/.claude/themes/`. Der Dateiname ohne die `.json`-Erweiterung ist der Slug des Designs, und das Auswählen des Designs speichert `custom:<slug>` als Ihre Design-Einstellung. Die Datei hat drei optionale Felder:

162 162 

Details

179Claude Code streamt die Ausgabe eines Befehls während der Ausführung in eine Arbeitsdatei; ein Befehl, dessen Ausgabe 5 GB überschreitet, wird beendet. Wenn der Befehl beendet ist, liest Claude Code die Ausgabe aus dieser Datei zurück, bis zum unten beschriebenen Lesefenster. Wie viel der Ausgabe Claude inline erreicht, hängt davon ab, ob Claude Code das Ergebnis als Fehler behandelt:179Claude Code streamt die Ausgabe eines Befehls während der Ausführung in eine Arbeitsdatei; ein Befehl, dessen Ausgabe 5 GB überschreitet, wird beendet. Wenn der Befehl beendet ist, liest Claude Code die Ausgabe aus dieser Datei zurück, bis zum unten beschriebenen Lesefenster. Wie viel der Ausgabe Claude inline erreicht, hängt davon ab, ob Claude Code das Ergebnis als Fehler behandelt:

180 180 

181| Ergebnis | Was Claude erhält |181| Ergebnis | Was Claude erhält |

182| :------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |182| :------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

183| Gültig | Inline bis zu etwa 30.000 Zeichen standardmäßig; darüber hinaus der Pfad einer Datei, die im Sitzungsverzeichnis gespeichert und über 64 MiB gekürzt ist, plus eine kurze Vorschau vom Anfang, und Claude liest oder durchsucht die Datei, wenn er den Rest benötigt |183| Gültig | Inline bis zu etwa 30.000 Zeichen standardmäßig; darüber hinaus der Pfad einer Datei, die im Sitzungsverzeichnis gespeichert und über 64 MiB gekürzt ist, plus eine Vorschau von bis zu den ersten 2.000 Zeichen, und Claude liest oder durchsucht die Datei, wenn er den Rest benötigt |

184| Fehler | Inline bis zu etwa 10.000 Zeichen; darüber hinaus ein Kopf-und-Schwanz-Auszug dieser Größe aus dem Lesefenster, ohne Dateipfad |184| Fehler | Inline bis zu etwa 10.000 Zeichen; darüber hinaus ein Kopf-und-Schwanz-Auszug dieser Größe aus dem Lesefenster, ohne Dateipfad |

185 185 

186Ein Befehl, der mit 1 beendet wird, zählt als gültiges Ergebnis für das Bash-Tool nur, wenn Claude Code den Exit-Code 1 als gutartiges Ergebnis für diesen Befehl erkennt: `grep`, `rg`, `egrep`, `fgrep`, `find`, `diff`, `test` und `[`, plus `git diff` und `git grep`. Jeder andere Befehl, der mit 1 beendet wird, zählt als Fehler, auch wenn 1 ein gutartiges Informationsergebnis ist: keine Übereinstimmungen für `pgrep` und `jq -e`, Dateien, die sich für `cmp` unterscheiden.186Ein Befehl, der mit 1 beendet wird, zählt als gültiges Ergebnis für das Bash-Tool nur, wenn Claude Code den Exit-Code 1 als gutartiges Ergebnis für diesen Befehl erkennt: `grep`, `rg`, `egrep`, `fgrep`, `find`, `diff`, `test` und `[`, plus `git diff` und `git grep`. Jeder andere Befehl, der mit 1 beendet wird, zählt als Fehler, auch wenn 1 ein gutartiges Informationsergebnis ist: keine Übereinstimmungen für `pgrep` und `jq -e`, Dateien, die sich für `cmp` unterscheiden.


221* `mcp`: lokale [MCP-Server](/docs/de/mcp)221* `mcp`: lokale [MCP-Server](/docs/de/mcp)

222* `lsp`: [Sprachserver](#lsp-tool-behavior)222* `lsp`: [Sprachserver](#lsp-tool-behavior)

223* `hooks`: [Hook](/docs/de/hooks)-Befehle223* `hooks`: [Hook](/docs/de/hooks)-Befehle

224* `plugin`: Befehle, die [Plugins](/docs/de/plugins) ausführen224* `plugin`: Befehle, die [Plugins](/docs/de/plugins/overview) ausführen

225* `helper`: Claude Codes eigene Helper-Befehle, wie `git`225* `helper`: Claude Codes eigene Helper-Befehle, wie `git`

226* `agent`: untergeordnete Claude-Code-Prozesse, wie [Agent-Teamkollegen](/docs/de/agent-teams)226* `agent`: untergeordnete Claude-Code-Prozesse, wie [Agent-Teamkollegen](/docs/de/agent-teams)

227 227 


344* Implementierungen einer Schnittstelle finden344* Implementierungen einer Schnittstelle finden

345* Aufrufen-Hierarchien verfolgen345* Aufrufen-Hierarchien verfolgen

346 346 

347Claude Code hält das Werkzeug inaktiv, bis Sie ein [Code-Intelligence-Plugin](/docs/de/discover-plugins#code-intelligence) für Ihre Sprache installieren. In [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) startet Claude Code keine Plugin-Sprachserver, daher bleibt das LSP-Werkzeug dort inaktiv. Claude Code übernimmt die Sprachserver-Konfiguration vom Plugin, und Sie installieren die Server-Binärdatei selbst.347Claude Code hält das Werkzeug inaktiv, bis Sie ein [Code-Intelligence-Plugin](/docs/de/plugins/code-intelligence) für Ihre Sprache installieren. In [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) startet Claude Code keine Plugin-Sprachserver, daher bleibt das LSP-Werkzeug dort inaktiv. Claude Code übernimmt die Sprachserver-Konfiguration vom Plugin, und Sie installieren die Server-Binärdatei selbst.

348 348 

349Claude Code gibt ein Fehler-Ergebnis für jeden LSP-Aufruf auf einer Datei zurück, deren Sprachserver nicht gestartet werden kann.349Claude Code gibt ein Fehler-Ergebnis für jeden LSP-Aufruf auf einer Datei zurück, deren Sprachserver nicht gestartet werden kann.

350 350 


376 376 

377Das Werkzeug ist nicht auf Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry verfügbar. Es ist auch nicht verfügbar, wenn `DISABLE_TELEMETRY` oder `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` gesetzt ist.377Das Werkzeug ist nicht auf Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry verfügbar. Es ist auch nicht verfügbar, wenn `DISABLE_TELEMETRY` oder `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` gesetzt ist.

378 378 

379Plugins können Monitore deklarieren, die automatisch starten, wenn das Plugin aktiv ist, anstatt Claude zu bitten, sie zu starten. Siehe [Plugin-Monitore](/docs/de/plugins-reference#monitors).379Plugins können Monitore deklarieren, die automatisch starten, wenn das Plugin aktiv ist, anstatt Claude zu bitten, sie zu starten. Siehe [Plugin-Monitore](/docs/de/plugins/components#monitors).

380 380 

381<h3 id="websocket-source">381<h3 id="websocket-source">

382 WebSocket-Quelle382 WebSocket-Quelle

vs-code.md +2 −2

Details

331 Plugins verwalten331 Plugins verwalten

332</h2>332</h2>

333 333 

334Die VS Code-Erweiterung enthält eine grafische Benutzeroberfläche zum Installieren und Verwalten von [Plugins](/docs/de/plugins). Geben Sie `/plugins` in das Eingabefeld ein, um die Schnittstelle **Plugins verwalten** zu öffnen.334Die VS Code-Erweiterung enthält eine grafische Benutzeroberfläche zum Installieren und Verwalten von [Plugins](/docs/de/plugins/overview). Geben Sie `/plugins` in das Eingabefeld ein, um die Schnittstelle **Plugins verwalten** zu öffnen.

335 335 

336<h3 id="install-plugins">336<h3 id="install-plugins">

337 Plugins installieren337 Plugins installieren


394 Die Plugin-Verwaltung in VS Code verwendet unter der Haube die gleichen CLI-Befehle. Plugins und Marketplaces, die Sie in der Erweiterung konfigurieren, sind auch in der CLI verfügbar, und umgekehrt.394 Die Plugin-Verwaltung in VS Code verwendet unter der Haube die gleichen CLI-Befehle. Plugins und Marketplaces, die Sie in der Erweiterung konfigurieren, sind auch in der CLI verfügbar, und umgekehrt.

395</Note>395</Note>

396 396 

397Weitere Informationen zum Plugin-System finden Sie unter [Plugins](/docs/de/plugins) und [Plugin-Marketplaces](/docs/de/plugin-marketplaces).397Weitere Informationen zum Plugin-System finden Sie unter [Plugins](/docs/de/plugins/overview) und [Plugin-Marketplaces](/docs/de/plugins/overview).

398 398 

399<h2 id="automate-browser-tasks-with-chrome">399<h2 id="automate-browser-tasks-with-chrome">

400 Browser-Aufgaben mit Chrome automatisieren400 Browser-Aufgaben mit Chrome automatisieren

Details

116 └── my-tool116 └── my-tool

117 ```117 ```

118 118 

119 <a className="digest-feature-link" href="/docs/de/plugins-reference#file-locations-reference">Plugins-Referenz</a>119 <a className="digest-feature-link" href="/docs/de/plugins/manifest-reference#standard-layout">Plugins-Referenz</a>

120</div>120</div>

121 121 

122<div className="digest-wins">122<div className="digest-wins">

Details

104 <div>Native macOS- und Linux-Builds ersetzen die <code>Glob</code>- und <code>Grep</code>-Tools durch eingebettete <code>bfs</code> und <code>ugrep</code>, die über Bash verfügbar sind, für schnellere Suchen ohne separaten Tool-Roundtrip</div>104 <div>Native macOS- und Linux-Builds ersetzen die <code>Glob</code>- und <code>Grep</code>-Tools durch eingebettete <code>bfs</code> und <code>ugrep</code>, die über Bash verfügbar sind, für schnellere Suchen ohne separaten Tool-Roundtrip</div>

105 <div><code>--from-pr</code> akzeptiert jetzt GitLab-Merge-Request-, Bitbucket-Pull-Request- und GitHub-Enterprise-PR-URLs zusätzlich zu github.com</div>105 <div><code>--from-pr</code> akzeptiert jetzt GitLab-Merge-Request-, Bitbucket-Pull-Request- und GitHub-Enterprise-PR-URLs zusätzlich zu github.com</div>

106 <div>Auto-Modus: Fügen Sie <code>"\$defaults"</code> in <a href="/docs/de/auto-mode-config"><code>autoMode.allow</code>, <code>soft\_deny</code> oder <code>environment</code></a> ein, um benutzerdefinierte Regeln neben der integrierten Liste hinzuzufügen, anstatt sie zu ersetzen</div>106 <div>Auto-Modus: Fügen Sie <code>"\$defaults"</code> in <a href="/docs/de/auto-mode-config"><code>autoMode.allow</code>, <code>soft\_deny</code> oder <code>environment</code></a> ein, um benutzerdefinierte Regeln neben der integrierten Liste hinzuzufügen, anstatt sie zu ersetzen</div>

107 <div>Neuer <a href="/docs/de/plugin-dependencies#tag-plugin-releases-for-version-resolution"><code>claude plugin tag</code></a>-Befehl erstellt Release-Git-Tags für Plugins mit Versionsprüfung</div>107 <div>Neuer <a href="/docs/de/plugins/dependencies#tag-plugin-releases-for-version-resolution"><code>claude plugin tag</code></a>-Befehl erstellt Release-Git-Tags für Plugins mit Versionsprüfung</div>

108 <div>Opus 4.7-Sitzungen werden jetzt gegen das native 1-M-Kontextfenster des Modells berechnet, was aufgeblähte <code>/context</code>-Prozentsätze und vorzeitige Autokomprimierung behebt</div>108 <div>Opus 4.7-Sitzungen werden jetzt gegen das native 1-M-Kontextfenster des Modells berechnet, was aufgeblähte <code>/context</code>-Prozentsätze und vorzeitige Autokomprimierung behebt</div>

109 <div><code>/resume</code> bei großen Sitzungen ist bis zu 67 % schneller und bietet jetzt an, große, veraltete Sitzungen zusammenzufassen, bevor sie erneut gelesen werden</div>109 <div><code>/resume</code> bei großen Sitzungen ist bis zu 67 % schneller und bietet jetzt an, große, veraltete Sitzungen zusammenzufassen, bevor sie erneut gelesen werden</div>

110 </div>110 </div>

Details

24 claude --plugin-url https://example.com/my-plugin.zip24 claude --plugin-url https://example.com/my-plugin.zip

25 ```25 ```

26 26 

27 <a className="digest-feature-link" href="/docs/de/plugins">Plugins-Anleitung</a>27 <a className="digest-feature-link" href="/docs/de/plugins/overview">Plugins-Anleitung</a>

28</div>28</div>

29 29 

30<div className="digest-feature">30<div className="digest-feature">

Details

59 > /plugin list --enabled59 > /plugin list --enabled

60 ```60 ```

61 61 

62 <a className="digest-feature-link" href="/docs/de/plugins-reference#plugin-list">Plugin-Befehle</a>62 <a className="digest-feature-link" href="/docs/de/plugins/cli-reference#plugin-list">Plugin-Befehle</a>

63</div>63</div>

64 64 

65<div className="digest-feature">65<div className="digest-feature">

Details

86 <div className="digest-wins-grid">86 <div className="digest-wins-grid">

87 <div>Die VS Code-Erweiterung erhält <a href="/docs/de/vs-code#extension-settings">Focus-Ansicht</a>, die Tool-Aktivität hinter einer erweiterbaren Zeile pro Zug verbirgt; schalten Sie sie über das Befehlsmenü oder mit <code>Ctrl+Alt+F</code> (<code>Ctrl+Option+F</code> auf Mac) um</div>87 <div>Die VS Code-Erweiterung erhält <a href="/docs/de/vs-code#extension-settings">Focus-Ansicht</a>, die Tool-Aktivität hinter einer erweiterbaren Zeile pro Zug verbirgt; schalten Sie sie über das Befehlsmenü oder mit <code>Ctrl+Alt+F</code> (<code>Ctrl+Option+F</code> auf Mac) um</div>

88 <div>Sandbox-Anmeldedatendateien akzeptieren <a href="/docs/de/sandboxing#mask-credential-files"><code>mode: "mask"</code></a> auf Linux und WSL2, sodass Sandbox-Befehle eine Sentinel-Kopie lesen, während der Sandbox-Proxy den echten Wert beim Ausgang ersetzt; die Maskierung von Anmeldedaten erhält auch <code>extract</code>, JWT-bewusste <code>decode</code> und AWS SigV4-Neusignierungsoptionen</div>88 <div>Sandbox-Anmeldedatendateien akzeptieren <a href="/docs/de/sandboxing#mask-credential-files"><code>mode: "mask"</code></a> auf Linux und WSL2, sodass Sandbox-Befehle eine Sentinel-Kopie lesen, während der Sandbox-Proxy den echten Wert beim Ausgang ersetzt; die Maskierung von Anmeldedaten erhält auch <code>extract</code>, JWT-bewusste <code>decode</code> und AWS SigV4-Neusignierungsoptionen</div>

89 <div>Marketplaces können ein Plugin als <a href="/docs/de/plugin-marketplaces#zip-archives">ZIP-Archiv</a> mit der neuen <code>archive</code>-Quelle verteilen, heruntergeladen über HTTPS mit optionalem SHA-256-Pin, sodass Installationen ohne git oder npm funktionieren</div>89 <div>Marketplaces können ein Plugin als <a href="/docs/de/plugins/marketplace-reference#archive-plugin-source">ZIP-Archiv</a> mit der neuen <code>archive</code>-Quelle verteilen, heruntergeladen über HTTPS mit optionalem SHA-256-Pin, sodass Installationen ohne git oder npm funktionieren</div>

90 <div><code>/review</code> ist jetzt ein Alias von <a href="/docs/de/code-review#review-a-diff-locally"><code>/code-review</code></a>, und <code>/code-review</code> ohne Aufwandsstufe verwendet die Stufe, die Sie zuletzt eingegeben haben</div>90 <div><code>/review</code> ist jetzt ein Alias von <a href="/docs/de/code-review#review-a-diff-locally"><code>/code-review</code></a>, und <code>/code-review</code> ohne Aufwandsstufe verwendet die Stufe, die Sie zuletzt eingegeben haben</div>

91 <div>Eine Sitzung, die Sie mit <a href="/docs/de/agent-view#copy-the-session-with-%2Ffork"><code>/fork</code></a> kopieren, nimmt ihre Code-Änderungen jetzt in einem eigenen Worktree vor, anstatt im Checkout der ursprünglichen Sitzung</div>91 <div>Eine Sitzung, die Sie mit <a href="/docs/de/agent-view#copy-the-session-with-%2Ffork"><code>/fork</code></a> kopieren, nimmt ihre Code-Änderungen jetzt in einem eigenen Worktree vor, anstatt im Checkout der ursprünglichen Sitzung</div>

92 <div>Plugins, die Sie von <a href="/docs/de/discover-plugins#install-plugins"><code>/plugin</code></a> installieren, werden in der aktuellen Sitzung aktiviert, wenn es sicher ist; die Installationszusammenfassung meldet <code>Plugin is now active.</code> oder teilt Ihnen mit, dass Sie <code>/reload-plugins</code> ausführen sollen</div>92 <div>Plugins, die Sie von <a href="/docs/de/plugins/install#install-a-plugin"><code>/plugin</code></a> installieren, werden in der aktuellen Sitzung aktiviert, wenn es sicher ist; die Installationszusammenfassung meldet <code>Plugin is now active.</code> oder teilt Ihnen mit, dass Sie <code>/reload-plugins</code> ausführen sollen</div>

93 <div><a href="/docs/de/agent-view#how-file-edits-are-isolated">Hintergrund-Sitzungen</a>, die Code in einem Worktree geändert haben, committen und pushen jetzt vor dem Beenden, öffnen einen Draft-Pull-Request nur, wenn die Aufgabe dies erfordert, und folgen den Git-Anweisungen in Ihrer <code>CLAUDE.md</code></div>93 <div><a href="/docs/de/agent-view#how-file-edits-are-isolated">Hintergrund-Sitzungen</a>, die Code in einem Worktree geändert haben, committen und pushen jetzt vor dem Beenden, öffnen einen Draft-Pull-Request nur, wenn die Aufgabe dies erfordert, und folgen den Git-Anweisungen in Ihrer <code>CLAUDE.md</code></div>

94 <div>Die Obergrenze von 200 Subagenten pro Sitzung wird entfernt, sodass lange laufende Sitzungen keine neuen Subagenten mehr ablehnen; die <a href="/docs/de/sub-agents#concurrent-subagent-limit">Parallelitäts-</a> und Tiefenlimits gelten weiterhin</div>94 <div>Die Obergrenze von 200 Subagenten pro Sitzung wird entfernt, sodass lange laufende Sitzungen keine neuen Subagenten mehr ablehnen; die <a href="/docs/de/sub-agents#concurrent-subagent-limit">Parallelitäts-</a> und Tiefenlimits gelten weiterhin</div>

95 <div>Die eingecheckten Einstellungen eines Repositorys können <a href="/docs/de/remote-control#enable-remote-control-for-all-sessions">Remote Control Auto-Connect</a> nicht mehr aktivieren; legen Sie <code>remoteControlAtStartup</code> stattdessen in Ihren Benutzer- oder verwalteten Einstellungen fest, und Projekt- und lokale Einstellungen können es nur deaktivieren</div>95 <div>Die eingecheckten Einstellungen eines Repositorys können <a href="/docs/de/remote-control#enable-remote-control-for-all-sessions">Remote Control Auto-Connect</a> nicht mehr aktivieren; legen Sie <code>remoteControlAtStartup</code> stattdessen in Ihren Benutzer- oder verwalteten Einstellungen fest, und Projekt- und lokale Einstellungen können es nur deaktivieren</div>

Details

72 <div className="digest-wins-grid">72 <div className="digest-wins-grid">

73 <div>Geben Sie <code>@</code> in der Eingabeaufforderung ein, um <a href="/docs/de/cross-session-messaging#message-another-session">eine andere Claude-Sitzung</a> nach Name zu erwähnen, und Claude sendet ihr eine Nachricht direkt mit <code>SendMessage</code>; ein einfacher Name, der genau einer Live-Sitzung entspricht, wird jetzt ohne Bestätigungsschritt zugestellt</div>73 <div>Geben Sie <code>@</code> in der Eingabeaufforderung ein, um <a href="/docs/de/cross-session-messaging#message-another-session">eine andere Claude-Sitzung</a> nach Name zu erwähnen, und Claude sendet ihr eine Nachricht direkt mit <code>SendMessage</code>; ein einfacher Name, der genau einer Live-Sitzung entspricht, wird jetzt ohne Bestätigungsschritt zugestellt</div>

74 <div>Interaktive Sitzungen auf einem Computer behalten <a href="/docs/de/cross-session-messaging#see-which-sessions-claude-can-reach">eindeutige Namen</a>: Wenn Sie eine Sitzung mit einem Namen starten oder umbenennen, den eine andere Live-Sitzung bereits verwendet, gibt Claude Code Ihnen eine <code>name-word-word</code>-Variante und teilt es Ihnen mit</div>74 <div>Interaktive Sitzungen auf einem Computer behalten <a href="/docs/de/cross-session-messaging#see-which-sessions-claude-can-reach">eindeutige Namen</a>: Wenn Sie eine Sitzung mit einem Namen starten oder umbenennen, den eine andere Live-Sitzung bereits verwendet, gibt Claude Code Ihnen eine <code>name-word-word</code>-Variante und teilt es Ihnen mit</div>

75 <div>Plugin-Marktplätze akzeptieren <a href="/docs/de/plugin-marketplaces#command-sources"><code>command</code>-Quellen</a>: Ein lokaler Befehl gibt das Plugin-Verzeichnis aus, das Claude Code jede Sitzung neu auflöst und ohne Neustart anwendet</div>75 <div>Plugin-Marktplätze akzeptieren <a href="/docs/de/plugins/marketplace-reference#command-plugin-source"><code>command</code>-Quellen</a>: Ein lokaler Befehl gibt das Plugin-Verzeichnis aus, das Claude Code jede Sitzung neu auflöst und ohne Neustart anwendet</div>

76 <div>Unter Linux und WSL können Sie <a href="/docs/de/tools-reference#memory-limit-on-linux-and-wsl"><code>CLAUDE\_CODE\_TOOL\_MEMORY\_LIMIT</code></a> auf eine Größe wie <code>4G</code> setzen, um den Speicher zu begrenzen, den Bash- und PowerShell-Tool-Befehle verwenden können</div>76 <div>Unter Linux und WSL können Sie <a href="/docs/de/tools-reference#memory-limit-on-linux-and-wsl"><code>CLAUDE\_CODE\_TOOL\_MEMORY\_LIMIT</code></a> auf eine Größe wie <code>4G</code> setzen, um den Speicher zu begrenzen, den Bash- und PowerShell-Tool-Befehle verwenden können</div>

77 <div>Die Task-Tracking-Tools wie <code>TaskCreate</code>, <code>TaskUpdate</code> und <code>TodoWrite</code> sind <a href="/docs/de/tools-reference#task-tool-availability">auf Opus 4.8, Sonnet 5, Fable 5, Mythos 5 und späteren Modellen in diesen Familien nicht mehr verfügbar</a>; setzen Sie <code>CLAUDE\_CODE\_ENABLE\_TODO\_TOOLS=1</code>, um sie erneut zu aktivieren</div>77 <div>Die Task-Tracking-Tools wie <code>TaskCreate</code>, <code>TaskUpdate</code> und <code>TodoWrite</code> sind <a href="/docs/de/tools-reference#task-tool-availability">auf Opus 4.8, Sonnet 5, Fable 5, Mythos 5 und späteren Modellen in diesen Familien nicht mehr verfügbar</a>; setzen Sie <code>CLAUDE\_CODE\_ENABLE\_TODO\_TOOLS=1</code>, um sie erneut zu aktivieren</div>

78 <div><a href="/docs/de/code-review#review-a-diff-locally"><code>/code-review</code></a> bei hohem, sehr hohem und maximalem Aufwand wird jetzt wie die anderen Ebenen in einem Hintergrund-Agent ausgeführt</div>78 <div><a href="/docs/de/code-review#review-a-diff-locally"><code>/code-review</code></a> bei hohem, sehr hohem und maximalem Aufwand wird jetzt wie die anderen Ebenen in einem Hintergrund-Agent ausgeführt</div>

79 <div><a href="/docs/de/discover-plugins#install-plugins"><code>/plugin install plugin\@marketplace</code></a> aktualisiert zuerst den Marktplatz, sodass neu veröffentlichte Plugins ohne manuelle Marktplatz-Aktualisierung installiert werden</div>79 <div><a href="/docs/de/plugins/install#install-a-plugin"><code>/plugin install plugin\@marketplace</code></a> aktualisiert zuerst den Marktplatz, sodass neu veröffentlichte Plugins ohne manuelle Marktplatz-Aktualisierung installiert werden</div>

80 <div>Einstellungen akzeptieren <a href="/docs/de/settings-reference#marketplace-key-aliases"><code>additionalMarketplaces</code> und <code>allowedMarketplaces</code></a> als Aliase für <code>extraKnownMarketplaces</code> und <code>strictKnownMarketplaces</code></div>80 <div>Einstellungen akzeptieren <a href="/docs/de/settings-reference#marketplace-key-aliases"><code>additionalMarketplaces</code> und <code>allowedMarketplaces</code></a> als Aliase für <code>extraKnownMarketplaces</code> und <code>strictKnownMarketplaces</code></div>

81 <div>Bei neueren Modellen kann Claude <a href="/docs/de/tools-reference#write-tool-behavior">eine vorhandene Datei mit dem Write-Tool überschreiben</a>, ohne sie zuerst in dieser Sitzung zu lesen, was den Regeln des Edit-Tools entspricht; ältere Modelle erfordern das Lesen</div>81 <div>Bei neueren Modellen kann Claude <a href="/docs/de/tools-reference#write-tool-behavior">eine vorhandene Datei mit dem Write-Tool überschreiben</a>, ohne sie zuerst in dieser Sitzung zu lesen, was den Regeln des Edit-Tools entspricht; ältere Modelle erfordern das Lesen</div>

82 <div>Die VS Code-Erweiterung kann <a href="/docs/de/vs-code#organize-sessions-into-groups">die Sitzungsliste in Gruppen organisieren</a>: Klicken Sie mit der rechten Maustaste, um eine Gruppe zu erstellen, umzubenennen oder zu löschen, und verwenden Sie Cmd/Strg- oder Umschalt-Klick, um mehrere Sitzungen auf einmal zu verschieben</div>82 <div>Die VS Code-Erweiterung kann <a href="/docs/de/vs-code#organize-sessions-into-groups">die Sitzungsliste in Gruppen organisieren</a>: Klicken Sie mit der rechten Maustaste, um eine Gruppe zu erstellen, umzubenennen oder zu löschen, und verwenden Sie Cmd/Strg- oder Umschalt-Klick, um mehrere Sitzungen auf einmal zu verschieben</div>

Details

54 54 

55 <div className="digest-wins-grid">55 <div className="digest-wins-grid">

56 <div>Legen Sie <a href="/docs/de/settings-reference#maxeffortlevel"><code>maxEffortLevel</code></a> auf der obersten Ebene oder pro Modell unter <code>modelSettings</code> fest, um die Aufwandsstufe bei jedem Anbieter zu begrenzen, einschließlich Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry; jede höhere Stufe wird mit der Obergrenze ausgeführt</div>56 <div>Legen Sie <a href="/docs/de/settings-reference#maxeffortlevel"><code>maxEffortLevel</code></a> auf der obersten Ebene oder pro Modell unter <code>modelSettings</code> fest, um die Aufwandsstufe bei jedem Anbieter zu begrenzen, einschließlich Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry; jede höhere Stufe wird mit der Obergrenze ausgeführt</div>

57 <div>Zeigen Sie `--plugin-dir` auf einen Ordner mit Plugins, um <a href="/docs/de/plugins#test-your-plugins-locally">jeden unmittelbaren Unterordner mit einem Manifest zu laden</a></div>57 <div>Zeigen Sie `--plugin-dir` auf einen Ordner mit Plugins, um <a href="/docs/de/plugins/create#load-a-directory-or-archive-for-one-session">jeden unmittelbaren Unterordner mit einem Manifest zu laden</a></div>

58 <div>Wenn WebFetch das Herunterladen einer Seite nicht innerhalb von fünf Minuten abgeschlossen hat, <a href="/docs/de/tools-reference#webfetch-tool-behavior">schlägt der Abruf mit einem Deadline-Fehler fehl</a>, anstatt zu hängen; setzen Sie <code>CLAUDE\_CODE\_WEBFETCH\_DEADLINE\_MS</code>, um die Deadline zu ändern, oder auf <code>0</code>, um die Grenze zu entfernen</div>58 <div>Wenn WebFetch das Herunterladen einer Seite nicht innerhalb von fünf Minuten abgeschlossen hat, <a href="/docs/de/tools-reference#webfetch-tool-behavior">schlägt der Abruf mit einem Deadline-Fehler fehl</a>, anstatt zu hängen; setzen Sie <code>CLAUDE\_CODE\_WEBFETCH\_DEADLINE\_MS</code>, um die Deadline zu ändern, oder auf <code>0</code>, um die Grenze zu entfernen</div>

59 <div>Übergeben Sie `--json` an <code>claude plugin install</code>, <code>uninstall</code>, <code>update</code>, <code>enable</code> oder <code>disable</code>, um das Ergebnis als <a href="/docs/de/plugins-reference#plugin-json-result">ein JSON-Objekt in der letzten Zeile von stdout</a> auszugeben</div>59 <div>Übergeben Sie `--json` an <code>claude plugin install</code>, <code>uninstall</code>, <code>update</code>, <code>enable</code> oder <code>disable</code>, um das Ergebnis als <a href="/docs/de/plugins/cli-reference#plugin-json-result">ein JSON-Objekt in der letzten Zeile von stdout</a> auszugeben</div>

60 <div>Wenn der Auto-Modus-Klassifizierer eine Aktion blockiert, nennt der Grund, den Claude erhält, <a href="/docs/de/auto-mode-config#fix-a-denial-with-an-allow-rule-an-environment-entry-or-a-retry">normalerweise die Regel, die übereinstimmt</a>, wie z. B. <code>\[Data Exfiltration]</code></div>60 <div>Wenn der Auto-Modus-Klassifizierer eine Aktion blockiert, nennt der Grund, den Claude erhält, <a href="/docs/de/auto-mode-config#fix-a-denial-with-an-allow-rule-an-environment-entry-or-a-retry">normalerweise die Regel, die übereinstimmt</a>, wie z. B. <code>\[Data Exfiltration]</code></div>

61 <div>Wenn Sie <code>/</code> mitten in einer Eingabeaufforderung eingeben, können Sie jetzt <a href="/docs/de/interactive-mode#complete-a-command-mid-prompt">aus einer Liste übereinstimmender Befehle</a> wählen, anstatt einen einzelnen Vorschlag zu erhalten. Die Liste wird beim Eingeben in Vollbilddarstellung geöffnet. Eine Plugin-Skill stimmt auch mit ihrem Namen ohne das Plugin-Präfix überein</div>61 <div>Wenn Sie <code>/</code> mitten in einer Eingabeaufforderung eingeben, können Sie jetzt <a href="/docs/de/interactive-mode#complete-a-command-mid-prompt">aus einer Liste übereinstimmender Befehle</a> wählen, anstatt einen einzelnen Vorschlag zu erhalten. Die Liste wird beim Eingeben in Vollbilddarstellung geöffnet. Eine Plugin-Skill stimmt auch mit ihrem Namen ohne das Plugin-Präfix überein</div>

62 <div>In der VS Code-Erweiterung klicken Sie auf die Agent-Anzahl am unteren Rand des Eingabefelds, um die <a href="/docs/de/vs-code#use-the-prompt-box">Agent-Karte</a> zu öffnen, wo Sie das schreibgeschützte Transkript eines Subagenten öffnen oder ihn stoppen können</div>62 <div>In der VS Code-Erweiterung klicken Sie auf die Agent-Anzahl am unteren Rand des Eingabefelds, um die <a href="/docs/de/vs-code#use-the-prompt-box">Agent-Karte</a> zu öffnen, wo Sie das schreibgeschützte Transkript eines Subagenten öffnen oder ihn stoppen können</div>

workflows.md +1 −1

Details

239 Verteilen Sie einen Workflow in einem Plugin239 Verteilen Sie einen Workflow in einem Plugin

240</h3>240</h3>

241 241 

242Um einen Workflow über Teams oder Repositories hinweg zu teilen, fügen Sie ihn in ein [Plugin](/docs/de/plugins) ein. Platzieren Sie das Skript in einem `workflows/`-Verzeichnis im Plugin-Root, oder verweisen Sie mit dem [`workflows`-Manifestfeld](/docs/de/plugins-reference#component-path-fields) auf einen anderen Ort.242Um einen Workflow über Teams oder Repositories hinweg zu teilen, fügen Sie ihn in ein [Plugin](/docs/de/plugins/overview) ein. Platzieren Sie das Skript in einem `workflows/`-Verzeichnis im Plugin-Root, oder verweisen Sie mit dem [`workflows`-Manifestfeld](/docs/de/plugins/manifest-reference#fields) auf einen anderen Ort.

243 243 

244Plugin-Workflows werden nach dem Plugin-Namen namensgebunden. Ein Plugin namens `acme-tools`, das ein Skript mit `meta.name` `release-audit` enthält, wird als `/acme-tools:release-audit` ausgeführt.244Plugin-Workflows werden nach dem Plugin-Namen namensgebunden. Ein Plugin namens `acme-tools`, das ein Skript mit `meta.name` `release-audit` enthält, wird als `/acme-tools:release-audit` ausgeführt.

245 245 

worktrees.md +3 −1

Details

256Ein Worktree erhält seine eigenen Dateien und Branch, aber es teilt das Folgende mit dem Haupt-Checkout:256Ein Worktree erhält seine eigenen Dateien und Branch, aber es teilt das Folgende mit dem Haupt-Checkout:

257 257 

258* **Das `.git`-Verzeichnis des Repositories**: Git-Befehle in einem Worktree schreiben in das gemeinsame `.git`-Verzeichnis des Haupt-Repositories, und [Sandboxing](/docs/de/sandboxing#filesystem-isolation) erlaubt diese Schreibvorgänge, sodass Befehle wie `git commit` von innen in einem Worktree mit aktivierter Sandbox funktionieren.258* **Das `.git`-Verzeichnis des Repositories**: Git-Befehle in einem Worktree schreiben in das gemeinsame `.git`-Verzeichnis des Haupt-Repositories, und [Sandboxing](/docs/de/sandboxing#filesystem-isolation) erlaubt diese Schreibvorgänge, sodass Befehle wie `git commit` von innen in einem Worktree mit aktivierter Sandbox funktionieren.

259* **Plugins**: Plugins, die im [Projekt-Bereich](/docs/de/plugins-reference#plugin-installation-scopes) aus dem Haupt-Checkout installiert sind, werden auch in Worktrees desselben Repositories geladen, sodass Sie sie nicht pro Worktree neu installieren müssen. Erfordert Claude Code v2.1.200 oder später.259* **Plugins**: Plugins, die im [Projekt-Bereich](/docs/de/plugins/loading#find-where-a-plugin-is-enabled) aus dem Haupt-Checkout installiert sind, werden auch in Worktrees desselben Repositories geladen, sodass Sie sie nicht pro Worktree neu installieren müssen. Erfordert Claude Code v2.1.200 oder später.

260* **Genehmigungen**: Das Wählen von „Ja, und nicht mehr fragen" für einen Bash-Befehl in einer Worktree-Sitzung speichert die Regel in der `.claude/settings.local.json` des Haupt-Checkouts, sodass sie im Haupt-Checkout und in jedem anderen Worktree des Repositories gilt und das Entfernen des Worktrees überlebt. Unter Windows und in den anderen Fällen, in denen Claude Code [das Repository-Root nicht verwendet](/docs/de/settings#where-claude-code-looks-for-each-file), bleibt die Regel bei diesem Worktree. Vor v2.1.211 wurde eine Genehmigung, die in einem Worktree gewährt wurde, in diesem Worktree gespeichert, galt nicht anderswo und ging verloren, wenn der Worktree entfernt wurde. Siehe [wo Genehmigungen gespeichert werden](/docs/de/permissions#permission-system).260* **Genehmigungen**: Das Wählen von „Ja, und nicht mehr fragen" für einen Bash-Befehl in einer Worktree-Sitzung speichert die Regel in der `.claude/settings.local.json` des Haupt-Checkouts, sodass sie im Haupt-Checkout und in jedem anderen Worktree des Repositories gilt und das Entfernen des Worktrees überlebt. Unter Windows und in den anderen Fällen, in denen Claude Code [das Repository-Root nicht verwendet](/docs/de/settings#where-claude-code-looks-for-each-file), bleibt die Regel bei diesem Worktree. Vor v2.1.211 wurde eine Genehmigung, die in einem Worktree gewährt wurde, in diesem Worktree gespeichert, galt nicht anderswo und ging verloren, wenn der Worktree entfernt wurde. Siehe [wo Genehmigungen gespeichert werden](/docs/de/permissions#permission-system).

261* **Nicht nachverfölgte Skills, Agents und Befehle**: Wenn der Worktree-Checkout kein `.claude/skills`-Verzeichnis in seinem Root hat, zum Beispiel weil Ihr `.claude/skills` gitignoriert ist, lädt Claude Code die [Projekt-Skills](/docs/de/skills#where-skills-live) des Haupt-Checkouts in der Worktree-Sitzung. In einem Worktree mit seinem eigenen `.claude/skills`-Verzeichnis wird nur diese Kopie geladen.261* **Nicht nachverfölgte Skills, Agents und Befehle**: Wenn der Worktree-Checkout kein `.claude/skills`-Verzeichnis in seinem Root hat, zum Beispiel weil Ihr `.claude/skills` gitignoriert ist, lädt Claude Code die [Projekt-Skills](/docs/de/skills#where-skills-live) des Haupt-Checkouts in der Worktree-Sitzung. In einem Worktree mit seinem eigenen `.claude/skills`-Verzeichnis wird nur diese Kopie geladen.

262 262 


330 330 

331Kombinieren Sie es mit einem `WorktreeRemove`-Hook, um die Bereinigung durchzuführen, wenn die Sitzung endet. Siehe die [Hooks-Referenz](/docs/de/hooks#worktreecreate) für das Eingabeschema und ein Entfernungsbeispiel.331Kombinieren Sie es mit einem `WorktreeRemove`-Hook, um die Bereinigung durchzuführen, wenn die Sitzung endet. Siehe die [Hooks-Referenz](/docs/de/hooks#worktreecreate) für das Eingabeschema und ein Entfernungsbeispiel.

332 332 

333Ein `WorktreeCreate`-Hook ermöglicht es Ihnen auch, [`/batch`](/docs/de/commands#all-commands) außerhalb eines Git-Repositorys auszuführen. Jeder `/batch`-Subagent veröffentlicht dann seine Änderung mit den Versionskontrollbefehlen Ihres Projekts und meldet, was er veröffentlicht hat, wenn er keinen Pull Request öffnen kann. Das Ausführen von `/batch` außerhalb eines Git-Repositorys erfordert Claude Code v2.1.281 oder später.

334 

333<h2 id="troubleshooting">335<h2 id="troubleshooting">

334 Fehlerbehebung336 Fehlerbehebung

335</h2>337</h2>

Details

66| Funktion | Grund |66| Funktion | Grund |

67| ------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------- |67| ------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------- |

68| [Cloud-Sitzungen](/docs/de/claude-code-on-the-web), einschließlich derjenigen, die aus der [Desktop-App](/docs/de/desktop#cloud-sessions) gestartet wurden | Erfordert serverseitige Speicherung von Sitzungsdaten, einschließlich Gesprächsverlauf mit Eingabeaufforderungen und Vervollständigungen. |68| [Cloud-Sitzungen](/docs/de/claude-code-on-the-web), einschließlich derjenigen, die aus der [Desktop-App](/docs/de/desktop#cloud-sessions) gestartet wurden | Erfordert serverseitige Speicherung von Sitzungsdaten, einschließlich Gesprächsverlauf mit Eingabeaufforderungen und Vervollständigungen. |

69| [Claude Tag](/docs/de/claude-tag) | Behält Kanalspeicher und Sitzungstranskripte bei. |69| [Claude Tag](https://claude.com/docs/claude-tag) | Behält Kanalspeicher und Sitzungstranskripte bei. |

70| [Artifacts](/docs/de/artifacts) | Erfordert das Speichern von veröffentlichtem Seiteninhalt auf von Anthropic betriebener Infrastruktur. |70| [Artifacts](/docs/de/artifacts) | Erfordert das Speichern von veröffentlichtem Seiteninhalt auf von Anthropic betriebener Infrastruktur. |

71| Feedback-Übermittlung (`/feedback`, `/bug`, `/share`) | Das Übermitteln von Feedback sendet Gesprächsdaten an Anthropic. |71| Feedback-Übermittlung (`/feedback`, `/bug`, `/share`) | Das Übermitteln von Feedback sendet Gesprächsdaten an Anthropic. |

72| [Remote Control](/docs/de/remote-control) | Speichert das Sitzungstranskript auf Anthropic-Servern, um das Gespräch über Geräte hinweg zu synchronisieren. |72| [Remote Control](/docs/de/remote-control) | Speichert das Sitzungstranskript auf Anthropic-Servern, um das Gespräch über Geräte hinweg zu synchronisieren. |