Skip to Content
👋 Willkommen bei HowToUseOpenClaw Schnellstart
ToolsSlash Commands

Slash-Befehle

Befehle werden vom Gateway verarbeitet. Die meisten Befehle müssen als eigenständige Nachricht gesendet werden, die mit / beginnt. Der nur-Host-Bash-Chat-Befehl nutzt ! <cmd> (Alias: /bash <cmd>). Es gibt zwei zusammenhängende Systeme:

  • Commands: eigenständige /...-Nachrichten.

  • Directives: /think, /verbose, /reasoning, /elevated, /exec, /model, /queue.

    • Directives werden aus der Nachricht entfernt, bevor das Modell sie sieht.
    • In normalen Chat-Nachrichten (nicht nur Directives) gelten sie als „Inline-Hinweise“ und speichern keine Sitzungseinstellungen.
    • In Nur-Directive-Nachrichten (die Nachricht enthält nur Directives) werden sie in der Sitzung gespeichert und mit einer Bestätigung beantwortet.
    • Directives gelten nur für autorisierte Sender (Kanal-Allowlists/Pairing plus commands.useAccessGroups). Unautorisierte Sender sehen Directives als normalen Text.

Es gibt auch Inline-Shortcuts (nur allowlistete/autorisierte Sender): /help, /commands, /status, /whoami (/id). Sie laufen sofort, werden vor dem Modell aus der Nachricht entfernt, der Rest geht normal weiter.

Config

{ commands: { native: "auto", nativeSkills: "auto", text: true, bash: false, bashForegroundMs: 2000, config: false, debug: false, restart: false, useAccessGroups: true } }
  • commands.text (Standard true): parst /... in Chat-Nachrichten.

    • Auf Oberflächen ohne Native-Commands (WhatsApp/WebChat/Signal/iMessage/Google Chat/MS Teams) funktionieren Text-Befehle auch bei false.
  • commands.native (Standard "auto"): registriert Native-Commands.

    • Auto: an für Discord/Telegram; aus für Slack (bis du Slash-Commands hinzufügst); ignoriert für Provider ohne Native-Support.
    • channels.discord.commands.native, channels.telegram.commands.native oder channels.slack.commands.native pro Provider überschreiben (bool oder "auto").
    • false entfernt zuvor registrierte Commands auf Discord/Telegram beim Start. Slack-Commands werden in der Slack-App verwaltet und nicht automatisch entfernt.
  • commands.nativeSkills (Standard "auto"): registriert Skill-Commands nativ, wo unterstützt.

    • Auto: an für Discord/Telegram; aus für Slack (Slack braucht einen Slash-Command pro Skill).
    • channels.discord.commands.nativeSkills, channels.telegram.commands.nativeSkills oder channels.slack.commands.nativeSkills pro Provider überschreiben (bool oder "auto").
  • commands.bash (Standard false): aktiviert ! <cmd> für Host-Shell-Befehle (/bash <cmd> ist Alias; erfordert tools.elevated-Allowlists).

  • commands.bashForegroundMs (Standard 2000): wie lange bash wartet, bevor sie in den Hintergrund wechselt (0 = sofort Hintergrund).

  • commands.config (Standard false): aktiviert /config (liest/schreibt openclaw.json).

  • commands.debug (Standard false): aktiviert /debug (nur Laufzeit-Überschreibungen).

  • commands.useAccessGroups (Standard true): erzwingt Allowlists/Richtlinien für Befehle.

Befehlsliste

