Skills
Comandi slash
Il Gateway gestisce i comandi inviati come messaggi autonomi che iniziano con /.
I comandi bash solo per l'host usano ! <cmd> (con /bash <cmd> come alias).
Quando una conversazione è associata a una sessione ACP, il testo normale viene inoltrato
all'harness ACP. I comandi di gestione del Gateway rimangono locali: /acp ... raggiunge sempre
il gestore dei comandi di OpenClaw, mentre /status e /unfocus rimangono locali ogni volta che
la gestione dei comandi è abilitata per l'interfaccia.
Tre tipi di comando
Messaggi autonomi /... gestiti dal Gateway. Devono essere inviati come
unico contenuto del messaggio.
/think, /fast, /verbose, /trace, /reasoning, /elevated,
/exec, /model, /queue — vengono rimossi dal messaggio prima che il modello
lo visualizzi. Mantengono le impostazioni della sessione quando vengono inviati da soli; fungono da suggerimenti inline
quando vengono inviati insieme ad altro testo.
/help, /commands, /status, /whoami — vengono eseguiti immediatamente e
rimossi prima che il modello visualizzi il testo rimanente. Solo per mittenti autorizzati.
Dettagli sul comportamento delle direttive
- Le direttive vengono rimosse dal messaggio prima che il modello lo visualizzi.
- Nei messaggi contenenti solo direttive (il messaggio contiene esclusivamente direttive), queste vengono mantenute nella sessione e ricevono una risposta di conferma.
- Nei messaggi di chat normale contenenti altro testo, fungono da suggerimenti inline e non mantengono le impostazioni della sessione.
- Le direttive si applicano solo ai mittenti autorizzati. Se
commands.allowFromè impostato, costituisce l'unico elenco consentiti utilizzato; altrimenti l'autorizzazione deriva dagli elenchi consentiti/associazioni del canale e dacommands.useAccessGroups. Per i mittenti non autorizzati, le direttive vengono trattate come testo normale.
Configurazione
{ 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: trueAbilita l'analisi di /... nei messaggi di chat. Nelle interfacce prive di comandi nativi
(WhatsApp, WebChat, Signal, iMessage, Google Chat, Microsoft Teams), i comandi
testuali funzionano anche quando l'opzione è impostata su false.
commands.nativeboolean | "auto"default: "auto"Registra i comandi nativi. Modalità automatica: attiva per Discord/Telegram; disattiva per Slack;
ignorata per i provider privi di supporto nativo. È possibile sovrascriverla per ciascun canale con
channels.<provider>.commands.native. Su Discord, false evita la registrazione dei comandi slash;
i comandi registrati in precedenza possono rimanere visibili fino alla loro rimozione.
commands.nativeSkillsboolean | "auto"default: "auto"Registra in modo nativo i comandi delle Skills quando supportati. Modalità automatica: attiva per
Discord/Telegram; disattiva per Slack. È possibile sovrascriverla con
channels.<provider>.commands.nativeSkills.
commands.bashbooleandefault: falseAbilita ! <cmd> per eseguire comandi della shell dell'host (alias /bash <cmd>). Richiede
gli elenchi consentiti tools.elevated.
commands.bashForegroundMsnumberdefault: 2000Durata dell'attesa di bash prima del passaggio alla modalità in background (0 passa
immediatamente in background).
commands.configbooleandefault: falseAbilita /config (legge/scrive openclaw.json). Solo per il proprietario.
commands.mcpbooleandefault: falseAbilita /mcp (legge/scrive la configurazione MCP gestita da OpenClaw in mcp.servers). Solo per il proprietario.
commands.pluginsbooleandefault: falseAbilita /plugins (rilevamento/stato dei plugin, oltre a installazione e attivazione/disattivazione). Le operazioni di scrittura sono riservate al proprietario.
commands.debugbooleandefault: falseAbilita /debug (sostituzioni della configurazione valide solo durante l'esecuzione). Solo per il proprietario.
commands.restartbooleandefault: trueAbilita /restart e le richieste di riavvio esterne SIGUSR1.
commands.ownerAllowFromstring[]Elenco consentiti esplicito del proprietario per le interfacce di comando riservate al proprietario. Separato da
commands.allowFrom e dall'accesso tramite associazione dei messaggi diretti.
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9ImNoYW5uZWxzLjxjaGFubmVs
.commands.enforceOwnerForCommands" type="boolean" default="false">
Per canale: richiede l'identità del proprietario per i comandi riservati al proprietario. Quando true,
il mittente deve corrispondere a commands.ownerAllowFrom o disporre dell'ambito interno operator.admin.
Una voce jolly allowFrom non è sufficiente.
commands.ownerDisplay"raw" | "hash"Controlla il modo in cui gli ID del proprietario vengono visualizzati nel prompt di sistema.
commands.ownerDisplaySecretstringSegreto HMAC utilizzato quando commands.ownerDisplay: "hash".
commands.allowFromobjectElenco consentiti per provider per l'autorizzazione dei comandi. Quando è configurato, costituisce
l'unica fonte di autorizzazione per comandi e direttive. Utilizzare "*" come
valore predefinito globale; le chiavi specifiche dei provider lo sovrascrivono.
commands.useAccessGroupsbooleandefault: trueApplica gli elenchi consentiti/le policy ai comandi quando commands.allowFrom non è impostato.
Elenco dei comandi
I comandi provengono da tre fonti:
- Comandi integrati principali:
src/auto-reply/commands-registry.shared.ts - Comandi dock generati:
src/auto-reply/commands-registry.data.ts - Comandi dei plugin: chiamate
registerCommand()dei plugin
La disponibilità dipende dai flag di configurazione, dall'interfaccia del canale e dai plugin installati/abilitati.
Comandi principali
Sessioni ed esecuzioni
| Comando | Descrizione |
|---|---|
/new [model] |
Archivia la sessione corrente e ne avvia una nuova |
/reset [soft [message]] |
Reimposta sul posto la sessione corrente. soft conserva la trascrizione, elimina gli ID di sessione riutilizzati del backend CLI ed esegue nuovamente l'avvio |
/name <title> |
Assegna o modifica il nome della sessione corrente. Omettere il titolo per visualizzare il nome corrente e un suggerimento |
/compact [instructions] |
Compatta il contesto della sessione. Consultare Compaction |
/stop |
Interrompe l'esecuzione corrente |
/session idle <duration|off> |
Gestisce la scadenza per inattività dell'associazione al thread |
/session max-age <duration|off> |
Gestisce la scadenza per età massima dell'associazione al thread |
/export-session [path] |
Solo per il proprietario. Esporta la sessione corrente in HTML all'interno dell'area di lavoro. Alias: /export |
/export-trajectory [path] |
Esporta un pacchetto della traiettoria JSONL per la sessione corrente. Alias: /trajectory |
I percorsi /export-session espliciti sostituiscono i file esistenti all'interno
dell'area di lavoro. Omettere il percorso per generare un nome file che eviti le collisioni.
Controlli del modello e dell'esecuzione
| Comando | Descrizione |
|---|---|
/think <level|default> |
Imposta il livello di elaborazione o cancella la sostituzione della sessione. Alias: /thinking, /t |
/verbose on|off|full |
Attiva o disattiva l'output dettagliato. Alias: /v |
/trace on|off |
Attiva o disattiva l'output di traccia dei plugin per la sessione corrente |
/fast [status|auto|on|off|default] |
Mostra, imposta o disattiva la modalità rapida |
/reasoning [on|off|stream] |
Attiva o disattiva la visibilità del ragionamento. Alias: /reason |
/elevated [on|off|ask|full] |
Attiva o disattiva la modalità con privilegi elevati. Alias: /elev |
/exec host=<auto|sandbox|gateway|node> security=<deny|allowlist|full> ask=<off|on-miss|always> node=<id> |
Mostra o imposta i valori predefiniti di esecuzione |
/login [codex|openai|openai-codex] |
Associa l'accesso Codex/OpenAI da una chat privata o da una sessione dell'interfaccia Web. Solo per proprietari/amministratori |
/model [name|#|status] |
Mostra o imposta il modello |
/models [provider] [page] [limit=<n>|all] |
Elenca i provider o i modelli configurati/disponibili per l'autenticazione |
/queue <mode> |
Gestisce il comportamento della coda delle esecuzioni attive. Consultare Coda e Controllo della coda |
/steer <message> |
Inserisce indicazioni nell'esecuzione attiva. Alias: /tell. Consultare Controllo |
Sicurezza di output dettagliato / traccia / modalità rapida / ragionamento
/verboseè destinato al debug: mantenerlo disattivato durante l'uso normale./tracemostra solo le righe di traccia/debug appartenenti ai plugin; il normale output dettagliato rimane disattivato./fast auto|on|offmantiene una sostituzione della sessione; utilizzare l'opzioneinheritdell'interfaccia Sessioni per cancellarla./fastè specifico del provider: OpenAI/Codex lo mappano aservice_tier=priority; le richieste Anthropic dirette lo mappano aservice_tier=autoostandard_only./reasoning,/verbosee/tracecomportano rischi nei contesti di gruppo: potrebbero rivelare ragionamenti interni o diagnostica dei plugin. Mantenerli disattivati nelle chat di gruppo.
Dettagli sul cambio di modello
/modelmantiene immediatamente il nuovo modello nella sessione.- Se l'agente è inattivo, l'esecuzione successiva lo utilizza immediatamente.
- Se un'esecuzione è attiva, il cambio viene contrassegnato come in sospeso e applicato al successivo punto di nuovo tentativo pulito.
Rilevamento e stato
| Comando | Descrizione |
|---|---|
/help |
Mostra il riepilogo breve della guida |
/commands |
Mostra il catalogo dei comandi generato |
/tools [compact|verbose] |
Mostra ciò che l'agente corrente può utilizzare in questo momento |
/status |
Mostra lo stato dell'esecuzione/runtime, il tempo di attività del Gateway e del sistema, l'integrità dei plugin, nonché l'utilizzo/la quota del provider |
/status plugins |
Mostra informazioni dettagliate sull'integrità dei plugin: errori di caricamento, quarantene, errori dei plugin dei canali, problemi di dipendenze, avvisi di compatibilità. Richiede commands.plugins: true |
/goal [status|start|edit|pause|resume|complete|block|clear] ... |
Gestisce l'obiettivo persistente della sessione corrente |
/diagnostics [note] |
Flusso del rapporto di supporto riservato al proprietario. Richiede ogni volta l'approvazione per l'esecuzione |
/openclaw <request> |
Esegue l'assistente di configurazione e riparazione di OpenClaw da un messaggio diretto del proprietario |
/tasks |
Elenca le attività in background attive/recenti per la sessione corrente |
/context [list|detail|map|json] |
Spiega come viene assemblato il contesto |
/whoami |
Mostra l'ID del mittente. Alias: /id |
/usage off|tokens|full|reset|cost |
Controlla il piè di pagina sull'utilizzo per ciascuna risposta (reset/inherit/clear/default cancella la sostituzione della sessione per ereditare nuovamente il valore predefinito configurato) oppure stampa un riepilogo locale dei costi |
Skills, elenchi di autorizzazione, approvazioni
| Comando | Descrizione |
|---|---|
/skill <name> [input] |
Esegue una skill per nome |
/learn [request] |
Crea una bozza di una skill revisionabile dalla conversazione corrente o dalle fonti indicate tramite Skill Workshop |
/allowlist [list|add|remove] ... |
Gestisce le voci dell'elenco di autorizzazione. Solo testo |
/approve <id> <decision> |
Risolve le richieste di approvazione di exec o dei plugin |
/btw <question> |
Pone una domanda secondaria senza modificare il contesto della sessione. Alias: /side. Consultare BTW |
Subagenti e ACP
| Comando | Descrizione |
|---|---|
/subagents list|log|info |
Esamina le esecuzioni dei subagenti per la sessione corrente |
/acp spawn|cancel|steer|close|sessions|status|set-mode|set|cwd|permissions|timeout|model|reset-options|doctor|install|help |
Gestisce le sessioni ACP e le opzioni di runtime. I controlli del runtime richiedono l'identità del proprietario esterno o dell'amministratore interno del Gateway |
/focus <target> |
Associa il thread Discord o l'argomento Telegram corrente a una destinazione di sessione |
/unfocus |
Rimuove l'associazione del thread corrente |
/agents |
Elenca gli agenti associati a thread per la sessione corrente |
Scritture e amministrazione riservate al proprietario
| Comando | Requisiti | Descrizione |
|---|---|---|
/config show|get|set|unset |
commands.config: true |
Legge o scrive openclaw.json. Solo proprietario |
/mcp show|get|set|unset |
commands.mcp: true |
Legge o scrive la configurazione dei server MCP gestita da OpenClaw. Solo proprietario |
/plugins list|inspect|show|get|install|enable|disable |
commands.plugins: true |
Esamina o modifica lo stato dei plugin. Le scritture sono riservate al proprietario. Alias: /plugin |
/debug show|set|unset|reset |
commands.debug: true |
Sostituzioni della configurazione solo per il runtime. Solo proprietario |
/restart |
commands.restart: true (predefinito) |
Riavvia OpenClaw |
/send on|off|inherit |
proprietario | Imposta i criteri di invio |
Voce, TTS, controllo del canale
| Comando | Descrizione |
|---|---|
/tts on|off|status|chat|latest|provider|limit|summary|audio|help |
Controlla il TTS. Consultare TTS |
/activation mention|always |
Imposta la modalità di attivazione dei gruppi |
/bash <command> |
Esegue un comando della shell dell'host. Alias: ! <command>. Richiede commands.bash: true |
!poll [sessionId] |
Controlla un processo bash in background |
!stop [sessionId] |
Arresta un processo bash in background |
Comandi di aggancio
I comandi di aggancio spostano il percorso di risposta della sessione attiva su un altro canale collegato. Per la configurazione e la risoluzione dei problemi, consultare Aggancio dei canali.
Generati dai plugin dei canali con supporto per i comandi nativi:
/dock-discord(alias:/dock_discord)/dock-mattermost(alias:/dock_mattermost)/dock-slack(alias:/dock_slack)/dock-telegram(alias:/dock_telegram)
I comandi di aggancio richiedono session.identityLinks. Il mittente di origine e il peer di destinazione
devono appartenere allo stesso gruppo di identità.
Comandi dei plugin inclusi
| Comando | Descrizione |
|---|---|
/dreaming [on|off|status|help] |
Attiva o disattiva il Dreaming della memoria (proprietario o amministratore del Gateway). Consultare Dreaming |
/pair [qr|status|pending|approve|cleanup|notify] |
Gestisce l'associazione dei dispositivi. Consultare Associazione |
/phone status|arm ...|disarm |
Abilita temporaneamente i comandi ad alto rischio del Node (fotocamera/schermo/computer/scritture). Consultare Uso del computer |
/voice status|list|set <voiceId> |
Gestisce la configurazione vocale di Talk. Nome nativo di Discord: /talkvoice |
/card ... |
Invia i modelli predefiniti di schede avanzate LINE. Consultare LINE |
/codex <action> ... |
Associa, controlla ed esamina l'harness dell'app-server Codex (stato, thread, ripresa, modello, modalità rapida, autorizzazioni, compattazione, revisione, MCP, skill e altro). Consultare Harness Codex |
Solo QQBot: /bot-ping, /bot-version, /bot-help, /bot-upgrade, /bot-logs
Comandi delle skill
Le skill richiamabili dagli utenti sono esposte come comandi slash:
/skill <name> [input]funziona sempre come punto di ingresso generico.- Le Skills possono registrarsi come comandi diretti (ad esempio
/proseper OpenProse). - La registrazione dei comandi nativi delle skill è controllata da
commands.nativeSkillsechannels.<provider>.commands.nativeSkills. - I nomi vengono normalizzati in
a-z0-9_(massimo 32 caratteri); in caso di collisione vengono aggiunti suffissi numerici.
Smistamento dei comandi delle skill
Per impostazione predefinita, i comandi delle skill vengono inoltrati al modello come una normale richiesta.
Le Skills possono dichiarare command-dispatch: tool per inoltrare direttamente a uno strumento
(in modo deterministico, senza coinvolgere il modello). Esempio: /prose (plugin OpenProse)
— consultare OpenProse.
Argomenti dei comandi nativi
Discord utilizza il completamento automatico per le opzioni dinamiche e i menu a pulsanti quando vengono omessi
gli argomenti obbligatori. Telegram e Slack mostrano un menu a pulsanti per i comandi con
opzioni. Le opzioni dinamiche vengono risolte rispetto al modello della sessione di destinazione, quindi le opzioni
specifiche del modello, come i livelli /think, seguono la sostituzione /model della sessione.
/tools: ciò che l'agente può utilizzare ora
/tools risponde a una domanda sul runtime: ciò che questo agente può utilizzare in questo momento in questa
conversazione, non un catalogo statico della configurazione.
/tools # visualizzazione compatta/tools verbose # con brevi descrizioniI risultati sono circoscritti alla sessione. La modifica dell'agente, del canale, del thread, dell'autorizzazione del mittente o del modello può modificare l'output. Per modificare i profili e le sostituzioni, utilizzare il pannello Strumenti della Control UI o le superfici di configurazione.
/model: selezione del modello
/model # mostra il selettore del modello/model list # equivalente/model 3 # seleziona per numero dal selettore/model openai/gpt-5.4/model opus@anthropic:default/model default # cancella la selezione del modello della sessione/model status # visualizzazione dettagliata con endpoint e modalità APISu Discord, /model e /models aprono un selettore interattivo con menu a discesa per provider e
modello. Il selettore rispetta agents.defaults.models, incluse le
voci provider/*.
/config: scritture della configurazione su disco
/config show/config show messages.responsePrefix/config get messages.responsePrefix/config set messages.responsePrefix="[openclaw]"/config unset messages.responsePrefixLa configurazione viene convalidata prima della scrittura. Le modifiche non valide vengono rifiutate. Gli aggiornamenti di /config
persistono dopo i riavvii.
/mcp: configurazione dei server MCP
/mcp show/mcp show context7/mcp set context7={"command":"uvx","args":["context7-mcp"]}/mcp unset context7/mcp memorizza la configurazione nella configurazione di OpenClaw, non nelle impostazioni del progetto dell'agente incorporato.
/mcp show oscura i campi contenenti credenziali, i valori dei flag riconosciuti relativi alle credenziali
e gli argomenti noti con formato simile a un segreto. Quando viene eseguito da un gruppo, la
configurazione viene inviata privatamente al proprietario; se non è disponibile alcun percorso privato verso il proprietario,
il comando termina in modo sicuro e chiede al proprietario di riprovare da una chat
diretta.
/debug: sostituzioni solo per il runtime
/debug show/debug set messages.responsePrefix="[openclaw]"/debug set channels.whatsapp.allowFrom=["+1555","+4477"]/debug unset messages.responsePrefix/debug reset/plugins: gestione dei plugin
/plugins/plugins list/plugin show context7/plugins enable context7/plugins disable context7/plugins install clawhub:<package>/plugins install npm:@openclaw/<official-package>/plugins install npm:<package> --force/plugins install git:<repository>@<ref> --force/plugins enable|disable aggiorna la configurazione dei plugin e ricarica a caldo il runtime dei
plugin del Gateway per i nuovi turni dell'agente. /plugins install riavvia automaticamente i
Gateway gestiti perché i moduli sorgente dei plugin sono cambiati. Le installazioni attendibili da ClawHub
e dal catalogo ufficiale non richiedono conferme aggiuntive. Le origini arbitrarie npm,
git, archivio, npm-pack: e percorso locale mostrano un avviso sulla provenienza e
richiedono un --force finale dopo la verifica dell'origine. Questo flag conferma
l'origine e consente di sostituire un'installazione esistente; non aggira
security.installPolicy né i controlli di sicurezza del programma di installazione. Le versioni di ClawHub con
avvisi di rischio richiedono comunque il flag separato, disponibile solo nella shell,
--acknowledge-clawhub-risk. Anche le installazioni da marketplace, collegate e bloccate a una versione
rimangono disponibili solo nella shell.
/trace: output di tracciamento dei plugin
/trace # mostra lo stato corrente del tracciamento/trace on/trace off/trace mostra le righe di tracciamento/debug dei plugin circoscritte alla sessione senza attivare la modalità
completamente dettagliata. Non sostituisce /debug (sostituzioni del runtime) né /verbose (normale
output degli strumenti).
/btw: domande secondarie
/btw è una domanda secondaria rapida sul contesto della sessione corrente. Alias: /side.
/btw che cosa stiamo facendo in questo momento?/side che cosa è cambiato mentre l'esecuzione principale proseguiva?A differenza di un normale messaggio:
- Utilizza la sessione corrente come contesto di riferimento.
- Nelle sessioni dell'harness Codex, viene eseguita come thread secondario temporaneo di Codex.
- Non modifica il contesto futuro della sessione.
- Non viene scritta nella cronologia della trascrizione.
Per il comportamento completo, consultare Domande secondarie BTW.
Note sulle superfici
Ambito della sessione per superficie
- Comandi di testo: vengono eseguiti nella normale sessione di chat (i messaggi diretti condividono
main, i gruppi hanno una sessione propria). - Comandi nativi di Discord:
agent:<agentId>:discord:slash:<userId> - Comandi nativi di Slack:
agent:<agentId>:slack:slash:<userId>(prefisso configurabile tramitechannels.slack.slashCommand.sessionPrefix) - Comandi nativi di Telegram:
telegram:slash:<userId>(ha come destinazione la sessione di chat tramiteCommandTargetSessionKey) /login codexinvia i codici di associazione dei dispositivi esclusivamente tramite chat privata o percorsi di risposta della Web UI. Le invocazioni da gruppi/argomenti Telegram chiedono invece al proprietario di inviare un messaggio diretto al bot./stopha come destinazione la sessione di chat attiva per interrompere l'esecuzione corrente.
Specificità di Slack
channels.slack.slashCommand supporta un singolo comando in stile /openclaw.
Con commands.native: true, creare un comando slash di Slack per ogni comando
integrato. Registrare /agentstatus (non /status) perché Slack riserva
/status. Il testo /status continua a funzionare nei messaggi di Slack.
Percorso rapido e scorciatoie inline
- I messaggi contenenti solo comandi provenienti da mittenti inclusi nell'elenco consentito vengono gestiti immediatamente (ignorando coda + modello).
- Le scorciatoie inline (
/help,/commands,/status,/whoami) funzionano anche se incorporate nei messaggi normali e vengono rimosse prima che il modello veda il testo rimanente. - I messaggi non autorizzati contenenti solo comandi vengono ignorati senza alcuna notifica; i token inline
/...vengono trattati come testo normale.
Note sugli argomenti
- I comandi accettano un
:facoltativo tra il comando e gli argomenti (/think: high,/send: on). /new <model>accetta un alias del modello,provider/modelo il nome di un provider (corrispondenza approssimativa); se non viene trovata alcuna corrispondenza, il testo viene trattato come corpo del messaggio./allowlist add|removerichiedecommands.config: truee rispetta il valoreconfigWritesdel canale.
Utilizzo e stato del provider
- Utilizzo/quota del provider (ad es. "Claude: 80% rimanente") viene visualizzato in
/statusper il provider del modello corrente quando il monitoraggio dell'utilizzo è abilitato. - Le righe relative a token/cache in
/statuspossono ricorrere alla voce di utilizzo più recente della trascrizione quando l'istantanea della sessione attiva contiene pochi dati. - Esecuzione e runtime:
/statusindicaExecutionper il percorso effettivo della sandbox eRuntimeper indicare chi esegue la sessione:OpenClaw Default,OpenAI Codex, un backend CLI o un backend ACP. - Token/costo per risposta: controllati da
/usage off|tokens|full. /model statusriguarda modelli/autenticazione/endpoint, non l'utilizzo.