OpenClaw Slash Commands konfigurieren: Anleitung & Setup
Konfiguration
Abschnitt betitelt „Konfiguration“{ commands: { native: "auto", nativeSkills: "auto", text: true, bash: false, bashForegroundMs: 2000, config: false, mcp: false, plugins: false, debug: false, restart: false, allowFrom: { "*": ["user1"], discord: ["user:123"], }, useAccessGroups: true, },}commands.text(Standard:true) aktiviert das Parsen von/...in Chat-Nachrichten.- Auf Plattformen ohne native Commands (WhatsApp, WebChat, Signal, iMessage, Google Chat, Microsoft Teams) funktionieren Text-Commands weiterhin, selbst wenn du dies auf
falsesetzt.
- Auf Plattformen ohne native Commands (WhatsApp, WebChat, Signal, iMessage, Google Chat, Microsoft Teams) funktionieren Text-Commands weiterhin, selbst wenn du dies auf
commands.native(Standard:"auto") registriert native Commands.- Auto: Aktiviert für Discord/Telegram; deaktiviert für Slack (bis du Slash-Commands hinzufügst); wird bei Providern ohne native Unterstützung ignoriert.
- Setze
channels.discord.commands.native,channels.telegram.commands.nativeoderchannels.slack.commands.nativeauf einen booleschen Wert oder"auto", um dies pro Provider zu überschreiben. falselöscht zuvor registrierte Commands bei Discord/Telegram beim Start. Slack-Commands werden in der Slack-App verwaltet und nicht automatisch entfernt.
commands.nativeSkills(Standard:"auto") registriert skill Commands nativ, sofern unterstützt.- Auto: Aktiviert für Discord/Telegram; deaktiviert für Slack (Slack erfordert das Erstellen eines Slash-Commands pro Skill).
- Nutze
channels.discord.commands.nativeSkills,channels.telegram.commands.nativeSkillsoderchannels.slack.commands.nativeSkillsfür provider-spezifische Overrides.
commands.bash(Standard:false) ermöglicht! <cmd>, um Shell-Befehle auf dem Host auszuführen (/bash <cmd>ist ein Alias; erforderttools.elevatedAllowlists).commands.bashForegroundMs(Standard:2000) steuert, wie lange bash wartet, bevor in den Hintergrundmodus gewechselt wird (0wechselt sofort in den Hintergrund).commands.config(Standard:false) aktiviert/config(liest/schreibt dieopenclaw.json).commands.mcp(Standard:false) aktiviert/mcp(liest/schreibt die von OpenClaw verwaltete MCP-Konfiguration untermcp.servers).commands.plugins(Standard:false) aktiviert/plugins(Plugin-Discovery/Status sowie Steuerung für Installation und Aktivierung/Deaktivierung).commands.debug(Standard:false) aktiviert/debug(nur für Runtime-Overrides).commands.allowFrom(optional) legt eine provider-spezifische Allowlist für die Command-Autorisierung fest. Wenn konfiguriert, ist dies die einzige Quelle für die Autorisierung von Commands und Directives (Channel-Allowlists/Pairing undcommands.useAccessGroupswerden ignoriert). Nutze"*"als globalen Standard; provider-spezifische Keys überschreiben diesen.commands.useAccessGroups(Standard:true) erzwingt Allowlists/Policies für Commands, wenncommands.allowFromnicht gesetzt ist.
Befehlsliste
Abschnitt betitelt „Befehlsliste“Text + nativ (wenn aktiviert):
/help/commands/tools [compact|verbose](zeigt an, was der aktuelle Agent gerade nutzen kann;verbosefügt Beschreibungen hinzu)/skill <name> [input](führt einen Skill über den Namen aus)/status(zeigt den aktuellen Status; inklusive Provider-Nutzung/Quota für den aktuellen Model-Provider, falls verfügbar)/tasks(listet Hintergrund-Tasks für die aktuelle Session auf; zeigt Details zu aktiven und kürzlich abgeschlossenen Tasks)/allowlist(Einträge der Allowlist anzeigen, hinzufügen oder entfernen)/approve <id> allow-once|allow-always|deny(löst Freigabeaufforderungen für exec auf)/context [list|detail|json](erklärt den “Context”;detailzeigt die Größe pro Datei, Tool, Skill und System-Prompt)/btw <question>(stellt eine flüchtige Nebenfrage zur aktuellen Session, ohne den zukünftigen Session-Context zu verändern; siehe /tools/btw)/export-session [path](Alias:/export) (exportiert die aktuelle Session als HTML inklusive des vollständigen System-Prompts)/whoami(zeigt deine Sender-ID; Alias:/id)/session idle <duration|off>(verwaltet das automatische Unfocusing bei Inaktivität für Thread-Bindings)/session max-age <duration|off>(verwaltet das harte maximale Alter für automatisches Unfocusing bei Thread-Bindings)/subagents list|kill|log|info|send|steer|spawn(inspiziert, steuert oder startet Sub-Agent-Runs für die aktuelle Session)/acp spawn|cancel|steer|close|status|set-mode|set|cwd|permissions|timeout|model|reset-options|doctor|install|sessions(inspiziert und steuert ACP-Runtime-Sessions)/agents(listet die an den Thread gebundenen Agenten für diese Session auf)/focus <target>(Discord: bindet diesen Thread oder einen neuen Thread an ein Session/Subagent-Ziel)/unfocus(Discord: entfernt das aktuelle Thread-Binding)/kill <id|#|all>(bricht sofort einen oder alle laufenden Sub-Agenten für diese Session ab; keine Bestätigungsnachricht)/steer <id|#> <message>(steuert einen laufenden Sub-Agenten sofort: während des Runs wenn möglich, andernfalls Abbruch der aktuellen Arbeit und Neustart mit der Steer-Nachricht)/tell <id|#> <message>(Alias für/steer)/config show|get|set|unset(speichert die Konfiguration auf Festplatte, nur für Besitzer; erfordertcommands.config: true)/mcp show|get|set|unset(verwaltet die OpenClaw MCP-Server-Konfiguration, nur für Besitzer; erfordertcommands.mcp: true)/plugins list|show|get|install|enable|disable(inspiziert entdeckte Plugins, installiert neue und schaltet sie an/aus; Schreibzugriff nur für Besitzer; erfordertcommands.plugins: true)/pluginist ein Alias für/plugins./plugin install <spec>akzeptiert dieselben Plugin-Specs wieopenclaw plugins install: lokaler Pfad/Archiv, npm-Paket oderclawhub:<pkg>.- Schreibvorgänge für Aktivierung/Deaktivierung antworten weiterhin mit einem Hinweis auf einen Neustart. Bei einem überwachten Foreground-Gateway führt OpenClaw diesen Neustart eventuell direkt nach dem Schreiben automatisch durch.
/debug show|set|unset|reset(Runtime-Overrides, nur für Besitzer; erfordertcommands.debug: true)/usage off|tokens|full|cost(Nutzungs-Footer pro Antwort oder lokale Kostenzusammenfassung)/tts off|always|inbound|tagged|status|provider|limit|summary|audio(steuert TTS; siehe /tts)- Discord: Nativer Befehl ist
/voice(Discord reserviert/tts); Text-basiertes/ttsfunktioniert weiterhin.
- Discord: Nativer Befehl ist
/stop/restart/dock-telegram(Alias:/dock_telegram) (wechselt Antworten zu Telegram)/dock-discord(Alias:/dock_discord) (wechselt Antworten zu Discord)/dock-slack(Alias:/dock_slack) (wechselt Antworten zu Slack)/activation mention|always(nur in Gruppen)/send on|off|inherit(nur für Besitzer)/resetoder/new [model](optionaler Model-Hinweis; der Rest wird durchgereicht)/think <off|minimal|low|medium|high|xhigh>(dynamische Auswahl je nach Model/Provider; Aliase:/thinking,/t)/fast status|on|off(ohne Argument wird der aktuelle effektive Fast-Mode-Status angezeigt)/verbose on|full|off(Alias:/v)/reasoning on|off|stream(Alias:/reason; wenn aktiviert, wird eine separate Nachricht mit dem PräfixReasoning:gesendet;stream= nur Telegram-Entwurf)/elevated on|off|ask|full(Alias:/elev;fullüberspringt exec-Freigaben)/exec host=<auto|sandbox|gateway|node> security=<deny|allowlist|full> ask=<off|on-miss|always> node=<id>(sende/exec, um den aktuellen Status anzuzeigen)/model <name>(Alias:/models; oder/<alias>ausagents.defaults.models.*.alias)/queue <mode>(plus Optionen wiedebounce:2s cap:25 drop:summarize; sende/queue, um aktuelle Einstellungen zu sehen)/bash <command>(nur Host; Alias für! <command>; erfordertcommands.bash: true+tools.elevatedAllowlists)
Nur Text:
/compact [instructions](siehe /concepts/compaction)! <command>(nur Host; einzeln nacheinander; nutze!poll+!stopfür langlaufende Jobs)!poll(prüft Output / Status; akzeptiert optionalesessionId;/bash pollfunktioniert ebenfalls)!stop(stoppt den laufenden bash-Job; akzeptiert optionalesessionId;/bash stopfunktioniert ebenfalls)
Hinweise:
- Commands akzeptieren einen optionalen
:zwischen Befehl und Argumenten (z. B./think: high,/send: on,/help:). /new <model>akzeptiert einen Model-Alias,provider/modeloder einen Provider-Namen (Fuzzy Match); wenn kein Treffer gefunden wird, wird der Text als Nachrichtenkörper behandelt.- Für eine vollständige Aufschlüsselung der Provider-Nutzung verwende
openclaw status --usage. /allowlist add|removeerfordertcommands.config=trueund berücksichtigt dieconfigWritesdes Channels.- In Channels mit mehreren Accounts berücksichtigen auf Konfiguration zielende Befehle wie
/allowlist --account <id>und/config set channels.<provider>.accounts.<id>...ebenfalls dieconfigWritesdes Ziel-Accounts. /usagesteuert den Nutzungs-Footer pro Antwort;/usage costgibt eine lokale Kostenzusammenfassung aus den OpenClaw-Session-Logs aus./restartist standardmäßig aktiviert; setzecommands.restart: false, um es zu deaktivieren.- Exklusiver nativer Discord-Befehl:
/vc join|leave|statussteuert Voice-Channels (erfordertchannels.discord.voiceund native Commands; nicht als Text verfügbar). - Discord-Befehle für Thread-Binding (
/focus,/unfocus,/agents,/session idle,/session max-age) erfordern, dass Thread-Bindings aktiviert sind (session.threadBindings.enabledund/oderchannels.discord.threadBindings.enabled). - ACP-Befehlsreferenz und Runtime-Verhalten: ACP Agents.
/verboseist für Debugging und zusätzliche Sichtbarkeit gedacht; lass es im normalen Gebrauch aus./fast on|offspeichert einen Session-Override. Nutze dieinherit-Option in der Sessions-UI, um ihn zu löschen und auf die Konfigurations-Standards zurückzufallen./fastist provider-spezifisch: OpenAI/OpenAI Codex mappen dies aufservice_tier=prioritybei nativen Responses-Endpunkten, während direkte öffentliche Anthropic-Anfragen (inklusive OAuth-Traffic anapi.anthropic.com) aufservice_tier=autooderstandard_onlygemappt werden. Siehe OpenAI und Anthropic.- Zusammenfassungen von Tool-Fehlern werden weiterhin angezeigt, wenn sie relevant sind, aber detaillierte Fehlertexte werden nur inkludiert, wenn
/verboseaufonoderfullsteht. /reasoning(und/verbose) sind in Gruppen riskant: Sie könnten interne Gedankengänge oder Tool-Outputs preisgeben, die du nicht offenlegen wolltest. Lass sie am besten aus, besonders in Gruppen-Chats./modelspeichert das neue Session-Model sofort, unterbricht aber keinen laufenden Run. Der aktuelle Turn wird erst beendet, danach nutzen wartende oder zukünftige Aufgaben das aktualisierte Model.- Fast Path: Befehle ohne weiteren Text von Absendern auf der Allowlist werden sofort verarbeitet (Queue und Model werden umgangen).
- Group Mention Gating: Befehle ohne weiteren Text von Absendern auf der Allowlist umgehen die Erfordernis einer Erwähnung (Mention).
- Inline Shortcuts (nur für Absender auf der Allowlist): Bestimmte Befehle funktionieren auch, wenn sie in eine normale Nachricht eingebettet sind. Sie werden entfernt, bevor das Model den restlichen Text sieht.
- Beispiel:
hey /statuslöst eine Status-Antwort aus, und der restliche Text durchläuft den normalen Flow. - Aktuell:
/help,/commands,/status,/whoami(/id).
- Beispiel:
- Nicht autorisierte Befehle ohne weiteren Text werden stillschweigend ignoriert, und Inline-
/...-Tokens werden als normaler Text behandelt. - Skill Commands: Als
user-invocablemarkierte Skills werden als Slash-Commands bereitgestellt. Namen werden aufa-z0-9_bereinigt (max. 32 Zeichen); bei Kollisionen werden numerische Suffixe angehängt (z. B._2)./skill <name> [input]führt einen Skill über den Namen aus (nützlich, wenn native Command-Limits pro Skill-Commands verhindern).- Standardmäßig werden Skill-Commands als normale Anfrage an das Model weitergeleitet.
- Skills können optional
command-dispatch: tooldeklarieren, um den Befehl direkt an ein Tool zu routen (deterministisch, ohne Model). - Beispiel:
/prose(OpenProse Plugin) — siehe OpenProse.
- Native Command-Argumente: Discord nutzt Autocomplete für dynamische Optionen (und Button-Menüs, wenn du erforderliche Argumente weglässt). Telegram und Slack zeigen ein Button-Menü an, wenn ein Befehl Auswahlmöglichkeiten unterstützt und du das Argument weglässt.
Der /tools-Befehl
Abschnitt betitelt „Der /tools-Befehl“/tools beantwortet eine Frage zur Laufzeit, keine Konfigurationsfrage: Was dieser Agent genau jetzt in dieser Konversation nutzen kann.
- Standardmäßig ist
/toolskompakt und für schnelles Scannen optimiert. /tools verbosefügt kurze Beschreibungen hinzu.- Native Befehlsoberflächen, die Argumente unterstützen, bieten denselben Switch zwischen
compact|verbose. - Die Ergebnisse sind auf die Session bezogen. Wenn du den Agent, Channel, Thread, die Autorisierung oder das Model änderst, kann sich die Ausgabe ändern.
/toolszeigt Tools an, die zur Laufzeit tatsächlich erreichbar sind. Dazu gehören Core-Tools sowie verbundene Plugin- und Channel-Tools.
Um Profile oder Overrides zu bearbeiten, solltest du das Control UI Tools Panel oder die Config/Catalog-Oberflächen nutzen, anstatt /tools als statischen Katalog zu betrachten.
Nutzungsoberflächen (Was wo erscheint)
Abschnitt betitelt „Nutzungsoberflächen (Was wo erscheint)“- Provider-Nutzung und Tokens: Die Quota (z. B. „Claude 80% left“) siehst du in
/status, während Tokens oder Kosten pro Antwort über/usage off|tokens|fullgesteuert werden. - Model-Status: Bei
/model statusgeht es um Models, Auth sowie Endpoints und nicht um die Nutzung.
Modellauswahl (/model)
Abschnitt betitelt „Modellauswahl (/model)“/model ist als Directive implementiert und hilft dir dabei, schnell zwischen verschiedenen Setups zu wechseln.
Beispiele:
/model/model list/model 3/model openai/gpt-5.2/model opus@anthropic:default/model statusHinweise:
/modelund/model listzeigen dir eine kompakte, nummerierte Auswahl (Modellfamilie + verfügbare Provider).- Auf Discord öffnen
/modelund/modelsein interaktives Auswahlmenü mit Dropdowns für Provider und Modell sowie einem Submit-Schritt. - Mit
/model <#>triffst du eine Wahl aus dieser Liste. Das System bevorzugt dabei den aktuellen Provider, wenn das möglich ist. /model statusliefert dir die Detailansicht, inklusive des konfigurierten Provider-Endpoints (baseUrl) und des API-Modus (api), falls verfügbar.
Debug-Overrides
Abschnitt betitelt „Debug-Overrides“Mit /debug kannst du Konfigurations-Overrides festlegen, die nur zur Laufzeit gelten (im RAM, nicht auf der Festplatte). Dieser Befehl ist nur für Owner zugänglich. Er ist standardmäßig deaktiviert; du kannst ihn mit commands.debug: true einschalten.
Beispiele:
/debug show/debug set messages.responsePrefix="[openclaw]"/debug set channels.whatsapp.allowFrom=["+1555","+4477"]/debug unset messages.responsePrefix/debug resetHinweise:
- Overrides werden sofort bei neuen Lesezugriffen auf die Konfiguration angewendet, aber nicht in die
openclaw.jsongeschrieben. - Verwende
/debug reset, um alle Overrides zu löschen und zur Konfiguration auf der Festplatte zurückzukehren.
Konfigurations-Updates
Abschnitt betitelt „Konfigurations-Updates“/config schreibt direkt in deine lokale Konfigurationsdatei (openclaw.json). Dieser Befehl ist dem Owner vorbehalten. Standardmäßig ist die Funktion deaktiviert; du kannst sie mit commands.config: true freischalten. Ich empfehle dir, das zu nutzen, um Einstellungen schnell anzupassen, ohne die Datei manuell bearbeiten zu müssen.
Beispiele:
/config show/config show messages.responsePrefix/config get messages.responsePrefix/config set messages.responsePrefix="[openclaw]"/config unset messages.responsePrefixWichtige Hinweise:
- Die Konfiguration wird vor dem Speichern validiert; ungültige Änderungen werden abgelehnt.
- Änderungen über
/configbleiben auch nach einem Neustart dauerhaft bestehen.
MCP-Updates
Abschnitt betitelt „MCP-Updates“Mit /mcp verwaltest du MCP-Server-Definitionen direkt innerhalb von OpenClaw unter mcp.servers. Auch dieser Befehl ist Owner-only. Er ist standardmäßig deaktiviert; aktiviere ihn mit commands.mcp: true.
Beispiele:
/mcp show/mcp show context7/mcp set context7={"command":"uvx","args":["context7-mcp"]}/mcp unset context7Wichtige Hinweise:
/mcpspeichert die Konfiguration direkt in OpenClaw, nicht in den Pi-eigenen Projekteinstellungen.- Die Runtime-Adapter entscheiden, welche Transports tatsächlich ausführbar sind.
Plugin-Updates
Abschnitt betitelt „Plugin-Updates“Mit /plugins kannst du entdeckte Plugins prüfen und deren Aktivierung in der Config umschalten. Für Read-only-Flows kannst du /plugin als Alias nutzen. Diese Funktion ist standardmäßig deaktiviert; aktiviere sie mit commands.plugins: true.
Beispiele:
/plugins/plugins list/plugin show context7/plugins enable context7/plugins disable context7Hinweise:
/plugins listund/plugins shownutzen die echte Plugin-Discovery für den aktuellen Workspace und die Config auf der Festplatte./plugins enable|disableaktualisiert nur die Plugin-Config; es installiert oder deinstalliert keine Plugins.- Nach Änderungen an der Aktivierung musst du das Gateway neu starten, um sie anzuwenden.
Hinweise zu Oberflächen
Abschnitt betitelt „Hinweise zu Oberflächen“- Text-Commands laufen in der normalen Chat-Session (DMs teilen sich
main, Gruppen haben ihre eigene Session). - Native Commands nutzen isolierte Sessions:
- Discord:
agent:<agentId>:discord:slash:<userId> - Slack:
agent:<agentId>:slack:slash:<userId>(Präfix konfigurierbar überchannels.slack.slashCommand.sessionPrefix) - Telegram:
telegram:slash:<userId>(zielt überCommandTargetSessionKeyauf die Chat-Session ab)
- Discord:
/stopzielt auf die aktive Chat-Session ab, damit du den aktuellen Run abbrechen kannst.- Slack:
channels.slack.slashCommandwird weiterhin für einen einzelnen Befehl im Stil von/openclawunterstützt. Wenn ducommands.nativeaktivierst, musst du pro integriertem Befehl einen Slack-Slash-Command erstellen (gleiche Namen wie bei/help). Menüs für Command-Argumente werden bei Slack als flüchtige Block Kit Buttons ausgeliefert.- Ausnahme bei Slack Native: Registriere
/agentstatus(nicht/status), da Slack/statusreserviert hat. Textbasiertes/statusfunktioniert in Slack-Nachrichten weiterhin.
- Ausnahme bei Slack Native: Registriere
BTW-Zwischenfragen
Abschnitt betitelt „BTW-Zwischenfragen“/btw ist für eine schnelle Zwischenfrage zur aktuellen Session gedacht.
Anders als beim normalen Chat:
- nutzt es die aktuelle Session als Hintergrundkontext,
- läuft es als separater, tool-loser One-Shot-Aufruf,
- ändert es den zukünftigen Session-Kontext nicht,
- wird es nicht in die History des Transkripts geschrieben,
- wird es als Live-Seitenergebnis statt als normale Assistant-Nachricht ausgegeben.
Das macht /btw nützlich, wenn du eine kurze Klärung brauchst, während die Hauptaufgabe weiterläuft.
Beispiel:
/btw what are we doing right now?Schau dir BTW Side Questions für das vollständige Verhalten und Details zur Client-UX an.
OpenClaw Expert
Noch festgefahren?
Wenn diese Seite nicht hilft, frage OpenClaw Expert nach Schritt-fuer-Schritt-Loesungen.