SpyBara
Go Premium

plugins/cli-reference.md 2026-09-28 22:59 UTC to 2026-09-29 03:02 UTC

This page contains 861 additions and 0 deletions.

2026
Tue 29 04:01

Referenz für Plugin-Befehle

Vollständige Referenz für die Claude-Plugin-Shell-Befehle, /plugin und /reload-plugins in einer Sitzung, und die Flags, die ein Plugin für eine Sitzung laden.

Sie führen Plugin-Befehle entweder als claude plugin aus Ihrer Shell oder einem Skript aus, oder als /plugin und /reload-plugins innerhalb einer Claude Code-Sitzung. Diese Referenz gibt die Flags, Standardwerte, Ausgabe und Exit-Codes jedes Befehls an, zusammen mit den zwei Flags, die ein Plugin für eine Sitzung laden.

Führen Sie claude plugin --help auf Ihrem Build aus, um zu bestätigen, welche Unterbefehle Ihre Version hat.

claude plugin-Befehle

Führen Sie claude plugin <subcommand> aus Ihrer Shell oder einem Skript aus, außerhalb einer Claude Code-Sitzung. Diese Unterbefehle installieren und verwalten Plugins, ohne das /plugin-Panel zu öffnen.

claude plugins ist ein Alias für claude plugin.

Jeder Unterbefehl teilt diese Exit-Codes, Plugin-Argumente und Bereichswerte:

  • Exit-Codes: 0 bei Erfolg und 1 bei Fehler. validate fügt Exit 2 für einen unerwarteten Fehler hinzu, und eval fügt die in seinem Abschnitt aufgelisteten Codes hinzu.
  • Plugin-Argumente: ein <plugin>-Argument ist ein Plugin-name oder name@marketplace. Wenn zwei Marktplätze denselben Namen anbieten, verwenden Sie die qualifizierte Form.
  • Bereiche: --scope nimmt user, project oder local und benennt die Einstellungsdatei, in die der Befehl schreibt. update nimmt auch managed.

plugin init

Gerüst für ein neues Plugin unter ~/.claude/skills/<name>/. Es wird in Ihrer nächsten Sitzung als <name>@skills-dir ohne Installationsschritt geladen.

new ist ein Alias für init.

Für den Erstellen-, Test- und Bearbeitungs-Workflow, der mit diesem Befehl beginnt, siehe Plugin erstellen.

claude plugin init <name> [options]

<name> wird zum Verzeichnisnamen unter ~/.claude/skills/ und zum name des Plugins in seinem Manifest.

Der Befehl hat kein Flag für einen anderen Ort. Um stattdessen innerhalb eines Projekts zu gerüsten, siehe Plugin erstellen.

Flag Beschreibung
--description <text> Manifest-Beschreibung
--author <name> Autorname. Standardwert ist git config user.name
--author-email <email> Autor-E-Mail. Standardwert ist git config user.email
--with <components...> Auch Starter-Dateien für skills, agents, hooks, mcp, lsp, output-style oder channel gerüsten
-f, --force Überschreiben Sie ein vorhandenes .claude-plugin/ am Ziel

Gerüst für ein Plugin mit Starter-Skill- und Hook-Dateien:

claude plugin init my-helper --with skills hooks

Claude Code validiert, was es geschrieben hat, und druckt Created plugin "my-helper" at ~/.claude/skills/my-helper, gefolgt von der ID, unter der es geladen wird, und dem claude plugin disable-Befehl, der es ausschaltet.

Claude Code beendet sich mit 1 ohne zu schreiben, wenn es nicht sicher gerüsten kann, und die Meldung nennt den Grund. Dies sind häufige Gründe:

  • Ein unbekannter --with-Wert
  • Ein vorhandenes Gerüst am Ziel ohne --force
  • Eine verwaltete Einstellung, die Skills-Verzeichnis-Plugins blockiert

plugin install

Installieren Sie ein Plugin von einem Marktplatz, den Sie hinzugefügt haben. i ist ein Alias für install.

claude plugin install <plugin> [options]

Die meisten Plugins werden ohne Eingabeaufforderung installiert. Für ein Plugin, dessen Marktplatz-Eintrag einen Befehl zur Installation ausführt oder einen headersHelper für seinen Download setzt, druckt Claude Code zuerst den Befehl und fragt Run this command now? [y/N].

Flag Beschreibung
-s, --scope <scope> Installationsbereich: user, project oder local. Standardwert ist user
--config <key=value> Legen Sie eine userConfig-Option fest, die das Manifest des Plugins deklariert. Wiederholen Sie das Flag für jede Option. Erfordert Claude Code v2.1.147 oder später
-y, --yes Akzeptieren Sie den angezeigten Installationsbefehl ohne die Run this command now?-Eingabeaufforderung. Wird ignoriert, wenn der Befehl innerhalb einer Claude Code-Sitzung ausgeführt wird, z. B. vom Bash-Tool oder einem Hook. Erfordert Claude Code v2.1.229 oder später
--accept-command <sha256> Akzeptieren Sie den angezeigten Installationsbefehl, dessen sha256 ein vorheriger --json-Lauf in shownCommand gemeldet hat, anstelle von -y. Kann nicht mit -y kombiniert werden. Siehe Angezeigten Installationsbefehl akzeptieren. Erfordert Claude Code v2.1.271 oder später
--json Drucken Sie das Ergebnis als ein JSON-Objekt in der letzten Zeile von stdout statt der benutzerfreundlichen Meldung, zur Verwendung in Skripten. Siehe JSON-Ergebnisformat. Erfordert Claude Code v2.1.268 oder später

Übergeben Sie -y von Ihrem eigenen Terminal, um den angezeigten Befehl ohne Eingabeaufforderung zu akzeptieren. Hier ist, was ohne TTY und wenn Claude den Befehl ausführt, passiert:

  • stdin oder stdout ist keine TTY, und Sie übergeben weder -y noch --accept-command: die Installation wird abgelehnt. Die Ausgabe besagt, dass der Befehl nur angezeigt wurde, und der Exit-Code ist 1
  • Claude führt den Befehl über sein Bash-Tool aus: -y wird ignoriert. Führen Sie den Befehl stattdessen von Ihrem eigenen Terminal aus

Installieren Sie ein Plugin für alle, die das Projekt klonen:

claude plugin install formatter@my-marketplace --scope project

Claude Code druckt Successfully installed plugin: formatter@my-marketplace (scope: project). Wenn nichts Neues installiert wird, besagt die Ausgabe warum:

  • Bereits in diesem Bereich installiert: die Ausgabe ist Plugin "formatter@my-marketplace" is already installed (scope: project) und der Exit-Code ist 0
  • Sie lehnen eine Befehlsquellen-Eingabeaufforderung ab: die Ausgabe ist Aborted. und der Exit-Code ist 1
  • Sie lehnen eine headersHelper-Eingabeaufforderung ab, oder sie kann ohne TTY nicht bestätigt werden: die Ausgabe ist Aborted — the command was not run. und der Exit-Code ist 1

JSON-Ergebnisformat

