> ## Documentation Index
> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Plugin-Ladeverweis

> Verfolgen Sie, von wo Claude Code jedes Plugin lädt, welche Einstellungsdatei entscheidet, ob es geladen wird, und warum ein Update nichts geändert hat.

Verwenden Sie diese Seite, wenn ein Plugin nicht geladen wurde, eine andere Kopie als erwartet geladen wurde oder ein Update nicht aufgegriffen wurde, und Sie sehen möchten, welche Quelle, Einstellungsbereich oder Datei auf der Festplatte dies entschieden hat. Sie zeigt die Regeln, die Claude Code anwendet, wenn eine Sitzung startet und jedes Mal, wenn Sie `/reload-plugins` ausführen. Sie können Claude auch bitten, diese Seite zu lesen und Ihr Setup zu diagnostizieren.

> [!NOTE]
>
> Diese Fälle werden auf anderen Seiten behandelt:
>
> * **Installations-, Aktivierungs-, Deaktivierungs- und Aktualisierungsschritte**: siehe [Plugins installieren und verwalten](https://code.claude.com/docs/de/plugins/install.md)
> * **Sie haben eine spezifische Fehlermeldung**: siehe [Plugins fehlerbeheben](https://code.claude.com/docs/de/plugins/troubleshooting.md)

Beginnen Sie mit [Überprüfen Sie, welche Phase ein Plugin erreicht hat](#check-which-stage-a-plugin-reached) für die drei Phasen, die ein installiertes Plugin durchläuft, oder gehen Sie zu dem Abschnitt, der dem entspricht, was Sie sehen:

* Ein Plugin, das Sie ausgeschaltet haben, wird immer noch geladen: [Finden Sie heraus, wo ein Plugin aktiviert ist](#find-where-a-plugin-is-enabled)
* Ein Update hat nichts geändert: [Versionen und Updates](#versions-and-updates)
* Sie schauen sich die Dateien unter `~/.claude/plugins/` an: [Finden Sie Plugins auf der Festplatte](#find-plugins-on-disk)
* Ein `--plugin-dir`-Plugin wurde nicht geladen, oder ein gleichnamiges Plugin wurde stattdessen geladen: [Namenskonflikte](#name-conflicts)
* Ein Plugin unter `~/.claude/skills/` oder `.claude/skills/` wurde nicht geladen, und keine Fehlermeldung nennt den Grund: [Plugins im Skills-Verzeichnis, die durch verwaltete Einstellungen blockiert werden](#skills-directory-plugins-blocked-by-managed-settings)

## Überprüfen Sie, welche Phase ein Plugin erreicht hat

Ein `enabledPlugins`-Eintrag wird zu einem Plugin, das Sie in Phasen verwenden können: Ihre Einstellungen deklarieren es, Claude Code ruft es auf die Festplatte ab, und die laufende Sitzung lädt es. Wenn sich ein Plugin nicht so verhält, wie eine Einstellungsdatei vermuten lässt, überprüfen Sie, welche Phase es erreicht hat:

* **Deklariert, in Einstellungen**: `enabledPlugins` gibt an, welche Plugins aktiviert sein sollten, und `extraKnownMarketplaces` gibt an, welche Marktplätze vorhanden sein sollten. Wenn Sie `claude plugin marketplace add` ausführen, schreibt Claude Code den Marktplatz sowohl in `extraKnownMarketplaces` in Ihren Benutzereinstellungen als auch auf die Festplatte
* **Abgerufen, auf der Festplatte unter `~/.claude/plugins/`**: die Aufzeichnungen darüber, was Claude Code abgerufen hat, und die abgerufenen Dateien selbst:
  * `known_marketplaces.json` zeichnet jeden Marktplatz auf, den Claude Code abgerufen hat, mit seiner `source`, `installLocation`, `lastUpdated` und `autoUpdate`. Es gibt eine `known_marketplaces.json` pro Benutzer, daher ist ein Marktplatz, den Sie in einem Projekt hinzufügen, in jedem Projekt verfügbar
  * `installed_plugins.json` zeichnet jede Installation mit ihrem `scope`, `installPath` und `version` auf
  * `cache/` enthält die Plugin-Dateien
* **Geladen, in der laufenden Sitzung**: die Plugin-Menge, die Claude Code beim Start oder beim letzten `/reload-plugins` geladen hat. Änderungen an Einstellungen oder auf der Festplatte erreichen diese Ebene erst, wenn Sie `/reload-plugins` ausführen oder eine neue Sitzung starten. Deshalb endet `claude plugin update` mit `Restart to apply changes.` und Hintergrund-Updates fordern Sie mit `Run /reload-plugins to apply` auf

### Plugins und Marktplätze, die beim Sitzungsstart nicht auf der Festplatte vorhanden sind

Plugins werden beim Sitzungsstart aus `installed_plugins.json` und dem Cache geladen, ohne das Netzwerk zu nutzen. Nach dem Sitzungsstart überprüft Claude Code die deklarierten Marktplätze im Hintergrund:

* **Ein Marktplatz, den Einstellungen deklarieren, aber `known_marketplaces.json` fehlt**: Claude Code klont ihn, lädt dann Plugins neu und lädt aktivierte Plugins herunter, die noch nicht zwischengespeichert sind
* **Ein deklarierter Marktplatz, dessen Quelle sich in den Einstellungen geändert hat**: Claude Code ruft ihn von der neuen Quelle ab und zeigt `Plugins changed. Run /reload-plugins to activate.` an

Ein aktiviertes Plugin, das von keinem der beiden Pfade abgerufen wurde und das kein verwendbares Cache-Verzeichnis hat, zeigt `Plugin "<name>" not cached at <path>` auf der Registerkarte `/plugin` **Errors** an. Für die Behebung siehe [`Plugin "<name>" not cached at <path>`](https://code.claude.com/docs/de/plugins/troubleshooting#plugin-not-cached-at).

## Finden Sie heraus, von wo ein Plugin kam

Jedes Plugin hat eine ID der Form `<name>@<origin>`, die Sie in Einstellungsdateien und in `claude plugin list --json` sehen. Der Teil nach `@` sagt Ihnen, wo Claude Code das Plugin gefunden hat:

| ID endet mit | Wie das Plugin dorthin kam | Wie Sie es aktivieren oder deaktivieren |
| :- | :- | :- |
| `@<marketplace>` | Sie haben es von einem Marktplatz installiert, den Sie hinzugefügt haben | `"<name>@<marketplace>": true` oder `false` unter `enabledPlugins` in einer Einstellungsdatei |
| `@inline` | Sie haben Claude Code mit `--plugin-dir` oder `--plugin-url` gestartet, [`CLAUDE_CODE_PLUGIN_DIRS`](https://code.claude.com/docs/de/env-vars#variables) gesetzt, oder eine Agent SDK-App hat die `plugins`-Option übergeben. Es wird nur für diese Sitzung geladen | Aktiviert für die Sitzung, es sei denn, das Manifest setzt `defaultEnabled: false` oder eine Einstellungsdatei setzt `"<name>@inline": false` |
| `@skills-dir` | Sie haben ein Plugin-Verzeichnis mit einer `.claude-plugin/plugin.json` unter `~/.claude/skills/` oder dem `.claude/skills/` des Projekts gespeichert | Das Manifest's `defaultEnabled`, es sei denn, eine Einstellungsdatei setzt `"<name>@skills-dir"` auf `true` oder `false` |
| `@synced` | Sie oder Ihre Organisation haben es für Ihr claude.ai-Konto aktiviert, und Claude Code hat es [heruntergeladen](#synced-plugins) | Aktiviert, es sei denn, das Manifest setzt `defaultEnabled: false` oder eine Einstellungsdatei setzt `"<name>@synced": false`. Ein Plugin, das Ihre Organisation als erforderlich markiert, wird unabhängig geladen |

Für ein Marktplatz-Plugin ist `<name>` der Eintragsname in `marketplace.json`; für `@inline` und `@skills-dir` ist es der `name` im Plugin-Manifest.

Die Ursprungsnamen in dieser Tabelle sind reserviert, daher kann kein Marktplatz `inline`, `skills-dir` oder `synced` genannt werden.

### Eintragsname und Manifest-Name

Ein Marktplatz-Plugin hat zwei Namen, und sie können unterschiedlich sein:

* **Der Eintragsname in `marketplace.json`**: der Installations- und Aktivierungsschlüssel. Es ist das, was Sie in `enabledPlugins` schreiben, worauf das Cache-Verzeichnis benannt ist, und was `claude plugin list` anzeigt
* **Der `name` im Manifest**: worauf die Komponenten des Plugins namensraum sind, und was [Namenskonflikte](#name-conflicts) vergleichen

### Plugins, die über ein Repository geteilt werden

Um ein Plugin über ein Repository zu teilen, listen Sie es unter `enabledPlugins` in `.claude/settings.json` auf oder platzieren Sie es unter `.claude/skills/`. Claude Code scannt das `.claude/plugins/`-Verzeichnis eines Projekts nicht.

Eine Cloud-Sitzung fügt die Marktplätze nicht hinzu, die ein Repository unter [`extraKnownMarketplaces`](https://code.claude.com/docs/de/settings-reference#extraknownmarketplaces) auflistet, da dies den Workspace-Vertrauensdialog erfordert, den eine Cloud-Sitzung nie anzeigt.

#### Vertrauensprüfung und Komponentenbeschränkungen für Repository-Plugins

Ein Plugin im Projekt-Bereich 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 der gleichen Vertrauensprüfung geladen, die für Projekt-Allow-Regeln in `.claude/settings.json` gilt. Ein übergeordnetes Verzeichnis zu vertrauen oder mit `-p` auszuführen ist nicht ausreichend. Komponenten, die Code ausführen, sind weiter eingeschränkt:

* MCP-Server, die es deklariert, durchlaufen die [gleiche Pro-Server-Genehmigung](https://code.claude.com/docs/de/mcp.md) wie ein Projekt `.mcp.json`
* MCP-Server, die es als [MCP-Bundle](https://code.claude.com/docs/de/plugins/manifest-reference.md#mcpservers) deklariert, eine `.mcpb`- oder `.dxt`-Datei, oder aus einer Datei außerhalb des Plugin-Verzeichnisses werden übersprungen. Deklarieren Sie sie inline oder in einer `.mcp.json` im Plugin-Verzeichnis
* [Hintergrund-Monitore](https://code.claude.com/docs/de/plugins/components.md#monitors) werden nicht geladen

Weder die Vertrauensprüfung noch diese Komponentenbeschränkungen gelten für ein Plugin unter Ihrem eigenen `~/.claude/skills/`.

Wie Sie `--plugin-dir`- und Fähigkeitsverzeichnis-Plugins schreiben, siehe [Plugins erstellen](https://code.claude.com/docs/de/plugins/create.md).

#### Prüfen, warum ein Repository-Plugin nicht geladen wurde

Wenn ein Plugin im `.claude/skills/` Ihres Repositorys nicht geladen wird, prüfen Sie die folgenden Ursachen:

* **In einem Unterverzeichnis**: Ein Plugin im Stammverzeichnis des Repositorys wird nicht geladen. Claude Code liest das `.claude/skills/` des [primären Arbeitsverzeichnisses](https://code.claude.com/docs/de/permissions.md#working-directories) der Sitzung und [durchsucht](https://code.claude.com/docs/de/skills.md#discovery-from-parent-and-nested-directories) im Gegensatz zu einfachen Skills und Befehlen keine übergeordneten Verzeichnisse nach Plugins. Starten Sie stattdessen im Stammverzeichnis des Repositorys, oder [verschieben Sie die Sitzung mit `/cd`](https://code.claude.com/docs/de/permissions#move-the-session-to-another-directory) ab v2.1.246 dorthin
* **Aus der Desktop-App, in einem Worktree**: Das Plugin wird aus dem `.claude/skills/` des Haupt-Checkouts statt aus dem des Worktrees geladen. Siehe [Was Worktrees mit dem Haupt-Checkout teilen](https://code.claude.com/docs/de/worktrees.md#what-worktrees-share-with-the-main-checkout)
* **In einem Ordner, dem Sie nicht vertraut haben**: Das Plugin wird erst geladen, nachdem Sie den [Workspace-Vertrauensdialog](https://code.claude.com/docs/de/permissions.md#what-runs-before-you-trust-a-folder) für diesen Ordner akzeptiert haben
* **In einer Organisation, die Claude Code verwaltet**: Siehe [Skills-Verzeichnis-Plugins durch verwaltete Einstellungen blockiert](#skills-directory-plugins-blocked-by-managed-settings)

### Skills-Verzeichnis-Plugins durch verwaltete Einstellungen blockiert

Wenn ein Plugin-Ordner in `~/.claude/skills/` oder im `.claude/skills/` eines Projekts nicht geladen wurde und Sie keinen Fehler sehen, hat Ihr Administrator ihn möglicherweise über [verwaltete Einstellungen](https://code.claude.com/docs/de/managed-settings.md) blockiert. Diese Ordner stammen von Ihnen oder Ihrem Repository und nicht aus einem Marketplace, daher überspringt Claude Code sie, wenn Ihr Administrator eine dieser Einschränkungen festlegt:

* **Anpassungen auf Plugins beschränkt**: [`strictPluginOnlyCustomization`](https://code.claude.com/docs/de/settings-reference#strictpluginonlycustomization) ist auf `true` gesetzt oder auf ein Array, das eine oder mehrere zu sperrende Arten von Anpassungen benennt. Das gesamte Plugin wird übersprungen, sobald eine einzige Art gesperrt ist, etwa `mcp`, unabhängig davon, welche Komponenten es enthält.
* **Marketplace-Quellen eingeschränkt**: eine [`strictKnownMarketplaces`](https://code.claude.com/docs/de/settings-reference#strictknownmarketplaces)-Allowlist ohne einen Eintrag `{ "source": "skills-dir" }` oder eine [`blockedMarketplaces`](https://code.claude.com/docs/de/settings-reference#blockedmarketplaces)-Liste mit einem solchen Eintrag.

`/plugin` und `claude plugin list` zeigen für einen übersprungenen Ordner weder ein Plugin noch einen Fehler an. Seine `/<name>:<skill>`-Befehle und Agenten fehlen, ebenso seine Hooks und MCP-Server.

Sofern Skills nicht zu den gesperrten Arten gehören, wird eine `SKILL.md` im Stammverzeichnis des Ordners weiterhin als einfacher Skill geladen. In diesem Fall funktioniert `/<name>` weiterhin, und die Registerkarte **Installed** von `/plugin` listet diesen Skill unter **Skills** auf.

* **Ursache bestätigen**: Führen Sie `/status` in einer Claude Code-Sitzung aus. Wenn die Zeile `Setting sources` den Eintrag `Enterprise managed settings` enthält, fragen Sie Ihren Administrator, ob eine dieser Einstellungen für Sie gilt. Falls nicht, finden Sie unter [Prüfen, warum ein Repository-Plugin nicht geladen wurde](#check-why-a-repository-plugin-didnt-load) weitere Ursachen.
* **Das gesamte Plugin laden**: Fügen Sie es einem [Marketplace](https://code.claude.com/docs/de/plugins/create-marketplace.md#create-a-marketplace) hinzu, den Ihre Organisation zulässt, und installieren Sie es von dort. Um es stattdessen für eine einzelne Sitzung zu laden, starten Sie `claude` aus Ihrer Shell mit [`--plugin-dir`](https://code.claude.com/docs/de/plugins/cli-reference#flags-that-load-a-plugin-for-one-session) und dem Pfad des Ordners. Das funktioniert, sofern Ihr Administrator dieses Flag nicht ebenfalls deaktiviert hat.

### Plugins, die von claude.ai synchronisiert werden

Ein Plugin, das Sie für Ihr claude.ai-Konto aktivieren, wird auch in Claude Code geladen, neben den Plugins, die Sie von Marktplätzen installieren. Dies umfasst Plugins, die Ihre Organisation für ihre Mitglieder aktiviert. Jedes dieser Plugins wird als `<name>@synced` geladen, ohne Marktplatz und ohne [Installationsdatensatz](#check-which-stage-a-plugin-reached).

In Terminal-Sitzungen werden die Fähigkeiten, Agenten, Hooks, MCP-Server und LSP-Server eines synchronisierten Plugins alle geladen, mit dem gleichen Vertrauen wie ein Marktplatz-Plugin, das Sie installiert haben.

Für die Komponenten, die Cowork lädt, siehe die [Komponenten-Unterstützungstabelle](https://claude.com/docs/plugins/platform-support#compare-component-support-by-app) auf claude.com.

Synchronisierte Plugins werden in Cowork-Sitzungen und in Terminal-Sitzungen geladen, in denen Sie sich mit Ihrem claude.ai-Konto anmelden:

* **[Cowork](https://claude.com/product/cowork)**: Claude Code lädt sie in die eigene Umgebung der Sitzung herunter, wenn die Sitzung startet
* **Terminal-Sitzungen**: jedes Mal, wenn Sie Claude Code starten, wird es einmal im Hintergrund synchronisiert, neue und aktualisierte Plugins heruntergeladen und die Plugins entfernt, die Sie oder Ihre Organisation deaktiviert haben. Die Synchronisierung in Terminal-Sitzungen erfordert Claude Code v2.1.273 oder später

#### Synchronisierungszeitpunkt in Cloud-Cowork-Sitzungen

Wenn Sie während einer Cowork-Sitzung, die in der Cloud läuft, ein Plugin für Ihr claude.ai-Konto aktivieren oder deaktivieren, arbeiten Sie in dieser Sitzung einfach weiter. Wenn sich nach einigen Nachrichten nichts geändert hat, starten Sie eine neue Sitzung.

#### Synchronisierungszeitpunkt in Terminal-Sitzungen

Da die Terminal-Synchronisierung im Hintergrund läuft, kann sie nach dem Start Ihrer Sitzung abgeschlossen sein. Wenn sie ein synchronisiertes Plugin in einer interaktiven Sitzung hinzufügt, aktualisiert oder entfernt, 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.

Wenn Sie während einer Terminal-Sitzung ein Plugin für Ihr claude.ai-Konto aktivieren oder deaktivieren, lädt Claude Code es beim nächsten Start von Claude Code herunter bzw. entfernt es.

#### Anmeldeanforderungen für Terminal-Synchronisierung

In Ihrem Terminal werden Plugins nur in Sitzungen synchronisiert, in denen Sie sich mit Ihrem claude.ai-Konto anmelden.

Claude Code lädt synchronisierte Plugins in diesen Terminal-Sitzungen weder herunter noch lädt sie, auch nicht nachdem Sie sich mit `/login` angemeldet haben:

* Eine Sitzung, in der `ANTHROPIC_AUTH_TOKEN`, `CLAUDE_CODE_OAUTH_TOKEN` oder ein `apiKeyHelper`-Skript die Anmeldeinformation anstelle dieser Anmeldung bereitstellt
* Eine Sitzung, die [Feature-Flags von Anthropic nicht abruft](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching), z. B. eine, in der Sie `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` setzen
* Eine Sitzung im [Bare-Modus](https://code.claude.com/docs/de/headless.md#start-faster-with-bare-mode) oder eine, die Sie mit `--safe-mode` starten
* Eine Sitzung, die Sie mit einer [`--setting-sources`](https://code.claude.com/docs/de/cli-reference#cli-flags)-Liste starten, die `user` auslässt

Wenn Sie sich auf einer früheren Version von Claude Code angemeldet haben, deckt diese Anmeldung Plugins nicht ab, bis Claude Code sie im Hintergrund erneuert. Um schneller Zugriff zu erhalten, führen Sie `/login` erneut aus. Die Plugin-Synchronisierung startet dann das nächste Mal, wenn Sie Claude Code starten.

#### Steuern Sie, welche synchronisierten Plugins geladen werden

Sie können synchronisierte Plugins einzeln ausschalten, außer einem Plugin, das Ihre Organisation erfordert, oder alle synchronisierten Plugins auf dem Computer ausschalten:

* **Ein Plugin**: `claude plugin disable <name>@synced` in Ihrer Shell und die `/plugin` **Installed**-Registerkarte in einer Sitzung speichern beide `"<name>@synced": false` in Ihrem Benutzer-Level [`enabledPlugins`](https://code.claude.com/docs/de/settings-reference#enabledplugins). Um das Plugin in jeder Umgebung aus einem Projekt herauszuhalten, setzen Sie den gleichen Schlüssel in der committed `.claude/settings.json` des Projekts
* **Jedes synchronisierte Plugin auf einem Computer**: setzen Sie [`syncClaudeAiPlugins`](https://code.claude.com/docs/de/settings-reference#syncclaudeaiplugins) auf `false` in Ihren Benutzereinstellungen, oder Ihre Organisation setzt es in [verwalteten Einstellungen](https://code.claude.com/docs/de/managed-settings.md). Claude Code stoppt das Herunterladen, und das nächste Mal, wenn Sie es starten, verschiebt es die Plugins, die es bereits synchronisiert hat, zu `~/.claude/plugins/.trash/` und lädt sie nicht mehr. Wenn Ihre Organisation Skills auf claude.ai ausschaltet, stoppt auch die Plugin-Synchronisierung
* **Ein Plugin, das Ihre Organisation erfordert**: ein Plugin, das Ihre Organisation auf claude.ai als erforderlich markiert, wird geladen, auch wenn Sie es zuvor deaktiviert haben. `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.`, und `claude plugin list` markiert es `required by your org`

Zum Entfernen eines Plugins auf claude.ai siehe [Installierte Plugins verwalten](https://code.claude.com/docs/de/plugins/install.md#manage-installed-plugins).

## Finden Sie heraus, wo ein Plugin aktiviert ist

Sie können einen `enabledPlugins`-Eintrag in einer von sechs Quellen setzen. Die Tabelle listet sie von niedrigster zu höchster Priorität auf und wer jede betrifft. Für die Einstellungsdateien selbst siehe [Einstellungsdateien und wer sie beeinflussen](https://code.claude.com/docs/de/settings.md#where-settings-live).

| Quelle | Wo Sie es setzen | Erreicht |
| :- | :- | :- |
| `--add-dir` | `.claude/settings.json` oder `.claude/settings.local.json` in einem Verzeichnis, das Sie mit `--add-dir` übergeben | Nur diese Sitzung. Nur ein `true`-Wert hat eine Auswirkung, und jede andere Quelle überschreibt ihn |
| `user` | `~/.claude/settings.json` | Sie, in jedem Projekt |
| `project` | `.claude/settings.json` | Jeder, der das Repository klont |
| `local` | `.claude/settings.local.json` | Sie, nur in diesem Repository |
| `flag` | Der `--settings`-Wert, den Sie beim Start übergeben | Nur diese Sitzung |
| `managed` | [Verwaltete Einstellungen](https://code.claude.com/docs/de/managed-settings.md) | Jeder Benutzer, den die Richtlinie abdeckt. `true` erzwingt Aktivierung und `false` blockiert, und keine andere Quelle überschreibt sie |

Diese Quellen werden Schlüssel für Schlüssel zusammengeführt. Für jede Plugin-ID ist der Wert, der gilt, der aus der höchsten Prioritätsquelle, die die ID erwähnt. Eine Quelle, die die ID nicht erwähnt, lässt den Wert aus der niedrigeren Prioritätsquelle in Kraft.

### In Benutzereinstellungen deaktiviert, wird aber immer noch geladen

Wenn Sie ein Plugin in `~/.claude/settings.json` auf `false` setzen und es wird immer noch geladen, überschreibt ein `true` in einer höheren Prioritätsquelle es. Die Zeile des Plugins in `claude plugin list` und in `/plugin` zeigt `Disabled in ~/.claude/settings.json but still loads — project settings enable it, which overrides your user setting`. Die Nachricht nennt die Quelle, die Sie überschrieben hat: `project`, `project, gitignored` für `.claude/settings.local.json`, `cli flag`, oder `managed`.

Um sich von einem Projekt-aktivierten Plugin auf Ihrem Computer abzumelden, setzen Sie die ID auf `false` in `.claude/settings.local.json`, die höhere Priorität als die Projektdatei hat.

### In Projekteinstellungen aktiviert, aber nicht installiert

Wenn das einzige `true` eines Plugins in der `.claude/settings.json` des Projekts ist, ruft Claude Code es nicht auf einem Computer ab, auf dem es nicht installiert ist, es sei denn, sein Marktplatz-Eintrag hat eine [relative-Pfad-Quelle](https://code.claude.com/docs/de/plugins/marketplace-reference.md#plugin-sources) oder ein [Seed-Verzeichnis](https://code.claude.com/docs/de/plugins/org.md#seed-containers-and-ci) hält es bereits. Stattdessen zeigt die `/plugin` **Errors**-Registerkarte `Plugin "<name>" is enabled in project settings but isn't installed here`.

Ein Relative-Pfad-Plugin benötigt keinen Installationsdatensatz, da es vom Marktplatz selbst geladen wird.

Claude Code ruft ein Plugin mit einer externen Quelle nur ab, wenn eine dieser Quellen es auf `true` setzt:

* Ihre Benutzereinstellungen
* Eine `.claude/settings.local.json`, die git nicht verfolgt
* Das `--settings`-Flag
* Verwaltete Einstellungen

## Finden Sie Plugins auf der Festplatte

Claude Code behält Plugin-Dateien und Zustandsdatensätze unter einer Plugin-Root, die `~/.claude/plugins` ist, es sei denn, Sie setzen [`CLAUDE_CODE_PLUGIN_CACHE_DIR`](https://code.claude.com/docs/de/env-vars). Jeder Pfad in der Tabelle ist relativ zu dieser Root.

| Pfad | Was er enthält |
| :- | :- |
| `cache/<marketplace>/<plugin>/<version>/` | Ein Verzeichnis pro installierte Version eines Marktplatz-Plugins. `<plugin>` ist der Marktplatz-Eintragsname und `<version>` ist die [aufgelöste Version](#versions-and-updates). `${CLAUDE_PLUGIN_ROOT}` zeigt auf dieses Verzeichnis |
| `data/<plugin-id>/` | Das persistente Verzeichnis des Plugins, das als `${CLAUDE_PLUGIN_DATA}` verfügbar gemacht wird. Wie `<plugin-id>` gebildet wird, siehe [Pfadvariablen und persistente Daten](https://code.claude.com/docs/de/plugins/components.md#path-variables-and-persistent-data). Claude Code erstellt es, wenn eine Plugin-Komponente es zuerst verwendet, und behält es über Updates hinweg. Standardmäßig löscht Claude Code es, wenn Sie das Plugin aus seinem letzten Bereich deinstallieren. Für `--keep-data` und die anderen Fälle, in denen es erhalten bleibt, siehe [Plugin deinstallieren](https://code.claude.com/docs/de/plugins/cli-reference.md#plugin-uninstall) |
| `marketplaces/<name>/` | Der Klon oder Download eines Marktplatzes, der von GitHub, einem anderen Git-Host oder einer URL hinzugefügt wurde. Ein Marktplatz, der von einer lokalen `file`- oder `directory`-Quelle hinzugefügt wurde, hat hier keine Kopie, und seine `installLocation` in `known_marketplaces.json` ist der Pfad, den Sie angegeben haben |
| `synced/` | Die Plugins, die Claude Code [von Ihrem claude.ai-Konto synchronisiert hat](#synced-plugins) |
| `.trash/` | Plugins, die die claude.ai-Synchronisierung entfernt hat, z. B. nachdem Sie eines auf claude.ai ausgeschaltet haben oder die Synchronisierung gestoppt haben |
| `installed_plugins.json` und `known_marketplaces.json` | Die Datensätze darüber, was Claude Code installiert hat und welche Marktplätze es abgerufen hat, beschrieben unter [Überprüfen Sie, welche Phase ein Plugin erreicht hat](#check-which-stage-a-plugin-reached). Ein [auf claude.ai gehosteter Marktplatz](https://code.claude.com/docs/de/plugins/install.md#add-from-claude-ai) wird stattdessen in `known_marketplaces_claudeai.json` aufgezeichnet |
| `flagged-plugins.json` | Plugins, die Claude Code deinstalliert hat, weil ihr Marktplatz sie delisted hat. Sie erscheinen im **Flagged**-Bereich von `/plugin`; siehe [Einen Marktplatz hosten](https://code.claude.com/docs/de/plugins/host-marketplace.md) |
| `installed_plugins.set-aside.<date>.<hash>.json` und `installed_plugins.unreadable.<date>.<hash>.kept` | Datierte Kopien, die Claude Code behält, bevor es Installationsdatensätze verwirft, die keine Version von Claude Code verwenden kann, oder eine unlesbare `installed_plugins.json` neu erstellt. Siehe [die Wiederherstellungshinweise](https://code.claude.com/docs/de/plugins/troubleshooting.md#installed-plugins-json-could-not-be-read-and-was-rebuilt). Sie werden nach dem [`cleanupPeriodDays`](https://code.claude.com/docs/de/settings-reference#cleanupperioddays)-Plan gelöscht |

Da `${CLAUDE_PLUGIN_ROOT}` auf ein Versionsverzeichnis zeigt, ändert sich der Root-Pfad eines Plugins mit jeder Version. Behalten Sie die dauerhaften Dateien eines Plugins stattdessen in `${CLAUDE_PLUGIN_DATA}`.

### In-Place- und kopierte Plugins

Claude Code lädt einige Plugins an Ort und Stelle von dort, wo Sie sie aufbewahren, und kopiert den Rest in den Cache, je nach ihrem Ursprung:

* **`--plugin-dir`- und Fähigkeitsverzeichnis-Plugins**: das Verzeichnis wird an Ort und Stelle geladen und wird nie kopiert. Ein `--plugin-url`-Archiv oder eine `--plugin-dir` `.zip` wird zuerst in ein Sitzungs-Temp-Verzeichnis extrahiert
* **Relative-Pfad-Plugins in einem Marketplace, den Sie von einem lokalen Pfad hinzugefügt haben**: das Plugin wird an Ort und Stelle von seinem Pfad im Marketplace-Ordner geladen. Ihre Änderungen am Quellverzeichnis treten beim nächsten Sitzungsstart oder `/reload-plugins` in Kraft, und Sie müssen die Version nicht erhöhen. Die Hook-Prozesse des Plugins und MCP- und LSP-Server erhalten ein `CLAUDE_PLUGIN_ROOT`, das auf das Quellverzeichnis zeigt. Für seine Node.js-Paketabhängigkeiten siehe [Wenn die Abhängigkeitsinstallation läuft](#when-the-dependency-install-runs)
* **`command`-Quellen-Plugins im [Link-Modus](https://code.claude.com/docs/de/plugins/marketplace-reference.md#command-plugin-source)**: das Verzeichnis, das der Befehl gedruckt hat, wird an Ort und Stelle geladen, durch Links im Cache-Eintrag
* **Jedes andere Marktplatz-Plugin**: Claude Code kopiert das Plugin beim Installieren in `cache/<marketplace>/<plugin>/<version>/` und lädt diese Kopie. Dateien außerhalb des Plugin-Verzeichnisses werden nicht kopiert, daher findet ein Skript in einem kopierten Plugin, das einen Pfad über der Plugin-Root liest, wie `../shared`, sie nicht

### Pfade, die dem Plugin-Verzeichnis entkommen

Ob ein Plugin an Ort und Stelle oder aus einer zwischengespeicherten Kopie geladen wird, Claude Code lässt es nicht zu, Komponenten außerhalb seines eigenen Verzeichnisses zu deklarieren. Es lehnt einen Komponentenpfad ab, der außerhalb der Plugin-Root aufgelöst wird, ob der Pfad in `plugin.json` oder in einem Marktplatz-Eintrag deklariert ist:

* **Ein Pfad, der außerhalb des Plugins zeigt, wie geschrieben**, wie `../shared-utils`
* **Ein Symlink, der außerhalb des Plugins führt**, außer [Links zwischen Plugins innerhalb eines Marktplatzes](https://code.claude.com/docs/de/plugins/host-marketplace.md#share-files-within-a-marketplace-with-symlinks)
* **Auf macOS und Linux, ein Pfad, der irgendwo einen Backslash enthält**, auch wenn der Pfad im Plugin bleibt. Komponenten, die mit Backslash-Pfaden deklariert werden, werden daher nur unter Windows geladen, daher schreiben Sie Komponentenpfade mit Schrägstrichen, wie `./commands/deploy.md`

Ein abgelehnter Pfad erscheint als [`path escapes plugin directory`](https://code.claude.com/docs/de/errors#path-escapes-plugin-directory)-Fehler, und das Plugin wird ohne diese Komponente geladen.

### Bereinigung vorheriger Versionen

Wenn Sie ein Plugin aktualisieren oder deinstallieren, schreibt Claude Code einen `.orphaned_at`-Marker in das vorherige Versionsverzeichnis. Es entfernt dieses Verzeichnis 14 Tage später in einer Hintergrund-Bereinigung, daher läuft eine Sitzung, die die alte Version bereits geladen hat, weiter.

Der Sweep läuft nur, während `installed_plugins.json` mindestens eine Installation aufzeichnet. Nachdem Sie Ihr letztes Plugin deinstalliert haben, bleiben verwaiste Verzeichnisse, bis Sie ein anderes installieren.

### Node.js-Paketabhängigkeiten

Wenn 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 sie 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](https://code.claude.com/docs/de/plugins/dependencies.md).

#### Wenn die Abhängigkeitsinstallation läuft

Claude Code installiert die Abhängigkeiten jedes Mal in das kopierte Versionsverzeichnis, wenn es eines erstellt:

* Wenn Sie ein Plugin installieren
* Wenn Claude Code ein Plugin auf eine neue Version aktualisiert
* Beim Sitzungsstart, wenn ein aktiviertes Plugin noch nicht zwischengespeichert ist, z. B. auf einem neuen Computer

Für ein Relative-Pfad-Plugin, das [an Ort und Stelle geladen wird](#in-place-and-copied-plugins) aus einem Marketplace, den Sie von einem lokalen Pfad hinzugefügt haben, installiert Claude Code die Abhängigkeiten nicht in das Quellverzeichnis. Installieren Sie sie dort selbst, oder von einem Hook in [`${CLAUDE_PLUGIN_DATA}`](https://code.claude.com/docs/de/plugins/components#path-variables-and-persistent-data).

Die Installation läuft nur, wenn das Plugin-Root-Verzeichnis sowohl eine `package.json` als auch eine unterstützte Lockdatei enthält.

Die Lockdatei entscheidet, welchen Paketmanager Claude Code ausführt:

| Lockdatei | Paketmanager |
| :- | :- |
| `bun.lock` | Bun |
| `npm-shrinkwrap.json` oder `package-lock.json` | npm |

Wenn ein Plugin mehr als eine dieser Lockdateien enthält, verwendet Claude Code die erste Übereinstimmung, Überprüfung in Reihenfolge: `bun.lock`, `npm-shrinkwrap.json`, `package-lock.json`.

Claude Code überspringt die Installation in diesen Lockdatei-Fällen:

* **`bun.lockb`**: Die binäre Lockdatei von Bun kann nicht überprüft werden. Liefern Sie stattdessen eine Text-`bun.lock` oder eine npm-Lockdatei mit
* **`yarn.lock` oder `pnpm-lock.yaml`**: Ersetzen Sie sie durch eine npm-Lockdatei
* **Eine Lockdatei in einem Format, das Claude Code nicht liest**: Eine npm-Lockdatei benötigt eine `lockfileVersion` von `2` oder `3`, die npm 7 oder höher schreibt, und eine `bun.lock` benötigt eine `lockfileVersion` von höchstens `2`

Fügen Sie eine npm-Lockdatei ein, um die meisten Benutzer zu erreichen. Claude Code führt den Paketmanager der übereinstimmenden Lockdatei aus dem PATH des Benutzers aus und versucht nicht den anderen Lockdatei-Paketmanager, wenn dieser fehlt.

Für ein Plugin, das über eine npm-Quelle verteilt wird, verwenden Sie `npm-shrinkwrap.json`, da npm `package-lock.json` aus veröffentlichten Paketen ausschließt.

#### Grenzen der Abhängigkeitsinstallation

Claude Code beschränkt diese Abhängigkeitsinstallation so, dass kein Code aus dem Plugin oder seinen Paketen während der Installation ausgeführt wird, und begrenzt, wie lange sie laufen kann:

* **Nur Registry-Pakete**: Jede Abhängigkeit muss ein Registry-Paket sein, das in der Lockdatei auf eine exakte Version festgelegt ist. Ein Plugin mit einer Git-, GitHub-, Ordner-, Workspace- oder verlinkten Abhängigkeit erhält keine Installation.
* **`https`-Downloads**: Ein Download-Link in der Lockdatei muss `https` verwenden, es sei denn, er zeigt auf die eigene Standard-npm-Registry des installierenden Benutzers.
* **Ein separater Installationsordner**: Der Paketmanager läuft in einem eigenen Ordner, der nur eine Kopie der überprüften Abhängigkeitsliste enthält, sodass npm und Bun die `.npmrc`, `.env` oder `bunfig.toml` des Plugins nicht lesen. Wenn die Installation erfolgreich ist, verschiebt Claude Code das resultierende `node_modules` in das Plugin.
* **Gefrorene Auflösung**: Die Installation verwendet genau die Versionen, die die Lockdatei festlegt, und Claude Code überspringt sie, wenn `package.json` und die Lockdatei nicht dieselben Abhängigkeiten auflisten
* **Keine Lifecycle-Skripte**: `--ignore-scripts` hält `preinstall`-, `install`- und `postinstall`-Skripte davon ab, zu laufen, daher laden Abhängigkeiten, die native Module in diesen Skripten erstellen, herunter, werden aber während dieser Installation nicht kompiliert
* **Keine Überschreibungen oder Patches**: Ein Plugin, dessen `package.json` npm-`overrides` setzt, erhält keine Installation aus einer npm-Lockdatei, und ein Plugin, das Bun-`patchedDependencies` setzt, erhält keine Installation aus `bun.lock`
* **60-Sekunden-Timeout**: Claude Code stoppt eine Installation, die länger läuft, und behandelt sie als fehlgeschlagen

Claude Code ruft ein npm-Quellen-Plugin vor dieser Abhängigkeitsinstallation ab, und keines der Installationsskripte des Pakets selbst läuft während des Abrufs. Siehe [npm-Plugin-Quelle](https://code.claude.com/docs/de/plugins/marketplace-reference.md#npm-plugin-source).

Sie können die automatische Installation nicht ausschalten. Keine Einstellung oder Umgebungsvariable deaktiviert sie.

In eingeschränkten Netzwerken siehe die [Netzwerkzugriffsanforderungen](https://code.claude.com/docs/de/network-config.md#network-access-requirements) für die Hosts, die Sie zulassen müssen.

#### Wenn die Abhängigkeitsinstallation fehlschlägt oder übersprungen wird

Wenn die Installation fehlschlägt oder übersprungen wird, wird das Plugin trotzdem geladen, aber die Teile davon, die die fehlenden Pakete benötigen, funktionieren möglicherweise nicht.

`/plugin` und `claude plugin list` zeigen einen Hinweis bei einem aktivierten Plugin an, dessen zwischengespeicherte Kopie eine Lockdatei und eine `package.json` mit Laufzeitabhängigkeiten, aber kein `node_modules`-Verzeichnis enthält. Der Hinweis gibt an, ob die Installation nicht abgeschlossen wurde oder für dieses Plugin nicht ausgeführt werden kann. Was Sie im jeweiligen Fall tun können, erfahren Sie im [Eintrag zur Fehlerbehebung](https://code.claude.com/docs/de/plugins/troubleshooting.md#the-packages-it-lists-are-not-installed).

Wenn die automatische Installation eine Abhängigkeit nicht bereitstellen kann, installieren Sie sie von einem Hook in das [persistente Datenverzeichnis](https://code.claude.com/docs/de/plugins/components.md#path-variables-and-persistent-data). Dies umfasst Pakete, die ihre Lifecycle-Skripte zum Bauen benötigen, Python-Abhängigkeiten, Plugins, die mit Yarn oder pnpm gesperrt sind, und Abhängigkeiten, die keine Registry-Pakete sind, wie Git-Abhängigkeiten.

## Versionen und Updates

Wenn der Autor eines Plugins neue Commits gepusht hat und `claude plugin update` gibt `<name> is already at the latest version (<version>).` aus, bleibt die Version, die Claude Code für das Plugin berechnet, unverändert, sodass sich die Dateien des Plugins auf der Festplatte nicht ändern.

Claude Code berechnet eine Version für jedes Plugin, das es installiert, und anhand dieser Version erkennt es ein Update. `claude plugin update` und die automatische Aktualisierung im Hintergrund berechnen die Version erneut und ersetzen die zwischengespeicherte Kopie nicht, wenn sie mit dem übereinstimmt, was `installed_plugins.json` aufzeichnet. Ein Update, das Sie selbst starten, kann in dieser Kopie dennoch [eine unvollständige Installation von Abhängigkeiten erneut versuchen](https://code.claude.com/docs/de/plugins/troubleshooting.md#the-packages-it-lists-are-not-installed).

Die Version benennt auch das Cache-Verzeichnis des Plugins.

Ein Manifest, das `"version"` festlegt, ist eine Möglichkeit, wie die berechnete Version über Commits hinweg gleich bleibt. Siehe [How Claude Code computes the version](#how-claude-code-computes-the-version) für die Auflösungsreihenfolge.

Ein Plugin, das aus einem Marketplace, den Sie über einen lokalen Pfad hinzugefügt haben, [an Ort und Stelle geladen](#in-place-and-copied-plugins) wird, lädt seine aktuellen Quelldateien bei jedem Sitzungsstart, unabhängig davon, was seine Versionszeichenkette sagt. Für ein Plugin aus einem [Marketplace, der auf claude.ai gehostet wird](https://code.claude.com/docs/de/plugins/install.md#add-from-claude-ai), ist die Version, die claude.ai für das Plugin aufzeichnet, seine Version, und das `version`-Feld des Manifests wird nicht gelesen.

### How Claude Code computes the version

Für einen Marketplace, den Sie nach Quelle hinzugefügt haben, wählt Claude Code die Regel nach dem `source`-Typ des Plugin-Marketplace-Eintrags. Die [Marketplace-Referenz](https://code.claude.com/docs/de/plugins/marketplace-reference.md#plugin-sources) listet die Quellentypen auf. Für jeden Quellentyp in dieser Liste außer `command`:

1. Das `version`-Feld im Manifest des Plugins kommt zuerst
2. Dann das `version`-Feld im Plugin-Marketplace-Eintrag
3. Wenn keines gesetzt ist, kommt die Version vom Quellentyp:

| Quellentyp | Version, wenn kein `version`-Feld gesetzt ist |
| :- | :- |
| `github`, `url` oder `git-subdir` | Der Commit-SHA der Quelle, gekürzt auf 12 Zeichen. Eine `git-subdir`-Version trägt auch einen Hash des Unterverzeichnispfads |
| `archive` | Der SHA-256-Digest, gekürzt auf 12 Zeichen: der `sha256`-Pin im Marketplace-Eintrag oder der Digest der heruntergeladenen Datei, wenn kein Pin vorhanden ist |
| Relativer Pfad in einem Git-gehosteten Marketplace | Der Commit-SHA des installierten Verzeichnisses |
| Lokales Verzeichnis, wenn weder das Plugin-Verzeichnis noch sein Marketplace ein Git-Repository ist | `unknown` |
| `npm` | `unknown` |

Claude Code nimmt die Version nicht aus einem Repository, das den Installationspfad umschließt, wie z. B. ein Git-verwaltetes `~/.claude`.

Für eine `command`-Quelle leitet Claude Code die Version immer von dem ab, was der Befehl produziert hat: ein 12-Zeichen-Hash allein oder `<manifest version>-<hash>`, wenn das Manifest einen setzt. Der `version`-Eintrag des Marketplace wird für Befehlsquellen ignoriert. Für das, was der Hash abdeckt, siehe [Copy mode and link mode](https://code.claude.com/docs/de/plugins/marketplace-reference.md#copy-mode-and-link-mode).

Da das Manifest zuerst kommt, behält ein Manifest, das `"version": "1.0.0"` festlegt, jeden Benutzer auf der zwischengespeicherten Kopie, bis sein Autor die Zeichenkette ändert, egal wie viele Commits er pusht. Um Benutzern zu ermöglichen, stattdessen Commits zu verfolgen, lassen Sie `version` sowohl im Manifest als auch im Eintrag weg. [Host a marketplace](https://code.claude.com/docs/de/plugins/host-marketplace.md) behandelt, welche Wahl zu welchem Release-Setup passt.

### When Claude Code refreshes a marketplace before an install

Wenn Sie ein Plugin installieren, sucht Claude Code es in seiner lokalen Kopie des Marketplace-Katalogs auf. Sie können `/plugin install` in einer Sitzung oder `claude plugin install` in Ihrer Shell ausführen und das Plugin mit oder ohne seinen Marketplace benennen. Die Tabelle zeigt, welche dieser Kombinationen die lokale Kopie aktualisieren.

| Plugin-Name | Befehl | Was Claude Code aktualisiert |
| :- | :- | :- |
| `name@marketplace` | `/plugin install` oder `claude plugin install` | Der benannte Marketplace, vor der Suche |
| `name` allein | `/plugin install` | Nur Marketplaces, die Auto-Update aktiviert haben, und nur nach der Suche fehlschlägt |
| `name` allein | `claude plugin install` | Nichts. Es liest die zwischengespeicherten Kataloge ohne Aktualisierung |

Die Aktualisierung vor einer `name@marketplace`-Installation hängt nicht von der Auto-Update-Einstellung des Marketplace oder von `DISABLE_AUTOUPDATER` ab.

Wenn die Aktualisierung fehlschlägt, wird die Installation aus dem zwischengespeicherten Katalog fortgesetzt und `claude plugin install` meldet `marketplace not refreshed`.

Claude Code überspringt die Aktualisierung vor einer `name@marketplace`-Installation, wenn:

* Der Marketplace wurde aus einer lokalen `file`- oder `directory`-Quelle hinzugefügt oder ist inline in Einstellungen mit einer [`settings`-Quelle](https://code.claude.com/docs/de/settings-reference#extraknownmarketplaces) definiert
* Ein [Seed-Verzeichnis](https://code.claude.com/docs/de/env-vars.md) stellt den Marketplace bereit
* Claude Code hat den Marketplace in den letzten 30 Sekunden aktualisiert
* Sie setzen `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`
* [Verwaltete Einstellungen](https://code.claude.com/docs/de/plugins/org.md#restrict-what-users-can-install) blockieren den Marketplace, in welchem Fall Claude Code auch die Installation verweigert

### When auto-update runs

In einer interaktiven Sitzung wartet Claude Code nach dem Senden Ihrer ersten Nachricht eine zufällige Verzögerung von bis zu zehn Minuten. Anschließend aktualisiert es jeden Marketplace mit aktiviertem Auto-Update und aktualisiert die von ihnen installierten Plugins auf der Festplatte.

Die laufende Sitzung behält die Versionen, die sie geladen hat, und Sie sehen `Plugin updated: <name> · Run /reload-plugins to apply`. Unabhängig davon, ob Sie neu laden oder nicht, werden die neuen Versionen beim nächsten Start geladen.

#### Which marketplaces and plugins auto-update

Ob ein Marketplace automatisch aktualisiert wird, folgt dem ersten dieser Punkte, der gesetzt ist:

1. **`autoUpdate` auf seinem `extraKnownMarketplaces`-Eintrag** in einer Einstellungsdatei
2. **`autoUpdate` auf seinem `known_marketplaces.json`-Eintrag**, den der **Enable auto-update**-Schalter unter `/plugin` **Marketplaces** schreibt. Wenn eine Einstellungsdatei den Marketplace auch unter `extraKnownMarketplaces` deklariert, schreibt der Schalter `autoUpdate` auch in diesen Einstellungseintrag
3. **Der Standard**: an für Anthropics offizielle Marketplaces wie `claude-plugins-official`, aus für `knowledge-work-plugins` und `first-party-plugins`, an für [Marketplaces, die von claude.ai hinzugefügt wurden](https://code.claude.com/docs/de/plugins/install.md#add-from-claude-ai), und aus für jeden anderen Marketplace

Wenn Sie `DISABLE_UPDATES=1`, `DISABLE_AUTOUPDATER=1` oder `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1` setzen, ist der gesamte Durchgang aus und der **Enable auto-update**-Schalter ist verborgen, es sei denn, Sie setzen auch `FORCE_AUTOUPDATE_PLUGINS=1`. Die [Umgebungsvariablen-Referenz](https://code.claude.com/docs/de/env-vars.md) behandelt die breitere Auswirkung jeder Variablen.

Auto-Update überspringt auch ein Plugin, dessen Marketplace-Eintrag einen `headersHelper` deklariert. [Installs and updates that refuse a command instead of asking](https://code.claude.com/docs/de/plugins/host-marketplace.md#installs-and-updates-that-refuse-the-command-instead-of-asking) erklärt, wann ein solches Plugin in der `/plugin` **Errors**-Registerkarte angezeigt wird und wie Sie es von dort aus aktualisieren.

Wenn ein kopiertes Plugin während einer Sitzung aktualisiert wird, verwenden Hook-Befehle, Monitore, 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. Monitore erfordern einen Sitzungsneustart.

### When a command source re-runs

Plugins mit einer `command`-Quelle warten nicht auf den [Auto-Update-Durchgang](#when-auto-update-runs). Das gedruckte Verzeichnis spiegelt den Zustand des Tools zum Zeitpunkt der Befehlsausführung wider, daher führt Claude Code den [Befehl aus, den Sie akzeptiert haben](https://code.claude.com/docs/de/plugins/host-marketplace.md#change-the-command-of-a-command-source) zu diesen Zeiten erneut aus:

* Jedes Mal, wenn Sie das Plugin installieren oder aktualisieren
* Einmal pro Sitzung für jedes aktivierte befehlsgesteuerte Plugin im Hintergrund, kurz nach dem Sitzungsstart. Dieser Durchgang hängt nicht von der Auto-Update-Einstellung des Marketplace oder von `DISABLE_AUTOUPDATER` ab
* Beim Start oder auf `/reload-plugins`, wenn die installierte Version eines aktivierten Plugins im Plugin-Cache fehlt

Claude Code überspringt die beiden Hintergrund-Durchgänge, wenn Sie [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](https://code.claude.com/docs/de/env-vars) setzen. Explizite Installationen und Updates führen den Befehl mit dieser Variablen gesetzt immer noch aus.

Wenn 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 neu, wobei [die gleichen Komponenten gewechselt werden, die `/reload-plugins` wechselt](https://code.claude.com/docs/de/plugins/cli-reference#reload-plugins). Sie sehen eine Benachrichtigung, dass das Plugin neu geladen wurde.

Wenn das Neuladen an Ort und Stelle den Prompt-Cache der Sitzung ungültig machen würde, fordert Claude Code Sie stattdessen auf, `/reload-plugins` auszuführen, das [vor den Cache-Kosten warnt und angewendet wird, wenn es mit `--force` erneut ausgeführt wird](https://code.claude.com/docs/de/prompt-caching#enabling-or-disabling-a-plugin).

## Namenskonflikte

Wenn aktivierte Plugins aus verschiedenen Ursprüngen einen Manifest-Namen teilen, entscheidet diese Reihenfolge, welche geladen wird, von höchster zu niedrigster Priorität:

1. Ein Plugin, dessen ID in verwalteten Einstellungen `enabledPlugins` erscheint, als `true` oder `false`. Eine `--plugin-dir`-Kopie, deren Manifest-Name dem Namen-Teil der ID entspricht, wird nicht geladen, und Sie sehen `--plugin-dir copy of "<name>" ignored: plugin is locked by managed settings`
2. Ein aktiviertes `--plugin-dir`-, `--plugin-url`- oder `CLAUDE_CODE_PLUGIN_DIRS`-Plugin. Es ersetzt ein gleichnamiges installiertes Marktplatz-Plugin oder Fähigkeitsverzeichnis-Plugin:
   * **Ein installiertes Marktplatz-Plugin**: stillschweigend ersetzt. `claude plugin list` zeigt die Marktplatz-Zeile immer noch als aktiviert, da diese Zeile Ihre Einstellungen widerspiegelt. Nur das Protokoll, das Claude Code unter `~/.claude/debug/` schreibt, wenn Sie mit `--debug` starten, zeichnet `Plugin "<name>" from --plugin-dir overrides installed version` auf
   * **Ein Fähigkeitsverzeichnis-Plugin**: ersetzt mit einer `/plugin` **Errors**-Registerkarte-Zeile, die `Not loaded — the name "<name>" is already taken by a session-only plugin (--plugin-dir / --plugin-url), which takes precedence` liest
3. Ein installiertes Marktplatz-Plugin. Ein Fähigkeitsverzeichnis-Plugin mit dem gleichen Namen erhält die gleiche `Not loaded`-Zeile, benennend das installierte Plugin
4. Ein Fähigkeitsverzeichnis-Plugin. Zwischen zwei davon wird die Kopie unter `~/.claude/skills/` geladen und die Kopie des Projekts `.claude/skills/` wird gelöscht, mit einer Zeile, die sagt, welcher Pfad sie überschattet hat
5. Ein Plugin, das [von claude.ai synchronisiert wird](#synced-plugins). Wenn ein aktiviertes Plugin aus einem anderen Ursprung seinen Namen entspricht, lädt Claude Code dieses Plugin und meldet die synchronisierte Kopie als nicht geladen. Um stattdessen die claude.ai-Kopie zu verwenden, deaktivieren Sie Ihre eigene Kopie

Da die Reihenfolge Manifest-Namen vergleicht, ersetzt ein `--plugin-dir`-Plugin namens `hello-plugin` `hello@example-marketplace`, wenn das Plugin-Manifest auch `"name": "hello-plugin"` sagt.

### Hooks, wenn zwei aktivierte Plugins einen Namen teilen

Wenn Sie zwei Plugins mit demselben Manifest-Namen aus verschiedenen Marketplaces installieren und aktivieren, erscheinen beide in `/plugin` als aktiviert, aber die Hooks eines der beiden werden ausgelassen. Pro Name registriert ein Plugin die Hooks in seiner `hooks/hooks.json`, und pro Name lädt ein Plugin ein [Hooks-Modul](https://code.claude.com/docs/de/plugins/mods/overview.md). Wenn die verwalteten Einstellungen Ihrer Organisation eine der Kopien aktivieren, hält diese Kopie den Namen. Andernfalls hält ihn die Kopie, die Claude Code zuerst lädt.

Um zu sehen, welche Kopie den Namen hält, führen Sie `/plugin` in Ihrer Sitzung aus und öffnen Sie die Registerkarte **Errors**. Ein Hinweis dort für die Kopie, deren Hooks ausgelassen wurden, nennt die Kopie, die den Namen hält, und die Details der ausgelassenen Kopie zeigen denselben Hinweis. Bei Hooks aus `hooks/hooks.json` beginnt der Hinweis mit `Its hooks.json hooks do not run`, bei einem Hooks-Modul mit `Its hooks module does not load`. Der Hinweis erfordert Claude Code v2.1.296 oder höher.

Um stattdessen die Hooks der ausgelassenen Kopie auszuführen, deaktivieren oder deinstallieren Sie die Kopie, die den Namen hält, und führen Sie dann `/reload-plugins` in Ihrer Sitzung aus. Das Neuladen registriert die Hooks der verbleibenden Kopie und entfernt den Hinweis. Wenn die Kopie, die den Namen hält, eine ist, die Ihre verwalteten Einstellungen aktivieren, können Sie sie nicht deaktivieren, und die Hooks der anderen Kopie bleiben ausgeschaltet, solange beide installiert sind.

### Halten Sie ein Sitzungs-Only-Plugin davon ab, zu laden

Um zu verhindern, dass ein `--plugin-dir`-Plugin etwas überschattet, oder um eines auszuschalten, wenn ein übergeordneter Prozess das Flag für Sie übergibt, setzen Sie seine ID auf `false` in einer beliebigen Einstellungsdatei. Für ein Plugin, dessen Manifest-Name `hello-plugin` ist, ist der Eintrag `"enabledPlugins": {"hello-plugin@inline": false}`. Ein deaktiviertes Sitzungs-Only-Plugin überschattet nicht, daher wird die Marktplatz- oder Fähigkeitsverzeichnis-Kopie stattdessen geladen.

## Nächste Schritte

* [Plugins installieren und verwalten](https://code.claude.com/docs/de/plugins/install.md): die Installations-, Aktivierungs-, Deaktivierungs- und Aktualisierungsschritte selbst
* [Plugins fehlerbeheben](https://code.claude.com/docs/de/plugins/troubleshooting.md): Fehlermeldungen nach der Phase, die sie produziert
* [Plugin-Befehle-Referenz](https://code.claude.com/docs/de/plugins/cli-reference.md): die Flags und Befehle, die auf dieser Seite benannt werden
* [Plugins für Ihre Organisation verwalten](https://code.claude.com/docs/de/plugins/org.md): die verwalteten Einstellungen, die Plugins erzwingen oder blockieren
