Integrierte Schrägstrich-Befehle

BefehlZweck
/add-dirZusätzliche Arbeitsverzeichnisse hinzufügen
/agentsBenutzerdefinierte KI-Subagenten für spezialisierte Aufgaben verwalten
/bugFehler melden (sendet Konversation an Anthropic)
/clearKonversationsverlauf löschen
/compact [instructions]Konversation mit optionalen Fokusanweisungen komprimieren
/configEinstellungsschnittstelle öffnen (Registerkarte Konfiguration)
/costToken-Nutzungsstatistiken anzeigen (siehe Leitfaden zur Kostenverfolgung für abonnementspezifische Details)
/doctorÜberprüft die Integrität Ihrer Claude Code-Installation
/helpNutzungshilfe abrufen
/initProjekt mit CLAUDE.md-Leitfaden initialisieren
/loginAnthropic-Konten wechseln
/logoutVon Ihrem Anthropic-Konto abmelden
/mcpMCP-Serververbindungen und OAuth-Authentifizierung verwalten
/memoryCLAUDE.md-Speicherdateien bearbeiten
/modelKI-Modell auswählen oder ändern
/permissionsBerechtigungen anzeigen oder aktualisieren
/pr_commentsPull-Request-Kommentare anzeigen
/reviewCode-Review anfordern
/sandboxAktivieren Sie das Sandbox-Bash-Tool mit Dateisystem- und Netzwerkisolation für sicherere, autonomere Ausführung
/rewindKonversation und/oder Code zurückspulen
/statusEinstellungsschnittstelle öffnen (Registerkarte Status) mit Version, Modell, Konto und Konnektivität
/terminal-setupShift+Enter-Tastenkombination für Zeilenumbrüche installieren (nur iTerm2 und VSCode)
/usageNutzungslimits des Plans und Rate-Limit-Status anzeigen (nur Abonnementpläne)
/vimVim-Modus für abwechselnde Einfüge- und Befehlsmodi aktivieren

Benutzerdefinierte Schrägstrich-Befehle

Benutzerdefinierte Schrägstrich-Befehle ermöglichen es Ihnen, häufig verwendete Eingabeaufforderungen als Markdown-Dateien zu definieren, die Claude Code ausführen kann. Befehle sind nach Umfang (projektspezifisch oder persönlich) organisiert und unterstützen Namensräume durch Verzeichnisstrukturen.

Syntax

/<command-name> [arguments]

Parameter

ParameterBeschreibung
<command-name>Name abgeleitet vom Markdown-Dateinamen (ohne .md-Erweiterung)
[arguments]Optionale Argumente, die an den Befehl übergeben werden

Befehlstypen

Projektbefehle

Befehle, die in Ihrem Repository gespeichert und mit Ihrem Team geteilt werden. Wenn sie in /help aufgelistet werden, zeigen diese Befehle “(project)” nach ihrer Beschreibung. Speicherort: .claude/commands/ Im folgenden Beispiel erstellen wir den /optimize-Befehl:
# Projektbefehl erstellen
mkdir -p .claude/commands
echo "Analyze this code for performance issues and suggest optimizations:" > .claude/commands/optimize.md

Persönliche Befehle

Befehle, die in allen Ihren Projekten verfügbar sind. Wenn sie in /help aufgelistet werden, zeigen diese Befehle “(user)” nach ihrer Beschreibung. Speicherort: ~/.claude/commands/ Im folgenden Beispiel erstellen wir den /security-review-Befehl:
# Persönlichen Befehl erstellen
mkdir -p ~/.claude/commands
echo "Review this code for security vulnerabilities:" > ~/.claude/commands/security-review.md

Funktionen

Namensräume