Wenn Sie --json an plugin install übergeben, ist die letzte Zeile von stdout ein JSON-Objekt. Analysieren Sie nur diese Zeile, da Claude Code jeden Befehl, den der Marktplatz deklariert, davor druckt.

Drei Felder sind immer vorhanden:

  • command: der Unterbefehl, der ausgeführt wurde, z. B. install
  • outcome: ok oder failed
  • message: eine benutzerfreundliche Beschreibung des Ergebnisses

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

Angezeigten Installationsbefehl akzeptieren

Wenn ein --json-Lauf einen vom Marktplatz deklarierten Befehl anzeigt und ihn nicht ausführt, trägt das failed-Ergebnis auch ein shownCommand-Objekt. Seine Felder enthalten den Befehl wie angezeigt, das Plugin, zu dem er gehört, und den sha256 des Befehls.

Um genau diesen Befehl zu akzeptieren, führen Sie ihn mit diesem sha256 als --accept-command von Ihrem eigenen Terminal aus, da das Flag keine Auswirkung innerhalb einer Claude Code-Sitzung hat. Erfordert Claude Code v2.1.271 oder später.

Der sha256 zählt als Akzeptanz für genau diesen Befehl, Plugin und Marktplatz-Katalog. Wenn sich einer von ihnen seit der Anzeige des Befehls geändert hat, akzeptiert Claude Code den sha256 nicht und zeigt den Befehl erneut an. Eine Änderung, die die Marktplatz-Aktualisierung des Laufs selbst abruft, zählt auch als solche Änderung.

Wenn shownCommand.acceptCommandMatched false ist, stimmt der sha256, den Sie übergeben haben, nicht mit dem jetzt angezeigten Befehl überein. Überprüfen Sie diesen Befehl, bevor Sie ihn mit seinem sha256 erneut ausführen.

plugin uninstall

Entfernen Sie ein installiertes Plugin aus einem Bereich. remove und rm sind Aliase für uninstall.

claude plugin uninstall <plugin> [options]
Flag Beschreibung
-s, --scope <scope> Deinstallieren Sie aus dem Bereich: user, project oder local. Standardwert ist user
--keep-data Bewahren Sie das Datenverzeichnis des Plugins, ~/.claude/plugins/data/<id>/
--prune Entfernen Sie auch automatisch installierte Abhängigkeiten, die kein verbleibendes Plugin benötigt
-y, --yes Überspringen Sie die --prune-Bestätigungsaufforderung. Erforderlich mit --prune, wenn stdin oder stdout keine TTY ist
--json Drucken Sie das Ergebnis als ein JSON-Objekt in der letzten Zeile von stdout, im gleichen Format wie plugin install --json. Kann nicht mit --prune kombiniert werden. Erfordert Claude Code v2.1.268 oder später

Deinstallieren Sie ein Plugin aus dem Projektbereich:

claude plugin uninstall formatter@my-marketplace --scope project

Claude Code druckt Successfully uninstalled plugin: formatter (scope: project). Wenn das Plugin nicht in diesem Bereich installiert ist, druckt der Befehl eine Zeile, die mit Failed to uninstall plugin "formatter@my-marketplace": beginnt, und beendet sich mit 1.

Wenn die Fehlerzeile mit "formatter" was not uninstalled: fortfährt, konnte Claude Code nicht bestätigen, dass die Einstellungen des Bereichs das Plugin nicht mehr aktivieren, sodass das Plugin mit allem, was es gespeichert hat, installiert bleibt. Mit --json trägt das Ergebnis failureCode: "settings_still_on". Diese Einstellungsprüfung erfordert Claude Code v2.1.282 oder später.

Was eine Deinstallation löscht und behält

Wenn Sie ein Plugin aus dem letzten Bereich deinstallieren, in dem es installiert ist, löscht Claude Code auch die gespeicherten Optionen und Geheimnisse des Plugins und sein Datenverzeichnis, ~/.claude/plugins/data/<id>/. Es gibt drei Ausnahmen:

  • Mit --keep-data bleibt das Datenverzeichnis
  • Wenn ein anderes installiertes Plugin denselben Ordner verwendet, z. B. eines, dessen ID sich von diesem nur in der Groß-/Kleinschreibung unterscheidet, bleibt das Datenverzeichnis
  • Wenn Claude Code die Liste der installierten Plugins nach dem Entfernen des Plugins aus diesem Bereich nicht zurücklesen kann, bleiben die Optionen, Geheimnisse und das Datenverzeichnis alle erhalten, da das Plugin möglicherweise noch in einem anderen Bereich installiert ist. Die Deinstallation ist trotzdem erfolgreich. Die Meldung listet auf, was geblieben ist und wie man es löscht, und mit --json trägt das Ergebnis savedKept: "install_records_unreadable"

Mit --json meldet keptData, ob das Verzeichnis geblieben ist, und /plugin zeigt · data preserved, wenn es das tat. Für ein Verzeichnis, das ohne --keep-data bleibt, erfordert diese Meldung Claude Code v2.1.281 oder später. Das Feld savedKept erfordert Claude Code v2.1.282 oder später.

plugin enable

Aktivieren Sie ein deaktiviertes Plugin. Für ein Plugin, das von claude.ai synchronisiert wird, übergeben Sie <name>@synced als Plugin.

claude plugin enable <plugin> [options]
Flag Beschreibung
-s, --scope <scope> Bereich zum Aktivieren: user, project oder local. Wird automatisch erkannt, wenn weggelassen
--json Drucken Sie das Ergebnis als ein JSON-Objekt in der letzten Zeile von stdout, im gleichen Format wie plugin install --json. Erfordert Claude Code v2.1.268 oder später

Ohne --scope prüft der Befehl Ihre Einstellungsdateien in der Reihenfolge lokal, Projekt, Benutzer, und verwendet den ersten Bereich, der das Plugin erwähnt.

Wenn Sie einen --scope übergeben, wo das Plugin nicht deklariert ist, schreibt der Befehl entweder eine Überschreibung oder schlägt fehl:

  • Ein Bereich, der Vorrang vor dem deklarierenden hat: Claude Code schreibt eine Überschreibung in dem Bereich, den Sie übergeben haben. Zum Beispiel deaktiviert claude plugin disable formatter --scope local ein projektaktiviertes Plugin nur für Sie
  • Jeder andere Bereich: der Befehl schlägt fehl mit Plugin "formatter" is installed at project scope, not user. Use --scope project or omit --scope to auto-detect.

Wenn das Plugin bereits im aufgelösten Bereich aktiviert ist, druckt der Befehl Plugin "formatter" is already enabled und beendet sich mit 1. Mit --json hat das Ergebnis "failureCode": "already_in_goal_state" und "alreadyInGoalState": true, sodass ein Skript diesen Fall als Erfolg behandeln kann.

Wenn das Plugin Abhängigkeiten deklariert, aktiviert Claude Code diese auch. Der Befehl schlägt in diesen Fällen fehl:

  • Eine Abhängigkeit ist nicht installiert: enable schlägt fehl und druckt den claude plugin install-Befehl für jede fehlende Abhängigkeit
  • Eine Abhängigkeit wird durch die Plugin-Richtlinie Ihrer Organisation blockiert: enable schlägt fehl und nennt die blockierte Abhängigkeit
  • Eine Abhängigkeit ist auf false in einem Bereich mit höherem Vorrang als der Zielbereich gesetzt: enable schlägt fehl. Aktivieren Sie die Abhängigkeit in diesem Bereich, oder übergeben Sie --scope, um dort zu schreiben

Aktivieren Sie ein Plugin überall dort, wo es deklariert ist:

claude plugin enable formatter

Claude Code druckt Successfully enabled plugin: formatter (scope: project) und nennt den erkannten Bereich.

plugin disable

Deaktivieren Sie ein Plugin, ohne es zu deinstallieren. Für ein Plugin, das von claude.ai synchronisiert wird, übergeben Sie <name>@synced als Plugin.

claude plugin disable [plugin] [options]
Flag Beschreibung
-a, --all Deaktivieren Sie jedes aktivierte Plugin. Kann nicht mit einem Plugin-Namen oder --scope kombiniert werden
-s, --scope <scope> Bereich zum Deaktivieren: user, project oder local. Wird automatisch erkannt, wenn weggelassen
--json Drucken Sie das Ergebnis als ein JSON-Objekt in der letzten Zeile von stdout, im gleichen Format wie plugin install --json. Erfordert Claude Code v2.1.268 oder später

Ohne --scope wird der Bereich in der gleichen lokalen, Projekt-, Benutzer-Reihenfolge wie plugin enable automatisch erkannt.

Wenn Sie weder einen Plugin-Namen noch --all übergeben, druckt Claude Code Please specify a plugin name or use --all to disable all plugins und beendet sich mit 1. Das Deaktivieren eines Plugins, das bereits deaktiviert ist, druckt Plugin "formatter" is already disabled und beendet sich mit 1, wie plugin enable für ein bereits aktiviertes Plugin.

Der Befehl schlägt für ein Plugin fehl, das noch erforderlich ist:

  • Ein anderes aktiviertes Plugin hängt davon ab: der Befehl schlägt fehl und nennt die Abhängigen, die zuerst deaktiviert werden sollen
  • Ihre Organisation verlangt es als synchronisiertes Plugin: der Befehl schlägt fehl und speichert nichts

Deaktivieren Sie ein Plugin:

claude plugin disable formatter

Claude Code druckt Successfully disabled plugin: formatter (scope: project).

plugin update

Aktualisieren Sie ein Plugin auf die neueste Version, die sein Marktplatz anbietet. Die neue Version wird in Ihrer nächsten Sitzung geladen, oder nachdem Sie /reload-plugins in einer laufenden ausführen.

claude plugin update <plugin> [options]
Flag Beschreibung
-s, --scope <scope> Bereich zum Aktualisieren: user, project, local oder managed. Wird automatisch erkannt, wenn weggelassen
-y, --yes Akzeptieren Sie einen geänderten Installationsbefehl von einem Befehlsquellen-Plugin ohne die Eingabeaufforderung. Erforderlich, wenn stdin oder stdout keine TTY ist, es sei denn, Sie übergeben --accept-command. Erfordert Claude Code v2.1.229 oder später
--accept-command <sha256> Akzeptieren Sie den vom Marktplatz deklarierten Befehl, dessen sha256 ein vorheriger --json-Lauf in shownCommand gemeldet hat, anstelle von -y. Kann nicht mit -y kombiniert werden. Erfordert Claude Code v2.1.271 oder später
--json Drucken Sie das Ergebnis als ein JSON-Objekt in der letzten Zeile von stdout, im gleichen Format wie plugin install --json. Erfordert Claude Code v2.1.268 oder später

Wenn Sie --scope weglassen, aktualisiert der Befehl das Plugin im spezifischsten Bereich, in dem es für Ihr aktuelles Projekt installiert ist, und prüft lokal, Projekt, Benutzer, dann verwaltet.

Vor v2.1.281 verwendete der Befehl user, wenn Sie --scope wegließen, sodass das Aktualisieren eines Plugins, das nur im Projekt- oder lokalen Bereich installiert ist, mit Plugin "<name>" is not installed at scope user fehlschlug. Übergeben Sie auf diesen Versionen --scope.

managed ist der einzige Bereich, den Sie aktualisieren, aber nicht installieren können. Für von Administratoren installierte Plugins siehe Plugins für Ihre Organisation verwalten.

Aktualisieren Sie ein Plugin:

claude plugin update formatter@my-marketplace

Claude Code druckt Checking for updates for plugin "formatter@my-marketplace"…, dann das Ergebnis. Wenn nichts neuer ist, druckt es formatter is already at the latest version (1.0.0). und beendet sich mit 0.

Sie können einen bloßen Plugin-Namen übergeben, den der Befehl gegen Ihre installierten Plugins abgleicht. Wenn installierte Plugins von verschiedenen Marktplätzen denselben Namen teilen, weigert sich der Befehl zu aktualisieren und listet die qualifizierten plugin-name@marketplace-name-Befehle auf, die stattdessen ausgeführt werden sollen. Das Aktualisieren nach bloßem Namen erfordert Claude Code v2.1.246 oder später.

plugin list

Listet installierte Plugins mit ihrer Version, ihrem Bereich und ihrem Status auf.

claude plugin list [options]
Flag Beschreibung
--json Drucken Sie die Liste als JSON
--available Listet auch Plugins auf, die Ihre Marktplätze anbieten, die Sie nicht installiert haben. Hat keine Auswirkung ohne --json