Text + Native (wenn aktiviert):

  • /help

  • /commands

  • /skill <name> [input] (Skill per Name ausführen)

  • /status (aktuellen Status anzeigen; inkl. Provider-Nutzung/Quota für den aktuellen Modell-Provider, wenn verfügbar)

  • /allowlist (Allowlist-Einträge auflisten/hinzufügen/entfernen)

  • /approve <id> allow-once|allow-always|deny (Exec-Freigabe-Abfragen auflösen)

  • /context [list|detail|json] („Kontext“ erklären; detail zeigt pro Datei + pro Tool + pro Skill + System-Prompt-Größe)

  • /whoami (deine Sender-ID anzeigen; Alias: /id)

  • /subagents list|stop|log|info|send (Sub-Agenten-Läufe der aktuellen Sitzung inspizieren, stoppen, loggen oder Nachricht senden)

  • /config show|get|set|unset (Config auf Disk speichern, nur Owner; erfordert commands.config: true)

  • /debug show|set|unset|reset (Laufzeit-Überschreibungen, nur Owner; erfordert commands.debug: true)

  • /usage off|tokens|full|cost (Nutzungs-Footer pro Antwort oder lokale Kosten-Zusammenfassung)

  • /tts off|always|inbound|tagged|status|provider|limit|summary|audio (TTS steuern; siehe /tts)

    • Discord: Native-Command ist /voice (Discord reserviert /tts); Text-/tts funktioniert weiter.
  • /stop

  • /restart

  • /dock-telegram (Alias: /dock_telegram) (Antworten auf Telegram umstellen)

  • /dock-discord (Alias: /dock_discord) (Antworten auf Discord umstellen)

  • /dock-slack (Alias: /dock_slack) (Antworten auf Slack umstellen)

  • /activation mention|always (nur Gruppen)

  • /send on|off|inherit (nur Owner)

  • /reset oder /new [model] (optionaler Modell-Hinweis; Rest wird durchgereicht)

  • /think <off|minimal|low|medium|high|xhigh> (dynamische Wahl je Modell/Provider; Aliase: /thinking, /t)

  • /verbose on|full|off (Alias: /v)

  • /reasoning on|off|stream (Alias: /reason; bei on separate Nachricht mit Präfix Reasoning:; stream = nur Telegram-Entwurf)

  • /elevated on|off|ask|full (Alias: /elev; full überspringt Exec-Freigaben)

  • /exec host=<sandbox|gateway|node> security=<deny|allowlist|full> ask=<off|on-miss|always> node=<id> (/exec senden für aktuelle Anzeige)

  • /model <name> (Alias: /models; oder /<alias> aus agents.defaults.models.*.alias)

  • /queue <mode> (plus Optionen wie debounce:2s cap:25 drop:summarize; /queue senden für aktuelle Einstellungen)

  • /bash <command> (nur Host; Alias für ! <command>; erfordert commands.bash: true + tools.elevated-Allowlists)

Nur Text:

  • /compact [instructions] (siehe /concepts/compaction)
  • ! <command> (nur Host; nacheinander; !poll + !stop für lange Jobs)
  • !poll (Ausgabe/Status prüfen; optional sessionId; /bash poll funktioniert auch)
  • !stop (laufenden Bash-Job stoppen; optional sessionId; /bash stop funktioniert auch)

Hinweise:

  • Befehle akzeptieren optional : zwischen Befehl und Args (z. B. /think: high, /send: on, /help:).

  • /new <model> akzeptiert Modell-Alias, provider/model oder Provider-Name (Fuzzy-Match); bei keinem Match wird der Text als Nachrichtenkörper behandelt.

  • Für vollständige Provider-Nutzungsaufschlüsselung: openclaw status --usage.

  • /allowlist add|remove erfordert commands.config=true und beachtet Kanal-configWrites.

  • /usage steuert den Nutzungs-Footer pro Antwort; /usage cost gibt eine lokale Kosten-Zusammenfassung aus den OpenClaw-Sitzungslogs aus.

  • /restart ist standardmäßig deaktiviert; commands.restart: true setzen zum Aktivieren.

  • /verbose ist für Debugging und Sichtbarkeit gedacht; im Normalbetrieb aus lassen.

  • /reasoning (und /verbose) sind in Gruppen riskant: Sie können internes Reasoning oder Tool-Ausgaben zeigen, die du nicht preisgeben willst. Vorzugsweise aus, besonders in Gruppenchats.

  • Fast Path: Nur-Befehl-Nachrichten von allowlisteten Sendern werden sofort verarbeitet (Queue + Modell umgangen).

  • Gruppen-Mention-Gating: Nur-Befehl-Nachrichten von allowlisteten Sendern umgehen Mention-Anforderungen.

  • Inline-Shortcuts (nur allowlistete Sender): Bestimmte Befehle funktionieren auch eingebettet in einer normalen Nachricht und werden entfernt, bevor das Modell den Rest sieht.

    • Beispiel: hey /status löst eine Status-Antwort aus, der Rest geht normal weiter.
  • Aktuell: /help, /commands, /status, /whoami (/id).

  • Unautorisierte Nur-Befehl-Nachrichten werden still ignoriert, Inline-/...-Tokens als normaler Text behandelt.

  • Skill-Commands: user-invocable-Skills werden als Slash-Commands bereitgestellt. Namen werden auf a-z0-9_ bereinigt (max. 32 Zeichen); Kollisionen erhalten numerische Suffixe (z. B. _2).

    • /skill <name> [input] führt einen Skill per Name aus (nützlich, wenn Native-Command-Limits pro-Skill-Commands verhindern).
    • Standardmäßig werden Skill-Commands als normale Anfrage an das Modell weitergeleitet.
    • Skills können optional command-dispatch: tool deklarieren, um den Befehl direkt an ein Tool zu routen (deterministisch, ohne Modell).
    • Beispiel: /prose (OpenProse-Plugin) — siehe OpenProse.
  • Native-Command-Argumente: Discord nutzt Autocomplete für dynamische Optionen (und Button-Menüs bei fehlenden erforderlichen Args). Telegram und Slack zeigen ein Button-Menü, wenn ein Befehl Choices unterstützt und du das Arg weglässt.