Organisieren Sie Befehle in Unterverzeichnissen. Die Unterverzeichnisse werden zur Organisation verwendet und erscheinen in der Befehlsbeschreibung, beeinflussen aber nicht den Befehlsnamen selbst. Die Beschreibung zeigt, ob der Befehl aus dem Projektverzeichnis (.claude/commands) oder dem Benutzerverzeichnis (~/.claude/commands) stammt, zusammen mit dem Namen des Unterverzeichnisses. Konflikte zwischen Benutzer- und Projektebene-Befehlen werden nicht unterstützt. Ansonsten können mehrere Befehle mit demselben Basisdateinamen koexistieren. Beispielsweise erstellt eine Datei unter .claude/commands/frontend/component.md den Befehl /component mit einer Beschreibung, die “(project:frontend)” anzeigt. Unterdessen erstellt eine Datei unter ~/.claude/commands/component.md den Befehl /component mit einer Beschreibung, die “(user)” anzeigt.

Argumente

Übergeben Sie dynamische Werte an Befehle mit Argument-Platzhaltern:
Alle Argumente mit $ARGUMENTS
Der $ARGUMENTS-Platzhalter erfasst alle an den Befehl übergebenen Argumente:
# Befehlsdefinition
echo 'Fix issue #$ARGUMENTS following our coding standards' > .claude/commands/fix-issue.md

# Verwendung
> /fix-issue 123 high-priority
# $ARGUMENTS wird zu: "123 high-priority"
Einzelne Argumente mit $1, $2, usw.
Greifen Sie auf spezifische Argumente einzeln zu, indem Sie Positionsparameter verwenden (ähnlich wie in Shell-Skripten):
# Befehlsdefinition  
echo 'Review PR #$1 with priority $2 and assign to $3' > .claude/commands/review-pr.md

# Verwendung
> /review-pr 456 high alice
# $1 wird zu "456", $2 wird zu "high", $3 wird zu "alice"
Verwenden Sie Positionsargumente, wenn Sie:
  • Auf Argumente einzeln in verschiedenen Teilen Ihres Befehls zugreifen müssen
  • Standardwerte für fehlende Argumente bereitstellen möchten
  • Strukturiertere Befehle mit spezifischen Parameterrollen erstellen möchten

Bash-Befehlsausführung

Führen Sie Bash-Befehle vor der Ausführung des Schrägstrich-Befehls mit dem !-Präfix aus. Die Ausgabe wird in den Befehlskontext einbezogen. Sie müssen allowed-tools mit dem Bash-Tool einschließen, können aber die spezifischen Bash-Befehle auswählen, die Sie zulassen möchten. Zum Beispiel:
---
allowed-tools: Bash(git add:*), Bash(git status:*), Bash(git commit:*)
description: Create a git commit
---

## Context

- Current git status: !`git status`
- Current git diff (staged and unstaged changes): !`git diff HEAD`
- Current branch: !`git branch --show-current`
- Recent commits: !`git log --oneline -10`

## Your task

Based on the above changes, create a single git commit.

Dateireferenzen

Beziehen Sie Dateiinhalte in Befehle ein, indem Sie das @-Präfix verwenden, um Dateien zu referenzieren. Zum Beispiel:
# Reference a specific file

Review the implementation in @src/utils/helpers.js

# Reference multiple files

Compare @src/old-version.js with @src/new-version.js

Thinking-Modus

Schrägstrich-Befehle können erweitertes Denken auslösen, indem sie Schlüsselwörter für erweitertes Denken einschließen.

Frontmatter

Befehlsdateien unterstützen Frontmatter, das nützlich ist, um Metadaten über den Befehl anzugeben:
FrontmatterZweckStandard
allowed-toolsListe der Tools, die der Befehl verwenden kannErbt aus der Konversation
argument-hintDie für den Schrägstrich-Befehl erwarteten Argumente. Beispiel: argument-hint: add [tagId] | remove [tagId] | list. Dieser Hinweis wird dem Benutzer bei der Autovervollständigung des Schrägstrich-Befehls angezeigt.Keine
descriptionKurze Beschreibung des BefehlsVerwendet die erste Zeile aus der Eingabeaufforderung
modelSpezifische Modellzeichenfolge (siehe Modellübersicht)Erbt aus der Konversation
disable-model-invocationOb verhindert werden soll, dass das SlashCommand-Tool diesen Befehl aufruftfalse
Zum Beispiel:
---
allowed-tools: Bash(git add:*), Bash(git status:*), Bash(git commit:*)
argument-hint: [message]
description: Create a git commit
model: claude-3-5-haiku-20241022
---