Claude Code gruppiert die benutzerfreundliche Ausgabe nach dem Laden jedes Plugins:

  • Installed plugins:: Plugins, die Sie von einem Marktplatz installiert haben
  • Session-only plugins (--plugin-dir / --plugin-url):: Plugins, die von diesen Flags im gleichen Befehl geladen werden, wie in claude --plugin-dir ./my-plugin plugin list
  • Skills-directory plugins (.claude/skills/*):: Plugins, die Claude Code in einem Skills-Verzeichnis gefunden hat
  • Synced from claude.ai: Plugins, die von Ihrem claude.ai-Konto synchronisiert werden

Wenn nichts in einer Gruppe vorhanden ist, druckt Claude Code No plugins installed. Use `claude plugin install` to install a plugin.

JSON-Ausgabe

Mit --json druckt Claude Code ein Array mit einem Objekt pro Installation. Jedes Objekt trägt die unten aufgelisteten Felder. id, version, scope, enabled und installPath sind immer vorhanden, und die anderen erscheinen nur, wenn sie zutreffen.

Feld Typ Beschreibung
id string name@marketplace für Installationen, name@inline für Sitzungs-Plugins, name@skills-dir für Skills-Verzeichnis-Plugins, name@synced für Plugins, die von claude.ai synchronisiert werden
version string Für eine Marktplatz-Installation die Version, die Claude Code berechnet hat bei der Installation. Für ein Sitzungs-, Skills-Verzeichnis- oder synchronisiertes Plugin das version des Manifests, oder unknown, wenn es keines deklariert
scope string user, project, local oder managed für Installationen; user oder project für Skills-Verzeichnis-Plugins; session für Sitzungs-Plugins; synced für Plugins, die von claude.ai synchronisiert werden
enabled boolean Ob das Plugin in Ihren zusammengeführten Einstellungen aktiviert ist
installPath string Verzeichnis, aus dem das Plugin geladen wird
installedAt string ISO-Zeitstempel der Installation. Nur Marktplatz-Installationen
lastUpdated string ISO-Zeitstempel der letzten Aktualisierung. Nur Marktplatz-Installationen
projectPath string Projekt, zu dem die Installation gehört. Nur project- und local-Bereich
mcpServers object Die MCP-Server-Definitionen des Plugins, wenn ein Marktplatz-installiertes Plugin welche hat
errors array of strings Ladefehler, wenn das Plugin nicht geladen werden konnte
notes array of strings Authoring-Warnungen für ein Plugin, das geladen wurde und funktioniert
errorDetails array of objects Ein Objekt pro errors-Eintrag, das seinen diagnostischen type und die Namen angibt, auf die es sich bezieht, wie das Plugin, der Marktplatz, der Server oder die Datei. Erfordert Claude Code v2.1.268 oder später
noteDetails array of objects Die gleichen Detail-Objekte für jeden notes-Eintrag. Erfordert Claude Code v2.1.268 oder später

Mit --json --available druckt Claude Code ein Objekt statt eines Arrays. Sein installed-Feld hält das Array von installierten-Plugin-Objekten, und sein available-Feld hält ein Objekt pro nicht installiertem Marktplatz-Plugin mit den unten aufgelisteten Feldern.

Feld Typ Beschreibung
pluginId string name@marketplace
name string Der Name des Plugins im Marktplatz
marketplaceName string Der Marktplatz, der es anbietet
source string or object Der source des Marktplatz-Eintrags: ein string für einen relativen Pfad, ein Objekt sonst
description string Die Beschreibung des Eintrags, wenn er eine hat
version string Die Version des Eintrags, wenn er eine deklariert
installCount number Installationsanzahl, wenn Claude Code eine für das Plugin hat

plugin details

Zeigen Sie das Komponenten-Inventar eines Plugins und seine projizierte Token-Kosten an.

Das Plugin muss geladen sein: installiert, in einem Skills-Verzeichnis gefunden, oder mit --plugin-dir oder --plugin-url im gleichen Befehl übergeben. Der <name> ist ein Plugin-name oder name@marketplace.

claude plugin details <name>

Der Befehl nimmt keine Flags außer --help.

Zeigen Sie, was ein installiertes Plugin beiträgt:

claude plugin details formatter

Claude Code druckt den Namen, die Version, die Beschreibung und die Quelle des Plugins, dann diese Abschnitte:

  • Component inventory: die Skills, Agents, Hooks, MCP-Server und LSP-Server des Plugins
  • Projected token cost: die immer aktiven Token, die das Plugin zu jeder Sitzung hinzufügt
  • Per-component (rounded): Schätzungen für immer aktiv und bei Aufruf für jeden Skill, Agent und Befehl. Weggelassen, wenn das Plugin keine hat

Für die Bedeutung der beiden Kostenzahlen siehe Plugin-Kosten und -Nutzung messen.

Für ein Plugin, das nicht geladen ist, druckt Claude Code Plugin "formatter" not found. Run `claude plugin list` to see installed plugins, or pass --plugin-dir <path> to load one from disk. und beendet sich mit 1.

plugin prune

Entfernen Sie automatisch installierte Abhängigkeiten, die kein installiertes Plugin mehr benötigt. Der Befehl entfernt niemals ein Plugin, das Sie selbst installiert haben. autoremove ist ein Alias für prune.

claude plugin prune [options]
Flag Beschreibung
-s, --scope <scope> Prune im Bereich: user, project oder local. Standardwert ist user
--dry-run Listet auf, was entfernt würde, ohne es zu entfernen
-y, --yes Überspringen Sie die Bestätigungsaufforderung. Erforderlich, wenn stdin oder stdout keine TTY ist

Zeigen Sie eine Vorschau, was ein Prune entfernen würde:

claude plugin prune --dry-run

Claude Code listet die verwaisten Abhängigkeiten auf und endet mit (dry run — nothing removed). Wenn es nichts zu entfernen gibt, druckt es eine Zeile, die mit Nothing to prune beginnt.

Ohne --dry-run entfernt der Befehl die verwaisten Abhängigkeiten nur, nachdem Sie an der Eingabeaufforderung bestätigt oder -y übergeben haben.

Der Exit-Code ist 0, egal wie Sie an der Eingabeaufforderung antworten.

Was prune tut, hängt davon ab, ob ein Terminal angehängt ist und ob Sie -y übergeben:

Terminal und Flags Was passiert
Interaktives Terminal, kein -y Listet die verwaisten Abhängigkeiten auf und fragt Remove? [y/N]
Jedes Terminal, -y Entfernt sie und druckt Removed N auto-installed plugins: <names>
Non-TTY stdin oder stdout, kein -y Druckt die Liste und Not a TTY — run `claude plugin prune -y` to remove., entfernt nichts

plugin eval

Führen Sie die eval-Fälle eines Plugins aus und melden Sie bewertete Ergebnisse. Erfordert Claude Code v2.1.269 oder später.

Jeder Fall ist eine Eingabeaufforderung plus Bewerter. Claude Code führt ihn mehrmals in einer isolierten Sitzung mit nur dem Ziel-Plugin geladen aus, und standardmäßig auch ohne das Plugin, sodass der Bericht den Unterschied zeigt.

Siehe Plugins mit Evals testen für das Fallformat, Bewerter, Ergebnisse und CI-Nutzung.

claude plugin eval [target] [options]

Das optionale target standardisiert auf das aktuelle Verzeichnis und nimmt jede dieser Formen:

  • Ein Plugin-Verzeichnis
  • Eine einzelne prompt.md oder case.yaml-Datei
  • Ein installiertes Plugin als name oder name@marketplace
  • name@skills-dir

Setzen Sie das Ziel vor --tag, --allow-tools und --json. Jede dieser Optionen nimmt die Wörter, die ihr folgen, als ihren Wert, sodass ein Ziel, das nach einer von ihnen geschrieben wird, als ein Tag, ein Tool-Name oder der JSON-Ausgabepfad statt als Ziel gelesen wird.

Diese Tabelle listet die Optionen auf, die die meisten Läufe verwenden. Führen Sie claude plugin eval --help für den vollständigen Satz aus, einschließlich --case, --tag, --output-dir, --report, --allow-real-servers, --keep-temp und --verbose.

Option Beschreibung Standard
--runs <n> Läufe pro Fall in jedem Arm Jedes Falls runs, sonst 3
-j, --concurrency <n> Agent-Sitzungen, die gleichzeitig ausgeführt werden, 1 bis 8. Sie teilen Ihr Ratenlimit 1
--model <model> Modell für den getesteten Agent Jedes Falls model, sonst ANTHROPIC_MODEL, wenn gesetzt, sonst Claude Codes Standard
--judge-model <model> Modell für llm- und baseline-Bewerter Ein kleines schnelles Modell
--ablation <mode> none oder with-without. Siehe Mit einem No-Plugin-Baseline vergleichen with-without, wenn ein Plugin aufgelöst wird, sonst none
--threshold <0..1> Beenden Sie mit 1, wenn ein Fall unter diesem Wert bewertet wird 1.0
--max-cost-usd <usd> Stoppen Sie vor dem nächsten Lauf, sobald die Ausgaben diesen Wert erreichen, beenden Sie mit 2, und melden Sie Teilergebnisse Kein Limit
--allow-tools <tools...> Gewähren Sie Tools über die schreibgeschützte Menge hinaus, wie Bash, Write, Edit oder "mcp__plugin_<plugin>_<server>__*". Siehe Tools gewähren
--scaffold Führen Sie das scaffold_script jedes Falls aus Aus
--trust-plugin Überspringen Sie die Vertrauensaufforderung beim ersten Lauf, für CI. Siehe Was ein Lauf zugreifen kann Aus
--mocks <mode> record oder off. Siehe Mock MCP-Server record
--eval-dir <dir> Verzeichnis unter dem Plugin, das die Fälle hält Das experimental.evals des Manifests, sonst evals
--json [path] Drucken Sie das Ergebnisdokument auf stdout, oder schreiben Sie es in einen .json-Pfad
--no-publish Halten Sie den HTML-Bericht lokal

Der Exit-Code meldet, wie der Lauf endete. Um darauf in einer Pipeline zu reagieren, siehe Evals in CI ausführen.

Exit-Code Bedeutung
0 Jeder Fall erfüllt den Schwellenwert
1 Ein fehlgeschlagener Fall, ein Ladefehler oder ein nicht vertrauenswürdiges Plugin-Verzeichnis
2 Ein Teillauf
130 Unterbrochen
143 Beendet

plugin eval init

Erstellen Sie eine Eval-Suite für das Plugin im aktuellen Verzeichnis. Erfordert Claude Code v2.1.269 oder später. Siehe Erstellen Sie Ihre erste Eval-Suite.

claude plugin eval init [name] [options]

In einem Terminal öffnet der Befehl eine interaktive Claude Code-Sitzung für ein Authoring-Interview. Im Interview führt Claude Folgendes durch:

  1. Liest das Plugin
  2. Fragt Sie, was es gut tun sollte
  3. Schlägt Fälle und Bewerter vor
  4. Schreibt die Fallsdateien
  5. Führt die Fälle aus und überprüft die Noten mit Ihnen, um zu überprüfen, dass die Bewerter so bewerten, wie Sie es würden

Mit --bare oder ohne Terminal schreibt der Befehl stattdessen eine leere Einzelfall-Vorlage. Wenn Claude den Befehl von innerhalb einer Claude Code-Sitzung ausführt, druckt der Befehl die Interview-Anweisungen für diese Sitzung, um sie zu befolgen, statt eine Vorlage zu schreiben.

Der optionale name ist ein Fallname. Er ist erforderlich mit --bare oder ohne Terminal, da der Befehl die leere Vorlage für diesen Fall schreibt. Das Interview benötigt keinen.

Der Befehl akzeptiert diese Optionen:

Option Beschreibung Standard
--bare Schreiben Sie ein leeres prompt.md und graders/criteria.md für <name> statt das Interview auszuführen
-i, --interactive Erfordern Sie das Interview. Schlägt ohne Terminal fehl, statt eine Vorlage zu schreiben
--eval-dir <dir> Verzeichnis unter dem aktuellen Verzeichnis, um Fälle hineinzuschreiben Das experimental.evals des Manifests, sonst evals

plugin tag

Erstellen Sie ein kommentiertes git-Tag mit dem Namen <name>--v<version> für eine Plugin-Veröffentlichung. Vor dem Tagging prüft der Befehl, dass das plugin.json des Plugins und jeder Marktplatz-Eintrag, der es auflistet, sich auf die Version einigen.

Für wann ein Release getaggt werden soll, siehe Plugin veröffentlichen.

claude plugin tag [path] [options]

Der [path] ist das Plugin-Verzeichnis, standardisiert auf das aktuelle Verzeichnis. Der Befehl findet den Marktplatz-Eintrag, indem er von diesem Verzeichnis bis zu einem .claude-plugin/marketplace.json, das das Plugin auflistet, hinaufgeht.

Flag Beschreibung
--push Pushen Sie das Tag zu --remote nach dem Erstellen
--dry-run Drucken Sie, was getaggt würde, ohne das Tag zu erstellen
-f, --force Überspringen Sie die Checks für schmutzigen Arbeitsbaum und bereits vorhandenes Tag
-m, --message <msg> Tag-Anmerkungsmeldung. %s steht für die Version. Standardwert ist <name> <version>
--remote <name> Remote zum Pushen mit --push. Standardwert ist origin

Zeigen Sie eine Vorschau des Tags für ein Plugin in einem Marktplatz-Checkout:

claude plugin tag plugins/formatter --dry-run

Claude Code druckt den Plan:

  • Der Plugin-Name
  • Die Version und aus welcher Datei sie kommt
  • Der passende Marktplatz-Eintrag, wenn es einen gibt
  • Der Tag-Name
  • Die git tag- und git push-Befehle, die es ausführen würde

Ohne --dry-run druckt Claude Code Created tag formatter--v1.0.0 und entweder Pushed to origin oder den Push-Befehl, den Sie selbst ausführen müssen. Wenn der Push fehlschlägt, wird das Tag immer noch lokal erstellt und der Befehl beendet sich mit einem Fehler.

Der Befehl beendet sich mit 1 und druckt den Grund, wenn er nicht sicher tagging kann. Häufige Gründe sind:

  • Keine version in plugin.json oder dem Marktplatz-Eintrag
  • Das Tag existiert bereits
  • Der Arbeitsbaum ist schmutzig

plugin validate

Validieren Sie ein Plugin-Manifest, ein Marktplatz-Manifest oder die Skills, Agents und Befehle in einem Verzeichnis, und beenden Sie mit einem Code, auf den ein CI-Job reagieren kann. Für den Erstellen-, Test- und Bearbeitungs-Workflow siehe Plugin erstellen. Für das, was der Validator in jedem Manifest prüft, siehe die Plugin-Manifest-Referenz und die Marktplatz-Referenz.

claude plugin validate <path> [options]
Flag Beschreibung
--strict Behandeln Sie Warnungen als Fehler, sodass unerkannte Felder und fehlende Metadaten, die die Laufzeit toleriert, den Lauf fehlschlagen lassen. Erfordert Claude Code v2.1.145 oder später
--json Geben Sie den Validierungsbericht als ein JSON-Objekt mit den gleichen Exit-Codes aus. Erfordert Claude Code v2.1.259 oder später

Validieren Sie ein Plugin vor dem Commit:

claude plugin validate ./my-plugin --strict

Validieren Sie ein Verzeichnis

Der <path> ist eine Manifest-Datei oder ein Verzeichnis. Gegeben ein Verzeichnis, wählt Claude Code, was validiert werden soll, nach dem, was es dort findet:

  • .claude-plugin/marketplace.json, wenn es existiert
  • Sonst .claude-plugin/plugin.json
  • Sonst die Komponentendateien, gewählt nach dem Namen des Verzeichnisses. Das Validieren von Komponentendateien ohne Manifest erfordert Claude Code v2.1.233 oder später:
    • Ein Verzeichnis mit dem Namen skills, agents oder commands: die Dateien darin
    • Ein Verzeichnis mit dem Namen .claude: die skills-, agents- und commands-Verzeichnisse darin
    • Jedes andere Verzeichnis: diese drei Verzeichnisse unter seinem .claude

Claude Code folgt nicht Symlinks innerhalb des Verzeichnisses, das Sie benennen. Was es tut, hängt davon ab, wo der Link ist:

  • Ein verknüpftes skills-, agents- oder commands-Verzeichnis unter dem Plugin- oder .claude-Root: Claude Code warnt, dass nichts darin gelesen wurde.
  • 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.
  • 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 prüft nichts darin. Benennen Sie stattdessen das echte Verzeichnis.

Ein paar Dateien werden nicht von einem Validierungslauf gelesen:

  • Eine SKILL.md am Plugin-Root: wenn Sie claude plugin validate gegen ein Plugin-Verzeichnis ausführen, prüft Claude Code keine SKILL.md am Plugin-Root
  • Eine CLAUDE.md am Plugin-Root: in einem Plugin-Lauf warnt Claude Code auch vor einer CLAUDE.md am Plugin-Root
  • Plugin-Dateien in einem Marktplatz-Lauf: von einem Marktplatz-Verzeichnis öffnet Claude Code nicht die Skill-, Agent-, Befehls- oder Hook-Dateien der Plugins. Um Fehler in diesen Dateien zu finden, validieren Sie jedes Plugin-Verzeichnis

Ausgabe und Exit-Codes

Claude Code druckt die Datei, die es validiert hat, alle Fehler und Warnungen mit ihren Pfaden, und eine Urteilszeile. Der Exit-Code folgt dem Urteil:

Exit-Code Urteilszeile Bedeutung
0 Validation passed oder Validation passed with warnings Das Manifest wird geladen. Mit --strict auch keine Warnungen
1 Validation failed oder Validation failed (--strict treats warnings as errors) Ein Fehler, oder eine Warnung unter --strict
2 Unexpected error during validation: <reason> Der Validator selbst ist fehlgeschlagen, wie bei einem unlesbaren Pfad

Mit --json schreibt Claude Code den Bericht auf stdout als ein JSON-Objekt mit diesen Top-Level-Feldern:

  • success: das gleiche Urteil, das der Exit-Code gibt
  • strict: ob der Lauf Warnungen als Fehler behandelt hat
  • target: der aufgelöste Pfad, den Claude Code validiert hat
  • manifest: das eigene Ergebnis des Manifests, oder null für einen Lauf ohne Manifest
  • contents: Pro-Datei-Ergebnisse, jede benennend ihre file und tragend errors-, warnings- und notes-Arrays

Bei Exit 2 schreibt der Befehl nichts auf stdout. Die Fehlermeldung geht auf stderr.

claude plugin marketplace-Befehle

Führen Sie claude plugin marketplace <subcommand> aus Ihrer Shell aus, um die Marktplätze, von denen Sie Plugins installieren, hinzuzufügen, aufzulisten, zu aktualisieren und zu entfernen.

  • Exit-Codes: diese Unterbefehle folgen der Exit-Code-Konvention der Plugin-Befehle
  • Bereiche: ihr --scope-Flag hat keine -s-Kurzform

Für das, was ein Marktplatz ist und wie Claude Code ihn zwischenspeichert, siehe Plugin-Ladeverzeichnis.

plugin marketplace add

Fügen Sie einen Marktplatz von einem GitHub-Repository, einer git-URL, einem gehosteten marketplace.json oder einem lokalen Pfad hinzu, und deklarieren Sie ihn in einer Einstellungsdatei.

Nachdem Sie ihn hinzugefügt haben, installiert Claude Code alle Abhängigkeiten, die Ihre installierten Plugins vermisst haben.

claude plugin marketplace add <source> [options]
Flag Beschreibung
--scope <scope> Einstellungsdatei zum Deklarieren des Marktplatzes: user, project oder local. Standardwert ist user
--sparse <paths...> Begrenzen Sie den git-Checkout auf diese Verzeichnisse, für Monorepos. Nur github- und git-Quellen
--claudeai Lesen Sie das Argument als den Namen eines auf claude.ai gehosteten Marktplatzes statt einer Quelle. Erfordert Claude Code v2.1.273 oder später

<source> nimmt jede der Formen in der Tabelle unten, und seine Form entscheidet den Quellentyp und wie Claude Code den Marktplatz abruft. Für das resultierende Quellobjekt siehe die Marktplatz-Referenz.

Sie tippen Quellentyp Wie Claude Code ihn abruft
owner/repo, owner/repo#ref oder owner/repo@ref github Klont das GitHub-Repository, angeheftet an ref, wenn gegeben. Besitzer und Repo müssen GitHub-Benennungsregeln folgen
user@host:path[.git][#ref] git Klont über SSH
https://example.com/repo.git[#ref] oder eine URL mit /_git/ git Klont über HTTPS, einschließlich Azure DevOps-URLs
https://github.com/owner/repo oder https://gitlab.com/namespace/project git Klont über HTTPS nach dem Anhängen von .git
Jede andere http://- oder https://-URL, einschließlich eines selbstgehosteten git-Hosts ohne .git url Ruft die URL als marketplace.json ab. Um stattdessen ein Repository dort zu klonen, hängen Sie .git an
./path, ../path, /path oder ~/path zu einem Verzeichnis directory Liest das Verzeichnis an Ort und Stelle. Unter Windows funktionieren auch .\, ..\ und C:\-Formen
Die gleichen Pfadformen, zu einer .json-Datei file Liest die Datei an Ort und Stelle

Für einen Host, dessen Klon-URLs das .git-Suffix nicht tragen, wie AWS CodeCommit, fügen Sie den Marktplatz stattdessen als git-Eintrag in extraKnownMarketplaces hinzu. Claude Code klont einen git-Eintrag, ob seine URL mit .git endet oder nicht.

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

Fügen Sie einen Marktplatz hinzu und teilen Sie ihn mit dem Projekt:

claude plugin marketplace add your-org/your-marketplace --scope project

Claude Code druckt Successfully added marketplace: your-marketplace (declared in project settings), wobei der name aus dem eigenen Manifest des Marktplatzes verwendet wird. Ein wiederholtes Hinzufügen oder eine ungültige Quelle druckt stattdessen eines dieser Ergebnisse:

  • Marktplatz bereits auf der Festplatte: die Ausgabe ist Marketplace 'your-marketplace' already on disk — declared in project settings und der Exit-Code ist 0
  • Unerkannte Quelle: die Ausgabe ist Invalid marketplace source format. Try: owner/repo, https://..., or ./path und der Exit-Code ist 1
  • Bloßer Host wie gitlab.example.com/team/plugins: das Hinzufügen schlägt als ungültige owner/repo-Kurzform fehl, und die Meldung sagt Ihnen, https:// hinzuzufügen oder einen lokalen Pfad zu verwenden

Fügen Sie einen auf claude.ai gehosteten Marktplatz nach dem Namen hinzu, der im From claude.ai:-Abschnitt von claude plugin marketplace list gedruckt wird:

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

Mit --claudeai weigert sich der Befehl, --scope und --sparse zu akzeptieren. Der Marktplatz wird für Ihr Konto gehostet, nicht in einer Einstellungsdatei deklariert, sodass Sie ihn nicht durch das .claude/settings.json eines Projekts teilen können.

plugin marketplace list

Listet jeden Marktplatz auf, den Sie hinzugefügt haben, mit seiner Quelle.

claude plugin marketplace list [options]
Flag Beschreibung
--json Drucken Sie die Liste als JSON

Claude Code druckt Configured marketplaces: und eine Source:-Zeile pro Marktplatz, oder No marketplaces configured.

Mit --json druckt Claude Code ein Array mit einem Objekt pro Marktplatz, tragend die unten aufgelisteten Felder. Jedes Feld ist ein string.

Feld Beschreibung
name Der Name des Marktplatzes
source github, git, url, directory, file oder claudeai
repo owner/repo. Nur github-Quellen
url Die Klon- oder Abruf-URL. Nur git- und url-Quellen
path Der lokale Pfad. Nur directory- und file-Quellen
ref Der angeheftete Branch oder Tag. Nur github- und git-Quellen, wenn angeheftet
installLocation Wo Claude Code den Marktplatz zwischengespeichert hat

Ein hinzugefügter claude.ai-Marktplatz hat keinen lokalen Klon, sodass sein Eintrag seine claude.ai-Identifikatoren, marketplaceId und organizationUuid, anstelle von installLocation trägt. Er trägt auch scope, wenn einer aufgezeichnet ist, und status.

Wenn Ihre Terminal-Sitzungen Plugins von Ihrem claude.ai-Konto synchronisieren, endet die Text-Auflistung mit einem From claude.ai:-Abschnitt. Dieser Abschnitt nennt die Marktplätze, die claude.ai für Ihr Konto auflistet, die Sie nicht hinzugefügt haben, sowohl git-basiert als auch gehostet. Er erfordert Claude Code v2.1.273 oder später.

Um einen Marktplatz aus diesem Abschnitt hinzuzufügen, siehe Marktplatz von claude.ai hinzufügen.

Die --json-Ausgabe deckt nur konfigurierte Marktplätze ab und lässt den Abschnitt weg.

plugin marketplace remove

Entfernen Sie die Deklaration eines Marktplatzes aus Ihren Einstellungen. rm ist ein Alias für remove.

claude plugin marketplace remove <name> [options]

Der <name> ist der Marktplatz-Name, den plugin marketplace list zeigt, nicht die Quelle, die Sie an add übergeben haben.

Flag Beschreibung
--scope <scope> Entfernen Sie die Deklaration aus einem Einstellungsbereich: user, project oder local. Ohne ihn entfernt Claude Code die Deklaration aus jedem Bereich

Entfernen Sie einen Marktplatz aus jedem Bereich:

claude plugin marketplace remove your-marketplace

Claude Code druckt Successfully removed marketplace: your-marketplace, fügt (from project settings) hinzu, wenn Sie ihn scoped haben. Wenn Sie einen Bereich scopen, der den Marktplatz nicht deklariert, schlägt der Befehl fehl mit Marketplace 'your-marketplace' is not declared in project settings. Omit --scope to remove it from all scopes.

plugin marketplace update

Aktualisieren Sie einen Marktplatz oder jeden Marktplatz von seiner Quelle, um neue Plugins und Versionen 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.

claude plugin marketplace update [name]

Der Befehl nimmt keine Flags außer --help.

Aktualisieren Sie einen Marktplatz:

claude plugin marketplace update your-marketplace

Claude Code druckt Successfully updated marketplace: your-marketplace. Wenn Sie den Namen weglassen, druckt es eine Anzahl wie Successfully updated 2 marketplaces. Ohne hinzugefügte Marktplätze druckt es No marketplaces configured und beendet sich mit 0.

/plugin in einer Sitzung

Innerhalb einer interaktiven Sitzung öffnet /plugin das Plugin-Panel. Jeder Unterbefehl öffnet das Panel auf einem Tab, führt eine Aktion dort aus oder druckt ein Ergebnis inline. /plugins und /marketplace sind Aliase für /plugin.

Sie können diese Befehle nur in einer interaktiven Terminal-Sitzung ausführen. In einem nicht-interaktiven Lauf wie claude -p antwortet Claude Code, dass /plugin in dieser Umgebung nicht verfügbar ist.

Für welche Oberflächen /plugin haben, wie man ohne es installiert, und was jeder Panel-Tab zeigt, siehe Plugins installieren und verwalten.

Ein <plugin> ist ein Plugin-name oder name@marketplace.

Die Tabelle unten listet jede Sitzungsform auf. Die Shell-Unterbefehle init, update, details, prune, eval und eval init haben keine Sitzungsform.

Befehl Aliase Was er tut
/plugin Öffnet das Panel auf dem Discover-Tab. Jedes unerkannte erste Wort nach /plugin tut das gleiche
/plugin help /plugin --help, /plugin -h Zeigt die Nutzungsliste der /plugin-Unterbefehle
/plugin list [--enabled|--disabled] ls Druckt Ihre Marktplatz-installierten Plugins inline, mit Version, Bereich und Status. Ein Filter-Flag zeigt nur diesen Status. Ein Plugin, dessen Aktivierungsstatus noch nicht angewendet wurde, ist mit — run /reload-plugins to apply gekennzeichnet. Erfordert Claude Code v2.1.163 oder später
/plugin install i Öffnet den Discover-Tab
/plugin install <plugin> i Öffnet die Details des Plugins im Discover-Tab. Mit name@marketplace öffnet sie in der Liste dieses Marktplatzes
/plugin install <plugin> --marketplace <source> i Fügt den Marktplatz unter <source> hinzu, wenn Sie ihn noch nicht hinzugefügt haben, und fragt Sie zuerst zur Bestätigung auf, dann öffnet die Details des Plugins. Siehe Marktplatz hinzufügen und in einem Befehl installieren. Erfordert Claude Code v2.1.275 oder später
/plugin manage Öffnet den Installed-Tab
/plugin stats Öffnet den Stats-Tab, in Sitzungen, wo /skill-doctor verfügbar ist. Überall sonst öffnet es das Panel auf dem Discover-Tab
/plugin enable <plugin> Öffnet den Installed-Tab beim Plugin und aktiviert es
/plugin disable <plugin> Öffnet den Installed-Tab beim Plugin und deaktiviert es
/plugin uninstall <plugin> Öffnet den Installed-Tab beim Plugin und deinstalliert es
/plugin configure <plugin> config Öffnet den userConfig-Dialog des Plugins, oder meldet, dass das Plugin keinen deklariert. Erfordert Claude Code v2.1.147 oder später
/plugin validate <path> Druckt den gleichen Bericht wie claude plugin validate, inline
/plugin tag [path] [--push] [--dry-run] [--force] Erstellt das Release-Tag wie claude plugin tag. Akzeptiert --push, --dry-run und --force oder -f; mit jedem anderen Flag oder einem zusätzlichen Argument druckt Claude Code stattdessen die Nutzung
/plugin marketplace market Tut nichts Sichtbares. Übergeben Sie add, list, update oder remove
/plugin marketplace add [source] market add Mit einer Quelle fügt sie sie hinzu und meldet das Ergebnis. Ohne eine öffnet sie die Add marketplace-Eingabe
/plugin marketplace list market list Druckt Ihre Marktplatz-Namen inline
/plugin marketplace update [name] market update Öffnet den Marketplaces-Tab. Mit einem Namen aktualisiert sie diesen Marktplatz dort
/plugin marketplace remove [name] market remove, market rm, marketplace rm Öffnet den Marketplaces-Tab. Mit einem Namen entfernt sie diesen Marktplatz dort

Wenn Sie ein Plugin benennen, das nicht im aktuellen Projekt installiert ist, in /plugin enable, disable, uninstall oder configure, druckt Claude Code stattdessen Plugin "<plugin>" is not installed in this project.

/reload-plugins

Wenden Sie ausstehende Plugin-Änderungen auf die laufende Sitzung an, ohne sie neu zu starten. Ausstehende Änderungen sind Plugins, die Sie seit dem Start der Sitzung installiert, aktualisiert, aktiviert, deaktiviert oder auf der Festplatte bearbeitet haben.

Wenn Sie das /plugin-Panel mit ausstehenden Änderungen schließen, die Sie darin vorgenommen haben, führt Claude Code /reload-plugins für Sie aus. Führen Sie es selbst nach Plugin-Änderungen aus, die außerhalb des Panels stattfinden, wie ein claude plugin-Befehl, den Sie in einem anderen Terminal ausgeführt haben.

/reload-plugins [--force]
Flag Beschreibung
--force Wenden Sie das Neuladen an, auch wenn es den Prompt-Cache ungültig machen würde. force ohne Bindestriche funktioniert auch

Neuladen-Zusammenfassung

Claude Code lädt jedes aktive Plugin neu und druckt eine Zusammenfassungszeile, Reloaded: N plugins · N skills · N agents · N hooks · N plugin MCP servers · N plugin LSP servers, wobei die Plugin-MCP-Server-Anzahl in einer Sitzung ohne interaktives Terminal weggelassen wird. Wenn ein Plugin fehlgeschlagen ist, fügt die Zusammenfassung N errors during load. Run /plugin for details. hinzu.

Die Skills-Anzahl deckt jeden Skill ab, den ein Plugin bereitstellt, sowohl seine commands/-Einträge als auch seine SKILL.md-Skills. Die Agents-Anzahl ist die Anzahl der in der Sitzung geladenen Agents, einschließlich derjenigen, die nicht von Plugins stammen.

Wenn die Abhängigkeiten eines neu geladenen Plugins fehlen, installiert Claude Code sie, lädt erneut und hängt (+ N dependencies: <names>) resolved an die Zusammenfassung an.

Neuladungen, die MCP-Tools ändern

Wenn das Neuladen einen Plugin-MCP-Server oder das LSP-Tool hinzufügen oder entfernen würde, und diese Änderung würde den Prompt-Cache ungültig machen, wendet Claude Code das Neuladen nicht an. Es druckt eine Zeile wie This reload changes MCP tools (<server>) — your next message will re-read the whole conversation instead of using the cache. Run /reload-plugins --force to apply. Übergeben Sie --force, um es trotzdem anzuwenden.

Sitzungen ohne interaktives Terminal

/reload-plugins läuft auch in Sitzungen ohne interaktives Terminal, wie die Desktop-App, das Agent SDK und nicht-interaktiver Modus mit -p. Erfordert Claude Code v2.1.260 oder später.

In diesen Sitzungen läuft der Befehl nur, wenn Sie ihn selbst in die Sitzung eingeben, wie in der -p-Eingabeaufforderung oder dem Eingabefeld der Desktop-App. Wenn er auf andere Weise ankommt, wie durch Remote Control oder eine von Slack weitergeleitet Meldung, antwortet der Befehl /reload-plugins isn't available over a remote connection in this session. und lädt nichts neu.

Das Neuladen in diesen Sitzungen verbindet oder trennt Plugin-MCP-Server nicht. Diese Änderungen treten in Ihrer nächsten Sitzung in Kraft.

Flags, die ein Plugin für eine Sitzung laden

Zwei claude-Flags laden ein Plugin für eine Sitzung nur, ohne es zu installieren. Beide sind wiederholbar.

Plugin-Autoren verwenden sie, um ein Plugin vor der Veröffentlichung zu testen. Für den Laden-Bearbeiten-Neuladen-Workflow siehe Entwickeln ohne einen Marktplatz.

Flag Beschreibung Beispiel
--plugin-dir <path> Laden Sie ein Plugin aus einem Verzeichnis oder einem .zip-Archiv davon. Ein Ordner von Plugins lädt jeden Unterordner, der ein .claude-plugin/plugin.json hält. Jedes Flag nimmt einen Pfad claude --plugin-dir ./my-plugin --plugin-dir ./other.zip
--plugin-url <url> Rufen Sie ein Plugin .zip-Archiv von einer URL ab. Wiederholen Sie das Flag, oder übergeben Sie mehrere URLs durch Leerzeichen getrennt in einem angeführten Wert claude --plugin-url "https://example.com/a.zip https://example.com/b.zip"

Ein Plugin, das eines dieser Flags lädt, ist ein Sitzungs-Plugin. claude plugin list zeigt es als <name>@inline mit Bereich session, aber nur wenn das gleiche Flag dem Unterbefehl vorausgeht. Zum Beispiel führen Sie claude --plugin-dir ./my-plugin plugin list aus.

Wenn ein Sitzungs-Plugin einen Namen mit einem installierten Plugin teilt, lädt Claude Code die Sitzungs-Kopie für diese Sitzung und überspringt die installierte. Die installierte Kopie wird stattdessen geladen, wenn Sie die Sitzungs-Kopie mit claude plugin disable <name>@inline deaktiviert haben, oder wenn verwaltete Einstellungen diesen Plugin-Namen sperren. Für den Vorrang siehe Plugin-Ladeverzeichnis.

Ein Administrator kann beide Flags und Ordner, die in der CLAUDE_CODE_PLUGIN_DIRS-Variable benannt sind, mit der verwalteten disableSideloadFlags-Einstellung ablehnen. Claude Code druckt dann, dass das Flag durch die verwalteten Einstellungen Ihrer Organisation deaktiviert ist, und beendet sich mit 1 ohne zu starten.

Aus dem Agent SDK ist die plugins-Option das Äquivalent von --plugin-dir.

Nächste Schritte