Nutzungsoberflächen (was wo erscheint)

  • Provider-Nutzung/Quota (z. B. „Claude 80% übrig“) erscheint in /status für den aktuellen Modell-Provider, wenn Nutzungs-Tracking aktiv ist.
  • Tokens/Kosten pro Antwort steuert /usage off|tokens|full (an normale Antworten angehängt).
  • /model status betrifft Modelle/Auth/Endpunkte, nicht Nutzung.

Modellauswahl (/model)

/model ist als Directive umgesetzt. Beispiele:

/model /model list /model 3 /model openai/gpt-5.2 /model opus@anthropic:default /model status

Hinweise:

  • /model und /model list zeigen eine kompakte, nummerierte Auswahl (Modell-Familie + verfügbare Provider).
  • /model <#> wählt aus dieser Auswahl (bevorzugt den aktuellen Provider wenn möglich).
  • /model status zeigt die Detailansicht inkl. konfiguriertem Provider-Endpoint (baseUrl) und API-Modus (api), wenn verfügbar.

Debug-Überschreibungen

/debug setzt nur Laufzeit-Config-Überschreibungen (Speicher, nicht Disk). Nur Owner. Standardmäßig deaktiviert; mit commands.debug: true aktivieren. Beispiele:

/debug show /debug set messages.responsePrefix="[openclaw]" /debug set channels.whatsapp.allowFrom=["+1555","+4477"] /debug unset messages.responsePrefix /debug reset

Hinweise:

  • Überschreibungen gelten sofort für neue Config-Leser, schreiben aber nicht in openclaw.json.
  • /debug reset löscht alle Überschreibungen und stellt die On-Disk-Config wieder her.

Config-Updates

/config schreibt in die On-Disk-Config (openclaw.json). Nur Owner. Standardmäßig deaktiviert; mit commands.config: true aktivieren. Beispiele:

/config show /config show messages.responsePrefix /config get messages.responsePrefix /config set messages.responsePrefix="[openclaw]" /config unset messages.responsePrefix

Hinweise:

  • Config wird vor dem Schreiben validiert; ungültige Änderungen werden abgelehnt.
  • /config-Updates überdauern Neustarts.

Oberflächen-Hinweise

  • Text-Commands laufen in der normalen Chat-Sitzung (DMs teilen main, Gruppen haben eigene Sitzung).

  • Native-Commands nutzen isolierte Sitzungen:

    • Discord: agent:<agentId>:discord:slash:<userId>
    • Slack: agent:<agentId>:slack:slash:<userId> (Präfix konfigurierbar via channels.slack.slashCommand.sessionPrefix)
    • Telegram: telegram:slash:<userId> (zielt über CommandTargetSessionKey auf die Chat-Sitzung)
  • /stop zielt auf die aktive Chat-Sitzung, um den aktuellen Lauf abzubrechen.

  • Slack: channels.slack.slashCommand wird weiterhin für einen einzelnen /clawd-Style-Befehl unterstützt. Bei commands.native musst du einen Slack-Slash-Command pro eingebautem Befehl anlegen (gleiche Namen wie /help). Command-Argument-Menüs für Slack werden als ephemerale Block-Kit-Buttons geliefert.

Zuletzt aktualisiert am: