Skills
Slash-Befehle
Der Gateway verarbeitet Befehle, die als eigenständige Nachrichten mit / am Anfang gesendet werden.
Nur-Host-Bash-Befehle verwenden ! <cmd> (mit /bash <cmd> als Alias).
Wenn eine Unterhaltung an eine ACP-Sitzung gebunden ist, wird normaler Text an das ACP-
Harness weitergeleitet. Gateway-Verwaltungsbefehle bleiben lokal: /acp ... erreicht immer
den OpenClaw-Befehlshandler, und /status sowie /unfocus bleiben lokal, wenn
die Befehlsverarbeitung für die Oberfläche aktiviert ist.
Drei Befehlstypen
Eigenständige /...-Nachrichten, die vom Gateway verarbeitet werden. Sie müssen als
einziger Inhalt der Nachricht gesendet werden.
/think, /fast, /verbose, /trace, /reasoning, /elevated,
/exec, /model, /queue — werden aus der Nachricht entfernt, bevor das Modell
sie sieht. Sie speichern Sitzungseinstellungen dauerhaft, wenn sie allein gesendet werden;
sie dienen als Inline-Hinweise, wenn sie mit anderem Text gesendet werden.
/help, /commands, /status, /whoami — werden sofort ausgeführt und
entfernt, bevor das Modell den verbleibenden Text sieht. Nur autorisierte Absender.
Details zum Verhalten von Direktiven
- Direktiven werden aus der Nachricht entfernt, bevor das Modell sie sieht.
- In Nachrichten, die nur Direktiven enthalten (die Nachricht besteht nur aus Direktiven), bleiben sie in der Sitzung gespeichert und antworten mit einer Bestätigung.
- In normalen Chat-Nachrichten mit anderem Text wirken sie als Inline-Hinweise und speichern Sitzungseinstellungen nicht dauerhaft.
- Direktiven gelten nur für autorisierte Absender. Wenn
commands.allowFromgesetzt ist, ist dies die einzige verwendete Allowlist; andernfalls ergibt sich die Autorisierung aus Channel-Allowlists/Kopplung pluscommands.useAccessGroups. Nicht autorisierte Absender sehen Direktiven als Klartext behandelt.
Konfiguration
{ commands: { native: "auto", nativeSkills: "auto", text: true, bash: false, bashForegroundMs: 2000, config: false, mcp: false, plugins: false, debug: false, restart: true, ownerAllowFrom: ["discord:123456789012345678"], ownerDisplay: "raw", ownerDisplaySecret: "${OWNER_ID_HASH_SECRET}", allowFrom: { "*": ["user1"], discord: ["user:123"], }, useAccessGroups: true, },}commands.textbooleandefault: trueAktiviert das Parsen von /... in Chatnachrichten. Auf Oberflächen ohne native Befehle
(WhatsApp, WebChat, Signal, iMessage, Google Chat, Microsoft Teams) funktionieren Textbefehle
auch dann, wenn dies auf false gesetzt ist.
commands.nativeboolean | "auto"default: "auto"Registriert native Befehle. Auto: ein für Discord/Telegram; aus für Slack;
wird bei Providern ohne native Unterstützung ignoriert. Pro Channel überschreiben mit
channels.<provider>.commands.native. Bei Discord überspringt false die Registrierung von Slash-Befehlen;
zuvor registrierte Befehle können sichtbar bleiben, bis sie entfernt werden.
commands.nativeSkillsboolean | "auto"default: "auto"Registriert Skill-Befehle nativ, wenn unterstützt. Auto: ein für
Discord/Telegram; aus für Slack. Überschreiben mit
channels.<provider>.commands.nativeSkills.
commands.bashbooleandefault: falseAktiviert ! <cmd>, um Host-Shell-Befehle auszuführen (/bash <cmd>-Alias). Erfordert
tools.elevated-Allowlists.
commands.bashForegroundMsnumberdefault: 2000Wie lange Bash wartet, bevor in den Hintergrundmodus gewechselt wird (0 sendet
sofort in den Hintergrund).
commands.configbooleandefault: falseAktiviert /config (liest/schreibt openclaw.json). Nur für Owner.
commands.mcpbooleandefault: falseAktiviert /mcp (liest/schreibt von OpenClaw verwaltete MCP-Konfiguration unter mcp.servers). Nur für Owner.
commands.pluginsbooleandefault: falseAktiviert /plugins (Plugin-Erkennung/-Status plus Installieren und Aktivieren/Deaktivieren). Schreibzugriffe nur für Owner.
commands.debugbooleandefault: falseAktiviert /debug (nur laufzeitbezogene Konfigurationsüberschreibungen). Nur für Owner.
commands.restartbooleandefault: trueAktiviert /restart und Gateway-Neustart-Toolaktionen.
commands.ownerAllowFromstring[]Explizite Owner-Allowlist für Befehlsoberflächen, die nur Owner verwenden dürfen. Getrennt von
commands.allowFrom und DM-Kopplungszugriff.
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9ImNoYW5uZWxzLjxjaGFubmVs
.commands.enforceOwnerForCommands" type="boolean" default="false">
Pro Channel: erfordert Owner-Identität für Befehle, die nur Owner verwenden dürfen. Wenn true,
muss der Absender commands.ownerAllowFrom entsprechen oder den internen operator.admin-
Scope besitzen. Ein Wildcard-Eintrag in allowFrom ist nicht ausreichend.
commands.ownerDisplay"raw" | "hash"Steuert, wie Owner-IDs im System-Prompt angezeigt werden.
commands.ownerDisplaySecretstringHMAC-Secret, das bei commands.ownerDisplay: "hash" verwendet wird.
commands.allowFromobjectProvider-spezifische Allowlist für Befehlsautorisierung. Wenn konfiguriert, ist sie die
einzige Autorisierungsquelle für Befehle und Direktiven. Verwenden Sie "*" für einen
globalen Standard; Provider-spezifische Schlüssel überschreiben ihn.
commands.useAccessGroupsbooleandefault: trueErzwingt Allowlists/Richtlinien für Befehle, wenn commands.allowFrom nicht gesetzt ist.
Befehlsliste
Befehle stammen aus drei Quellen:
- Core-Built-ins:
src/auto-reply/commands-registry.shared.ts - Generierte Dock-Befehle:
src/auto-reply/commands-registry.data.ts - Plugin-Befehle: Plugin-
registerCommand()-Aufrufe
Die Verfügbarkeit hängt von Konfigurationsflags, Channel-Oberfläche und installierten/aktivierten Plugins ab.
Core-Befehle
Sitzungen und Läufe
| Befehl | Beschreibung |
|---|---|
/new [model] |
Archiviert die aktuelle Sitzung und startet eine neue |
/reset [soft [message]] |
Setzt die aktuelle Sitzung an Ort und Stelle zurück. soft behält das Transkript, verwirft wiederverwendete CLI-Backend-Sitzungs-IDs und führt den Start erneut aus |
/name <title> |
Benennt die aktuelle Sitzung oder ändert ihren Namen. Lassen Sie den Titel weg, um den aktuellen Namen und einen Vorschlag zu sehen |
/compact [instructions] |
Komprimiert den Sitzungskontext. Siehe Compaction |
/stop |
Bricht den aktuellen Lauf ab |
/session idle <duration|off> |
Verwaltet den Idle-Ablauf der Thread-Bindung |
/session max-age <duration|off> |
Verwaltet den Max-Age-Ablauf der Thread-Bindung |
/export-session [path] |
Exportiert die aktuelle Sitzung nach HTML. Alias: /export |
/export-trajectory [path] |
Exportiert ein JSONL-Trajektorien-Bundle für die aktuelle Sitzung. Alias: /trajectory |
Modell- und Laufsteuerung
| Befehl | Beschreibung |
|---|---|
/think <level|default> |
Legt die Denkstufe fest oder löscht die Sitzungsüberschreibung. Aliasse: /thinking, /t |
/verbose on|off|full |
Schaltet ausführliche Ausgabe um. Alias: /v |
/trace on|off |
Schaltet Plugin-Trace-Ausgabe für die aktuelle Sitzung um |
/fast [status|auto|on|off|default] |
Zeigt Fast Mode an, setzt ihn oder löscht ihn |
/reasoning [on|off|stream] |
Schaltet Sichtbarkeit von Reasoning um. Alias: /reason |
/elevated [on|off|ask|full] |
Schaltet erhöhten Modus um. Alias: /elev |
/exec host=<auto|sandbox|gateway|node> security=<deny|allowlist|full> ask=<off|on-miss|always> node=<id> |
Zeigt Exec-Standards an oder setzt sie |
/login [codex|openai|openai-codex] |
Koppelt Codex/OpenAI-Login aus einem privaten Chat oder einer Web-UI-Sitzung. Nur Owner/Admin |
/model [name|#|status] |
Zeigt das Modell an oder setzt es |
/models [provider] [page] [limit=<n>|all] |
Listet konfigurierte/auth-verfügbare Provider oder Modelle auf |
/queue <mode> |
Verwaltet das Queue-Verhalten aktiver Läufe. Siehe Queue und Queue-Steuerung |
/steer <message> |
Fügt Anleitung in den aktiven Lauf ein. Alias: /tell. Siehe Steer |
Sicherheit von verbose / trace / fast / reasoning
/verboseist für Debugging gedacht — lassen Sie es bei normaler Nutzung aus./tracezeigt nur Plugin-eigene Trace-/Debug-Zeilen; normales ausführliches Rauschen bleibt aus./fast auto|on|offspeichert eine Sitzungsüberschreibung; verwenden Sie in der Sessions UI die Optioninherit, um sie zu löschen./fastist Provider-spezifisch: OpenAI/Codex ordnen esservice_tier=priorityzu; direkte Anthropic-Anfragen ordnen esservice_tier=autooderstandard_onlyzu./reasoning,/verboseund/tracesind in Gruppenumgebungen riskant — sie können internes Reasoning oder Plugin-Diagnosen offenlegen. Lassen Sie sie in Gruppenchats aus.
Details zum Modellwechsel
/modelspeichert das neue Modell sofort dauerhaft in der Sitzung.- Wenn der Agent im Leerlauf ist, verwendet der nächste Lauf es sofort.
- Wenn ein Lauf aktiv ist, wird der Wechsel als ausstehend markiert und am nächsten sauberen Wiederholungspunkt angewendet.
Erkennung und Status
| Befehl | Beschreibung |
|---|---|
/help |
Zeigt die kurze Hilfezusammenfassung |
/commands |
Zeigt den generierten Befehlskatalog |
/tools [compact|verbose] |
Zeigt, was der aktuelle Agent jetzt verwenden kann |
/status |
Zeigt Ausführungs-/Laufzeitstatus, Gateway- und System-Uptime, Plugin-Gesundheit sowie Provider-Nutzung/-Kontingent |
/status plugins |
Zeigt detaillierte Plugin-Gesundheit: Ladefehler, Quarantänen, Channel-Fehler, Abhängigkeitsprobleme, Kompatibilitätshinweise |
/goal [status|start|pause|resume|complete|block|clear] ... |
Verwaltet das dauerhafte Ziel der aktuellen Sitzung |
/diagnostics [note] |
Supportbericht-Flow nur für Owner. Fragt jedes Mal nach Exec-Genehmigung |
/crestodian <request> |
Führt den Crestodian-Einrichtungs- und Reparaturhelfer aus einer Owner-DM aus |
/tasks |
Listet aktive/kürzliche Hintergrundaufgaben für die aktuelle Sitzung auf |
/context [list|detail|map|json] |
Erklärt, wie Kontext zusammengesetzt wird |
/whoami |
Zeigt Ihre Absender-ID. Alias: /id |
/usage off|tokens|full|reset|cost |
Steuert die Nutzungsfußzeile pro Antwort (reset/inherit/clear/default löscht die Sitzungsüberschreibung, sodass der konfigurierte Standard erneut geerbt wird) oder gibt eine lokale Kostenzusammenfassung aus |
Skills, Allowlists, Genehmigungen
| Befehl | Beschreibung |
|---|---|
/skill <name> [input] |
Führt ein Skill nach Namen aus |
/allowlist [list|add|remove] ... |
Verwaltet Allowlist-Einträge. Nur Text |
/approve <id> <decision> |
Löst Exec- oder Plugin-Genehmigungsaufforderungen auf |
/btw <question> |
Stellt eine Nebenfrage, ohne den Sitzungskontext zu ändern. Alias: /side. Siehe BTW |
Subagenten und ACP
| Befehl | Beschreibung |
|---|---|
/subagents list|log|info |
Subagenten-Läufe für die aktuelle Sitzung prüfen |
/acp spawn|cancel|steer|close|sessions|status|set-mode|set|cwd|permissions|timeout|model|reset-options|doctor|install|help |
ACP-Sitzungen und Runtime-Optionen verwalten. Runtime-Steuerungen erfordern eine externe Owner- oder interne Gateway-Admin-Identität |
/focus <target> |
Den aktuellen Discord-Thread oder das Telegram-Thema an ein Sitzungsziel binden |
/unfocus |
Die aktuelle Thread-Bindung entfernen |
/agents |
Thread-gebundene Agents für die aktuelle Sitzung auflisten |
Owner-only-Schreibzugriffe und Admin
| Befehl | Erfordert | Beschreibung |
|---|---|---|
/config show|get|set|unset |
commands.config: true |
openclaw.json lesen oder schreiben. Nur Owner |
/mcp show|get|set|unset |
commands.mcp: true |
Von OpenClaw verwaltete MCP-Serverkonfiguration lesen oder schreiben. Nur Owner |
/plugins list|inspect|show|get|install|enable|disable |
commands.plugins: true |
Plugin-Status prüfen oder ändern. Schreibzugriffe nur für Owner. Alias: /plugin |
/debug show|set|unset|reset |
commands.debug: true |
Reine Runtime-Konfigurationsüberschreibungen. Nur Owner |
/restart |
commands.restart: true (Standard) |
OpenClaw neu starten |
/send on|off|inherit |
Owner | Senderichtlinie festlegen |
Sprache, TTS, Kanalsteuerung
| Befehl | Beschreibung |
|---|---|
/tts on|off|status|chat|latest|provider|limit|summary|audio|help |
TTS steuern. Siehe TTS |
/activation mention|always |
Gruppenaktivierungsmodus festlegen |
/bash <command> |
Einen Host-Shell-Befehl ausführen. Alias: ! <command>. Erfordert commands.bash: true |
!poll [sessionId] |
Einen Bash-Hintergrundjob prüfen |
!stop [sessionId] |
Einen Bash-Hintergrundjob stoppen |
Dock-Befehle
Dock-Befehle schalten die Antwort-Route der aktiven Sitzung auf einen anderen verknüpften Kanal um. Siehe Kanal-Docking für Einrichtung und Fehlerbehebung.
Generiert aus Kanal-Plugins mit Unterstützung für native Befehle:
/dock-discord(Alias:/dock_discord)/dock-mattermost(Alias:/dock_mattermost)/dock-slack(Alias:/dock_slack)/dock-telegram(Alias:/dock_telegram)
Dock-Befehle erfordern session.identityLinks. Der Quellabsender und der Ziel-Peer
müssen in derselben Identitätsgruppe sein.
Gebündelte Plugin-Befehle
| Befehl | Beschreibung |
|---|---|
/dreaming [on|off|status|help] |
Memory-Dreaming umschalten (Owner oder Gateway-Admin). Siehe Dreaming |
/pair [qr|status|pending|approve|cleanup|notify] |
Gerätekopplung verwalten. Siehe Kopplung |
/phone status|arm ...|disarm |
Hochriskante Phone-Node-Befehle vorübergehend aktivieren |
/voice status|list|set <voiceId> |
Talk-Sprachkonfiguration verwalten. Nativer Discord-Name: /talkvoice |
/card ... |
LINE-Rich-Card-Voreinstellungen senden. Siehe LINE |
/codex status|models|threads|resume|compact|review|diagnostics|account|mcp|skills |
Das Codex-App-Server-Harness steuern. Siehe Codex-Harness |
Nur QQBot: /bot-ping, /bot-version, /bot-help, /bot-upgrade, /bot-logs
Skill-Befehle
Vom Benutzer aufrufbare Skills werden als Slash-Befehle bereitgestellt:
/skill <name> [input]funktioniert immer als generischer Einstiegspunkt.- Skills können sich als direkte Befehle registrieren (z. B.
/prosefür OpenProse). - Die native Skill-Befehlsregistrierung wird durch
commands.nativeSkillsundchannels.<provider>.commands.nativeSkillsgesteuert. - Namen werden auf
a-z0-9_bereinigt (max. 32 Zeichen); Kollisionen erhalten numerische Suffixe.
Skill-Befehlsdispatch
Standardmäßig werden Skill-Befehle als normale Anfrage an das Modell weitergeleitet.
Skills können command-dispatch: tool deklarieren, um direkt an ein Tool
weiterzuleiten (deterministisch, ohne Modellbeteiligung). Beispiel: /prose (OpenProse-Plugin)
— siehe OpenProse.
Argumente nativer Befehle
Discord verwendet Autovervollständigung für dynamische Optionen und Button-Menüs, wenn erforderliche
Argumente fehlen. Telegram und Slack zeigen ein Button-Menü für Befehle mit
Auswahlmöglichkeiten. Dynamische Auswahlmöglichkeiten werden gegen das Ziel-Sitzungsmodell aufgelöst, sodass modell-
spezifische Optionen wie /think-Stufen der /model-Überschreibung der Sitzung folgen.
/tools — was der Agent jetzt nutzen kann
/tools beantwortet eine Runtime-Frage: was dieser Agent genau jetzt in dieser
Unterhaltung nutzen kann — keinen statischen Konfigurationskatalog.
/tools # kompakte Ansicht/tools verbose # mit kurzen BeschreibungenErgebnisse sind sitzungsbezogen. Änderungen an Agent, Kanal, Thread, Absender- Autorisierung oder Modell können die Ausgabe ändern. Verwenden Sie zum Bearbeiten von Profilen und Überschreibungen das Tools-Panel der Control UI oder Konfigurationsoberflächen.
/model — Modellauswahl
/model # Modellauswahl anzeigen/model list # identisch/model 3 # nach Nummer aus der Auswahl wählen/model openai/gpt-5.4/model opus@anthropic:default/model default # Modellauswahl der Sitzung löschen/model status # Detailansicht mit Endpunkt und API-ModusIn Discord öffnen /model und /models eine interaktive Auswahl mit Provider- und
Modell-Dropdowns. Die Auswahl berücksichtigt agents.defaults.models, einschließlich
provider/*-Einträge.
/config — Konfigurationsschreibzugriffe auf Datenträger
/config show/config show messages.responsePrefix/config get messages.responsePrefix/config set messages.responsePrefix="[openclaw]"/config unset messages.responsePrefixDie Konfiguration wird vor dem Schreiben validiert. Ungültige Änderungen werden abgelehnt. /config-
Aktualisierungen bleiben über Neustarts hinweg erhalten.
/mcp — MCP-Serverkonfiguration
/mcp show/mcp show context7/mcp set context7={"command":"uvx","args":["context7-mcp"]}/mcp unset context7/mcp speichert Konfiguration in der OpenClaw-Konfiguration, nicht in Projektsettings eingebetteter Agents.
/debug — reine Runtime-Überschreibungen
/debug show/debug set messages.responsePrefix="[openclaw]"/debug set channels.whatsapp.allowFrom=["+1555","+4477"]/debug unset messages.responsePrefix/debug reset/plugins — Plugin-Verwaltung
/plugins/plugins list/plugin show context7/plugins enable context7/plugins disable context7/plugins install ./path/to/plugin/plugins enable|disable aktualisiert die Plugin-Konfiguration und lädt die Gateway-
Plugin-Runtime für neue Agent-Durchläufe neu. /plugins install startet verwaltete
Gateways automatisch neu, weil sich Plugin-Quellmodule geändert haben.
/trace — Plugin-Trace-Ausgabe
/trace # aktuellen Trace-Status anzeigen/trace on/trace off/trace zeigt sitzungsbezogene Plugin-Trace-/Debug-Zeilen ohne vollständigen Verbose-
Modus. Es ersetzt nicht /debug (Runtime-Überschreibungen) oder /verbose (normale
Tool-Ausgabe).
/btw — Nebenfragen
/btw ist eine schnelle Nebenfrage zum aktuellen Sitzungskontext. Alias: /side.
/btw was machen wir gerade?/side was hat sich geändert, während der Hauptlauf weiterlief?Anders als eine normale Nachricht:
- Nutzt die aktuelle Sitzung als Hintergrundkontext.
- Wird in Codex-Harness-Sitzungen als ephemerer Codex-Nebenthread ausgeführt.
- Ändert den künftigen Sitzungskontext nicht.
- Wird nicht in die Transkripthistorie geschrieben.
Siehe BTW-Nebenfragen für das vollständige Verhalten.
Oberflächenhinweise
Sitzungs-Scope pro Oberfläche
- Textbefehle: laufen in der normalen Chatsitzung (DMs teilen
main, Gruppen haben ihre eigene Sitzung). - Native Discord-Befehle:
agent:<agentId>:discord:slash:<userId> - Native Slack-Befehle:
agent:<agentId>:slack:slash:<userId>(Präfix konfigurierbar überchannels.slack.slashCommand.sessionPrefix) - Native Telegram-Befehle:
telegram:slash:<userId>(zielen überCommandTargetSessionKeyauf die Chatsitzung) /login codexsendet Gerätekopplungscodes nur über private Chats oder Web-UI-Antwortpfade. Telegram-Gruppen-/Themenaufrufe bitten den Owner stattdessen, dem Bot per DM zu schreiben./stopzielt auf die aktive Chatsitzung, um den aktuellen Lauf abzubrechen.
Slack-Besonderheiten
channels.slack.slashCommand unterstützt einen einzelnen Befehl im Stil von /openclaw.
Mit commands.native: true erstellen Sie einen Slack-Slash-Befehl pro integriertem
Befehl. Registrieren Sie /agentstatus (nicht /status), weil Slack
/status reserviert. Text-/status funktioniert weiterhin in Slack-Nachrichten.
Schneller Pfad und Inline-Kurzbefehle
- Reine Befehlsnachrichten von allowlisted Absendern werden sofort verarbeitet (Queue + Modell werden umgangen).
- Inline-Kurzbefehle (
/help,/commands,/status,/whoami) funktionieren auch eingebettet in normalen Nachrichten und werden entfernt, bevor das Modell den verbleibenden Text sieht. - Nicht autorisierte reine Befehlsnachrichten werden still ignoriert; Inline-
/...-Tokens werden als Klartext behandelt.
Argumenthinweise
- Befehle akzeptieren optional ein
:zwischen Befehl und Argumenten (/think: high,/send: on). /new <model>akzeptiert einen Modellalias,provider/modeloder einen Provider-Namen (Fuzzy-Match); wenn keine Übereinstimmung gefunden wird, wird der Text als Nachrichtentext behandelt./allowlist add|removeerfordertcommands.config: trueund berücksichtigt Kanal-configWrites.
Provider-Nutzung und Status
- Provider-Nutzung/-Kontingent (z. B. „Claude 80 % übrig“) wird in
/statusfür den aktuellen Modell-Provider angezeigt, wenn Nutzungserfassung aktiviert ist. - Token-/Cache-Zeilen in
/statuskönnen auf den neuesten Nutzungs-Eintrag im Transkript zurückfallen, wenn der Live-Sitzungs-Snapshot spärlich ist. - Ausführung vs. Runtime:
/statusmeldetExecutionfür den effektiven Sandbox-Pfad undRuntimedafür, wer die Sitzung ausführt:OpenClaw Default,OpenAI Codex, ein CLI-Backend oder ein ACP-Backend. - Tokens/Kosten pro Antwort: gesteuert durch
/usage off|tokens|full. /model statusbetrifft Modelle/Auth/Endpunkte, nicht Nutzung.