Create a git commit with message: $ARGUMENTS
Beispiel mit Positionsargumenten:
---
argument-hint: [pr-number] [priority] [assignee]
description: Review pull request
---

Review PR #$1 with priority $2 and assign to $3.
Focus on security, performance, and code style.

Plugin-Befehle

Plugins können benutzerdefinierte Schrägstrich-Befehle bereitstellen, die sich nahtlos in Claude Code integrieren. Plugin-Befehle funktionieren genau wie benutzerdefinierte Befehle, werden aber über Plugin-Marktplätze verteilt.

Wie Plugin-Befehle funktionieren

Plugin-Befehle sind:
  • Mit Namensraum versehen: Befehle können das Format /plugin-name:command-name verwenden, um Konflikte zu vermeiden (Plugin-Präfix ist optional, es sei denn, es gibt Namenskollisionen)
  • Automatisch verfügbar: Sobald ein Plugin installiert und aktiviert ist, erscheinen seine Befehle in /help
  • Vollständig integriert: Unterstützen alle Befehlsfunktionen (Argumente, Frontmatter, Bash-Ausführung, Dateireferenzen)

Plugin-Befehlsstruktur

Speicherort: commands/-Verzeichnis im Plugin-Stammverzeichnis Dateiformat: Markdown-Dateien mit Frontmatter Grundlegende Befehlsstruktur:
---
description: Brief description of what the command does
---

# Command Name

Detailed instructions for Claude on how to execute this command.
Include specific guidance on parameters, expected outcomes, and any special considerations.
Erweiterte Befehlsfunktionen:
  • Argumente: Verwenden Sie Platzhalter wie {arg1} in Befehlsbeschreibungen
  • Unterverzeichnisse: Organisieren Sie Befehle in Unterverzeichnissen für Namensräume
  • Bash-Integration: Befehle können Shell-Skripte und Programme ausführen
  • Dateireferenzen: Befehle können Projektdateien referenzieren und ändern

Aufrufmuster

Direkter Befehl (wenn keine Konflikte)
/command-name
Mit Plugin-Präfix (wenn zur Disambiguierung erforderlich)
/plugin-name:command-name
Mit Argumenten (wenn der Befehl diese unterstützt)
/command-name arg1 arg2

MCP-Schrägstrich-Befehle

MCP-Server können Eingabeaufforderungen als Schrägstrich-Befehle verfügbar machen, die in Claude Code verfügbar werden. Diese Befehle werden dynamisch von verbundenen MCP-Servern erkannt.

Befehlsformat

MCP-Befehle folgen dem Muster:
/mcp__<server-name>__<prompt-name> [arguments]

Funktionen

Dynamische Erkennung

MCP-Befehle sind automatisch verfügbar, wenn:
  • Ein MCP-Server verbunden und aktiv ist
  • Der Server Eingabeaufforderungen über das MCP-Protokoll verfügbar macht
  • Die Eingabeaufforderungen während der Verbindung erfolgreich abgerufen werden

Argumente

MCP-Eingabeaufforderungen können vom Server definierte Argumente akzeptieren:
# Ohne Argumente
> /mcp__github__list_prs

# Mit Argumenten
> /mcp__github__pr_review 456
> /mcp__jira__create_issue "Bug title" high

Namenskonventionen

  • Server- und Eingabeaufforderungsnamen werden normalisiert
  • Leerzeichen und Sonderzeichen werden zu Unterstrichen
  • Namen werden zur Konsistenz in Kleinbuchstaben umgewandelt

Verwalten von MCP-Verbindungen

Verwenden Sie den /mcp-Befehl, um:
  • Alle konfigurierten MCP-Server anzuzeigen
  • Verbindungsstatus zu überprüfen
  • Sich bei OAuth-aktivierten Servern zu authentifizieren
  • Authentifizierungstoken zu löschen
  • Verfügbare Tools und Eingabeaufforderungen von jedem Server anzuzeigen

MCP-Berechtigungen und Platzhalter

Beachten Sie bei der Konfiguration von Berechtigungen für MCP-Tools, dass Platzhalter nicht unterstützt werden:
  • Korrekt: mcp__github (genehmigt ALLE Tools vom GitHub-Server)
  • Korrekt: mcp__github__get_issue (genehmigt spezifisches Tool)
  • Falsch: mcp__github__* (Platzhalter nicht unterstützt)
Um alle Tools von einem MCP-Server zu genehmigen, verwenden Sie nur den Servernamen: mcp__servername. Um nur bestimmte Tools zu genehmigen, listen Sie jedes Tool einzeln auf.

SlashCommand-Tool

Das SlashCommand-Tool ermöglicht Claude, benutzerdefinierte Schrägstrich-Befehle programmgesteuert während einer Konversation auszuführen. Dies gibt Claude die Möglichkeit, benutzerdefinierte Befehle in Ihrem Namen aufzurufen, wenn dies angemessen ist. Um Claude zu ermutigen, das SlashCommand-Tool auszulösen, müssen Ihre Anweisungen (Eingabeaufforderungen, CLAUDE.md, usw.) im Allgemeinen den Befehl nach Name mit seinem Schrägstrich referenzieren. Beispiel:
> Run /write-unit-test when you are about to start writing tests.
Dieses Tool setzt die Metadaten jedes verfügbaren benutzerdefinierten Schrägstrich-Befehls in den Kontext bis zur Zeichenbudgetgrenze. Sie können /context verwenden, um die Token-Nutzung zu überwachen und die folgenden Operationen durchführen, um den Kontext zu verwalten.

SlashCommand-Tool unterstützte Befehle

Das SlashCommand-Tool unterstützt nur benutzerdefinierte Schrägstrich-Befehle, die:
  • Benutzerdefiniert sind. Integrierte Befehle wie /compact und /init werden nicht unterstützt.
  • Das Frontmatter-Feld description ausgefüllt haben. Wir verwenden die description im Kontext.
Für Claude Code-Versionen >= 1.0.124 können Sie sehen, welche benutzerdefinierten Schrägstrich-Befehle das SlashCommand-Tool aufrufen kann, indem Sie claude --debug ausführen und eine Abfrage auslösen.

SlashCommand-Tool deaktivieren

Um zu verhindern, dass Claude Schrägstrich-Befehle über das Tool ausführt:
/permissions
# Add to deny rules: SlashCommand
Dies entfernt auch das SlashCommand-Tool (und die Schrägstrich-Befehlsbeschreibungen) aus dem Kontext.

Nur bestimmte Befehle deaktivieren

Um zu verhindern, dass ein bestimmter Schrägstrich-Befehl verfügbar wird, fügen Sie disable-model-invocation: true zum Frontmatter des Schrägstrich-Befehls hinzu. Dies entfernt auch die Metadaten des Befehls aus dem Kontext.

SlashCommand-Berechtigungsregeln

Die Berechtigungsregeln unterstützen:
  • Exakte Übereinstimmung: SlashCommand:/commit (erlaubt nur /commit ohne Argumente)
  • Präfixübereinstimmung: SlashCommand:/review-pr:* (erlaubt /review-pr mit beliebigen Argumenten)

Zeichenbudgetgrenze

Das SlashCommand-Tool enthält ein Zeichenbudget, um die Größe der Befehlsbeschreibungen zu begrenzen, die Claude angezeigt werden. Dies verhindert Token-Überfluss, wenn viele Befehle verfügbar sind. Das Budget umfasst den Namen, die Argumente und die Beschreibung jedes benutzerdefinierten Schrägstrich-Befehls.
  • Standardlimit: 15.000 Zeichen
  • Benutzerdefiniertes Limit: Legen Sie über die Umgebungsvariable SLASH_COMMAND_TOOL_CHAR_BUDGET fest
Wenn das Zeichenbudget überschritten wird, sieht Claude nur eine Teilmenge der verfügbaren Befehle. In /context wird eine Warnung mit “M von N Befehlen” angezeigt.

Fähigkeiten vs. Schrägstrich-Befehle

Schrägstrich-Befehle und Agent-Fähigkeiten dienen unterschiedlichen Zwecken in Claude Code:

Schrägstrich-Befehle verwenden für

Schnelle, häufig verwendete Eingabeaufforderungen:
  • Einfache Eingabeaufforderungs-Snippets, die Sie oft verwenden
  • Schnelle Erinnerungen oder Vorlagen
  • Häufig verwendete Anweisungen, die in eine Datei passen
Beispiele:
  • /review → “Review this code for bugs and suggest improvements”
  • /explain → “Explain this code in simple terms”
  • /optimize → “Analyze this code for performance issues”

Fähigkeiten verwenden für

Umfassende Funktionen mit Struktur:
  • Komplexe Workflows mit mehreren Schritten
  • Funktionen, die Skripte oder Dienstprogramme erfordern
  • Wissen, das über mehrere Dateien organisiert ist
  • Team-Workflows, die Sie standardisieren möchten
Beispiele:
  • PDF-Verarbeitungsfähigkeit mit Formularausfüll-Skripten und Validierung
  • Datenanalysefähigkeit mit Referenzdokumenten für verschiedene Datentypen
  • Dokumentationsfähigkeit mit Stilhandbüchern und Vorlagen

Wichtige Unterschiede

AspektSchrägstrich-BefehleAgent-Fähigkeiten
KomplexitätEinfache EingabeaufforderungenKomplexe Funktionen
StrukturEinzelne .md-DateiVerzeichnis mit SKILL.md + Ressourcen
ErkennungExpliziter Aufruf (/command)Automatisch (basierend auf Kontext)
DateienNur eine DateiMehrere Dateien, Skripte, Vorlagen
UmfangProjekt oder persönlichProjekt oder persönlich
FreigabeÜber GitÜber Git

Beispielvergleich

Als Schrägstrich-Befehl:
# .claude/commands/review.md
Review this code for:
- Security vulnerabilities
- Performance issues
- Code style violations
Verwendung: /review (manueller Aufruf) Als Fähigkeit:
.claude/skills/code-review/
├── SKILL.md (overview and workflows)
├── SECURITY.md (security checklist)
├── PERFORMANCE.md (performance patterns)
├── STYLE.md (style guide reference)
└── scripts/
    └── run-linters.sh
Verwendung: “Can you review this code?” (automatische Erkennung) Die Fähigkeit bietet umfangreicheren Kontext, Validierungsskripte und organisiertes Referenzmaterial.

Wann man jede verwendet

Schrägstrich-Befehle verwenden:
  • Sie rufen dieselbe Eingabeaufforderung wiederholt auf
  • Die Eingabeaufforderung passt in eine einzelne Datei
  • Sie möchten explizite Kontrolle darüber, wann sie ausgeführt wird
Fähigkeiten verwenden:
  • Claude sollte die Fähigkeit automatisch erkennen
  • Mehrere Dateien oder Skripte sind erforderlich
  • Komplexe Workflows mit Validierungsschritten
  • Team benötigt standardisierte, detaillierte Anleitung
Sowohl Schrägstrich-Befehle als auch Fähigkeiten können koexistieren. Verwenden Sie den Ansatz, der Ihren Anforderungen entspricht. Erfahren Sie mehr über Agent-Fähigkeiten.

Siehe auch