Skills
Commandes à barre oblique
Le Gateway traite les commandes envoyées sous forme de messages autonomes commençant par /.
Les commandes bash réservées à l’hôte utilisent ! <cmd> (avec /bash <cmd> comme alias).
Lorsqu’une conversation est liée à une session ACP, le texte normal est acheminé vers le
harnais ACP. Les commandes de gestion du Gateway restent locales : /acp ... atteint
toujours le gestionnaire de commandes OpenClaw, tandis que /status et /unfocus restent
locales chaque fois que le traitement des commandes est activé pour l’interface.
Trois types de commandes
Messages /... autonomes traités par le Gateway. Ils doivent constituer
l’unique contenu du message.
/think, /fast, /verbose, /trace, /reasoning, /elevated,
/exec, /model, /queue — supprimées du message avant que le modèle
ne le voie. Elles conservent les paramètres de session lorsqu’elles sont envoyées seules
et servent d’indications intégrées lorsqu’elles accompagnent un autre texte.
/help, /commands, /status, /whoami — s’exécutent immédiatement et sont
supprimés avant que le modèle ne voie le texte restant. Expéditeurs autorisés uniquement.
Détails du comportement des directives
- Les directives sont supprimées du message avant que le modèle ne le voie.
- Dans les messages contenant uniquement des directives (le message ne contient que des directives), elles sont conservées dans la session et renvoient un accusé de réception.
- Dans les messages de discussion normale contenant un autre texte, elles servent d’indications intégrées et ne conservent pas les paramètres de session.
- Les directives ne s’appliquent qu’aux expéditeurs autorisés. Si
commands.allowFromest défini, il constitue l’unique liste d’autorisation utilisée ; sinon, l’autorisation provient des listes d’autorisation ou de l’association du canal, ainsi que decommands.useAccessGroups. Pour les expéditeurs non autorisés, les directives sont traitées comme du texte brut.
Configuration
{ 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: trueActive l’analyse des commandes /... dans les messages de discussion. Sur les interfaces dépourvues de commandes natives
(WhatsApp, WebChat, Signal, iMessage, Google Chat, Microsoft Teams), les commandes textuelles
fonctionnent même lorsque ce paramètre est défini sur false.
commands.nativeboolean | "auto"default: "auto"Enregistre les commandes natives. Mode automatique : activé pour Discord/Telegram, désactivé pour Slack ;
ignoré pour les fournisseurs sans prise en charge native. Remplacez ce réglage par canal avec
channels.<provider>.commands.native. Sur Discord, false ignore l’enregistrement des commandes slash ;
les commandes précédemment enregistrées peuvent rester visibles jusqu’à leur suppression.
commands.nativeSkillsboolean | "auto"default: "auto"Enregistre nativement les commandes de Skills lorsque cela est pris en charge. Mode automatique : activé pour
Discord/Telegram, désactivé pour Slack. Remplacez ce réglage avec
channels.<provider>.commands.nativeSkills.
commands.bashbooleandefault: falseActive ! <cmd> pour exécuter des commandes shell sur l’hôte (alias /bash <cmd>). Nécessite
les listes d’autorisation de tools.elevated.
commands.bashForegroundMsnumberdefault: 2000Durée pendant laquelle bash attend avant de passer en arrière-plan (0 passe
immédiatement en arrière-plan).
commands.configbooleandefault: falseActive /config (lecture/écriture de openclaw.json). Réservé au propriétaire.
commands.mcpbooleandefault: falseActive /mcp (lecture/écriture de la configuration MCP gérée par OpenClaw sous mcp.servers). Réservé au propriétaire.
commands.pluginsbooleandefault: falseActive /plugins (découverte et état des plugins, ainsi qu’installation, activation et désactivation). Écritures réservées au propriétaire.
commands.debugbooleandefault: falseActive /debug (remplacements de configuration limités à l’exécution). Réservé au propriétaire.
commands.restartbooleandefault: trueActive /restart et les actions de redémarrage du Gateway.
commands.ownerAllowFromstring[]Liste d’autorisation explicite du propriétaire pour les interfaces de commande qui lui sont réservées. Distincte de
commands.allowFrom et de l’accès par association aux messages privés.
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9ImNoYW5uZWxzLjxjaGFubmVs
.commands.enforceOwnerForCommands" type="boolean" default="false">
Par canal : exige l’identité du propriétaire pour les commandes qui lui sont réservées. Lorsque la valeur est true,
l’expéditeur doit correspondre à commands.ownerAllowFrom ou disposer de la portée interne operator.admin.
Une entrée générique dans allowFrom ne suffit pas.
commands.ownerDisplay"raw" | "hash"Contrôle la manière dont les identifiants des propriétaires apparaissent dans le prompt système.
commands.ownerDisplaySecretstringSecret HMAC utilisé lorsque commands.ownerDisplay: "hash".
commands.allowFromobjectListe d’autorisation par fournisseur pour l’autorisation des commandes. Lorsqu’elle est configurée, elle constitue
l’unique source d’autorisation pour les commandes et les directives. Utilisez "*" comme
valeur globale par défaut ; les clés propres aux fournisseurs la remplacent.
commands.useAccessGroupsbooleandefault: trueApplique les listes d’autorisation et les politiques aux commandes lorsque commands.allowFrom n’est pas défini.
Liste des commandes
Les commandes proviennent de trois sources :
- Commandes intégrées au cœur :
src/auto-reply/commands-registry.shared.ts - Commandes de dock générées :
src/auto-reply/commands-registry.data.ts - Commandes des Plugins : appels à
registerCommand()par les Plugins
La disponibilité dépend des indicateurs de configuration, de la surface du canal et des Plugins installés et activés.
Commandes du cœur
Sessions et exécutions
| Commande | Description |
|---|---|
/new [model] |
Archiver la session actuelle et en démarrer une nouvelle |
/reset [soft [message]] |
Réinitialiser la session actuelle sur place. soft conserve la transcription, supprime les identifiants de session réutilisés du backend CLI et relance le démarrage |
/name <title> |
Nommer ou renommer la session actuelle. Omettre le titre pour afficher le nom actuel et une suggestion |
/compact [instructions] |
Compacter le contexte de la session. Voir Compaction |
/stop |
Interrompre l’exécution actuelle |
/session idle <duration|off> |
Gérer l’expiration pour inactivité de la liaison au fil de discussion |
/session max-age <duration|off> |
Gérer l’expiration à l’âge maximal de la liaison au fil de discussion |
/export-session [path] |
Exporter la session actuelle au format HTML. Alias : /export |
/export-trajectory [path] |
Exporter un ensemble de trajectoires JSONL pour la session actuelle. Alias : /trajectory |
Contrôles du modèle et de l’exécution
| Commande | Description |
|---|---|
/think <level|default> |
Définir le niveau de réflexion ou effacer le remplacement propre à la session. Alias : /thinking, /t |
/verbose on|off|full |
Activer ou désactiver la sortie détaillée. Alias : /v |
/trace on|off |
Activer ou désactiver la sortie de trace du Plugin pour la session actuelle |
/fast [status|auto|on|off|default] |
Afficher, définir ou effacer le mode rapide |
/reasoning [on|off|stream] |
Activer ou désactiver la visibilité du raisonnement. Alias : /reason |
/elevated [on|off|ask|full] |
Activer ou désactiver le mode élevé. Alias : /elev |
/exec host=<auto|sandbox|gateway|node> security=<deny|allowlist|full> ask=<off|on-miss|always> node=<id> |
Afficher ou définir les valeurs par défaut d’exécution |
/login [codex|openai|openai-codex] |
Associer la connexion Codex/OpenAI depuis une discussion privée ou une session de l’interface Web. Réservé au propriétaire ou à l’administrateur |
/model [name|#|status] |
Afficher ou définir le modèle |
/models [provider] [page] [limit=<n>|all] |
Répertorier les fournisseurs ou modèles configurés ou disponibles pour l’authentification |
/queue <mode> |
Gérer le comportement de la file d’attente des exécutions actives. Voir File d’attente et Pilotage de la file d’attente |
/steer <message> |
Injecter des directives dans l’exécution active. Alias : /tell. Voir Pilotage |
Sécurité de verbose / trace / fast / reasoning
/verboseest destiné au débogage — laissez-le désactivé en utilisation normale./tracene révèle que les lignes de trace et de débogage propres aux Plugins ; les messages détaillés ordinaires restent désactivés./fast auto|on|offconserve un remplacement propre à la session ; utilisez l’optioninheritde l’interface Sessions pour l’effacer./fastdépend du fournisseur : OpenAI/Codex le traduit enservice_tier=priority; les requêtes directes à Anthropic le traduisent enservice_tier=autooustandard_only./reasoning,/verboseet/traceprésentent des risques dans les groupes — ils peuvent révéler le raisonnement interne ou les diagnostics des Plugins. Laissez-les désactivés dans les discussions de groupe.
Détails du changement de modèle
/modelenregistre immédiatement le nouveau modèle dans la session.- Si l’agent est inactif, la prochaine exécution l’utilise immédiatement.
- Si une exécution est en cours, le changement est marqué comme en attente et appliqué au prochain point de nouvelle tentative propre.
Découverte et état
| Commande | Description |
|---|---|
/help |
Afficher le résumé succinct de l’aide |
/commands |
Afficher le catalogue de commandes généré |
/tools [compact|verbose] |
Afficher ce que l’agent actuel peut utiliser à cet instant |
/status |
Afficher l’état de l’exécution et de l’environnement d’exécution, la durée de fonctionnement du Gateway et du système, l’état des plugins, ainsi que l’utilisation et le quota du fournisseur |
/status plugins |
Afficher l’état détaillé des plugins : erreurs de chargement, mises en quarantaine, défaillances des plugins de canaux, problèmes de dépendances et avis de compatibilité. Nécessite commands.plugins: true |
/goal [status|start|edit|pause|resume|complete|block|clear] ... |
Gérer l’objectif persistant de la session actuelle |
/diagnostics [note] |
Processus de rapport d’assistance réservé au propriétaire. Demande systématiquement l’autorisation d’exécution |
/crestodian <request> |
Exécuter l’assistant de configuration et de réparation Crestodian depuis un message privé du propriétaire |
/tasks |
Répertorier les tâches en arrière-plan actives ou récentes de la session actuelle |
/context [list|detail|map|json] |
Expliquer comment le contexte est assemblé |
/whoami |
Afficher votre identifiant d’expéditeur. Alias : /id |
/usage off|tokens|full|reset|cost |
Contrôler le pied de page d’utilisation de chaque réponse (reset/inherit/clear/default efface la valeur de remplacement de la session afin d’hériter à nouveau de la valeur par défaut configurée) ou afficher un résumé local des coûts |
Skills, listes d’autorisation et approbations
| Commande | Description |
|---|---|
/skill <name> [input] |
Exécuter une Skill par son nom |
/learn [request] |
Préparer une Skill révisable à partir de la conversation actuelle ou de sources nommées avec l’Atelier de Skills |
/allowlist [list|add|remove] ... |
Gérer les entrées de la liste d’autorisation. Texte uniquement |
/approve <id> <decision> |
Répondre aux demandes d’approbation d’exécution ou de plugin |
/btw <question> |
Poser une question annexe sans modifier le contexte de la session. Alias : /side. Voir BTW |
Sous-agents et ACP
| Commande | Description |
|---|---|
/subagents list|log|info |
Inspecter les exécutions des sous-agents pour la session actuelle |
/acp spawn|cancel|steer|close|sessions|status|set-mode|set|cwd|permissions|timeout|model|reset-options|doctor|install|help |
Gérer les sessions ACP et les options d’exécution. Les contrôles d’exécution nécessitent l’identité d’un propriétaire externe ou d’un administrateur interne du Gateway |
/focus <target> |
Lier le fil Discord ou le sujet Telegram actuel à une cible de session |
/unfocus |
Supprimer la liaison du fil actuel |
/agents |
Répertorier les agents liés au fil pour la session actuelle |
Écritures et administration réservées au propriétaire
| Commande | Prérequis | Description |
|---|---|---|
/config show|get|set|unset |
commands.config: true |
Lire ou modifier openclaw.json. Réservé au propriétaire |
/mcp show|get|set|unset |
commands.mcp: true |
Lire ou modifier la configuration des serveurs MCP gérés par OpenClaw. Réservé au propriétaire |
/plugins list|inspect|show|get|install|enable|disable |
commands.plugins: true |
Inspecter ou modifier l’état des plugins. Écritures réservées au propriétaire. Alias : /plugin |
/debug show|set|unset|reset |
commands.debug: true |
Remplacements de configuration limités à l’exécution. Réservé au propriétaire |
/restart |
commands.restart: true (par défaut) |
Redémarrer OpenClaw |
/send on|off|inherit |
propriétaire | Définir la stratégie d’envoi |
Voix, TTS et contrôle des canaux
| Commande | Description |
|---|---|
/tts on|off|status|chat|latest|provider|limit|summary|audio|help |
Contrôler la synthèse vocale. Voir TTS |
/activation mention|always |
Définir le mode d’activation des groupes |
/bash <command> |
Exécuter une commande shell sur l’hôte. Alias : ! <command>. Nécessite commands.bash: true |
!poll [sessionId] |
Vérifier une tâche bash en arrière-plan |
!stop [sessionId] |
Arrêter une tâche bash en arrière-plan |
Commandes d’ancrage
Les commandes d’ancrage basculent l’itinéraire de réponse de la session active vers un autre canal lié. Consultez Ancrage des canaux pour la configuration et le dépannage.
Générées à partir des plugins de canaux prenant en charge les commandes natives :
/dock-discord(alias :/dock_discord)/dock-mattermost(alias :/dock_mattermost)/dock-slack(alias :/dock_slack)/dock-telegram(alias :/dock_telegram)
Les commandes d’ancrage nécessitent session.identityLinks. L’expéditeur source et le pair cible
doivent appartenir au même groupe d’identités.
Commandes des plugins intégrés
| Commande | Description |
|---|---|
/dreaming [on|off|status|help] |
Activer ou désactiver le Dreaming de la mémoire (propriétaire ou administrateur du Gateway). Voir Dreaming |
/pair [qr|status|pending|approve|cleanup|notify] |
Gérer l’association des appareils. Voir Association |
/phone status|arm ...|disarm |
Autoriser temporairement les commandes à haut risque du Node (caméra/écran/ordinateur/écritures). Voir Utilisation de l’ordinateur |
/voice status|list|set <voiceId> |
Gérer la configuration de la voix Talk. Nom natif dans Discord : /talkvoice |
/card ... |
Envoyer des préréglages de cartes enrichies LINE. Voir LINE |
/codex <action> ... |
Lier, piloter et inspecter le banc d’essai du serveur d’application Codex (état, fils, reprise, modèle, mode rapide, autorisations, compactage, révision, MCP, Skills, etc.). Voir Banc d’essai Codex |
Exclusivement pour QQBot : /bot-ping, /bot-version, /bot-help, /bot-upgrade, /bot-logs
Commandes de Skills
Les Skills pouvant être invoquées par l’utilisateur sont exposées sous forme de commandes slash :
/skill <name> [input]fonctionne toujours comme point d’entrée générique.- Les Skills peuvent s’enregistrer comme commandes directes (par exemple
/prosepour OpenProse). - L’enregistrement natif des commandes de Skills est contrôlé par
commands.nativeSkillsetchannels.<provider>.commands.nativeSkills. - Les noms sont normalisés selon
a-z0-9_(32 caractères maximum) ; les collisions reçoivent des suffixes numériques.
Acheminement des commandes de Skills
Par défaut, les commandes de Skills sont acheminées vers le modèle comme une requête normale.
Les Skills peuvent déclarer command-dispatch: tool afin d’être acheminées directement vers un outil
(comportement déterministe, sans intervention du modèle). Exemple : /prose (plugin OpenProse)
— voir OpenProse.
Arguments des commandes natives
Discord utilise la saisie semi-automatique pour les options dynamiques et des menus de boutons lorsque des
arguments requis sont omis. Telegram et Slack affichent un menu de boutons pour les commandes proposant
des choix. Les choix dynamiques sont résolus en fonction du modèle de la session cible ; les options propres
au modèle, telles que les niveaux de /think, suivent donc le remplacement /model de la session.
/tools : ce que l’agent peut utiliser maintenant
/tools répond à une question d’exécution : ce que cet agent peut utiliser actuellement dans cette
conversation — et non un catalogue de configuration statique.
/tools # vue compacte/tools verbose # avec de brèves descriptionsLes résultats sont propres à la session. Changer d’agent, de canal, de fil, d’autorisation de l’expéditeur ou de modèle peut modifier la sortie. Pour modifier les profils et les remplacements, utilisez le panneau Outils de l’interface de contrôle ou les surfaces de configuration.
/model : sélection du modèle
/model # afficher le sélecteur de modèle/model list # identique/model 3 # sélectionner par numéro dans le sélecteur/model openai/gpt-5.4/model opus@anthropic:default/model default # effacer la sélection de modèle de la session/model status # vue détaillée avec le point de terminaison et le mode d’APIDans Discord, /model et /models ouvrent un sélecteur interactif comportant des listes déroulantes
de fournisseurs et de modèles. Le sélecteur respecte agents.defaults.models, y compris les
entrées provider/*.
/config : écritures de configuration sur disque
/config show/config show messages.responsePrefix/config get messages.responsePrefix/config set messages.responsePrefix="[openclaw]"/config unset messages.responsePrefixLa configuration est validée avant l’écriture. Les modifications non valides sont rejetées. Les mises à jour
effectuées avec /config persistent après les redémarrages.
/mcp : configuration des serveurs MCP
/mcp show/mcp show context7/mcp set context7={"command":"uvx","args":["context7-mcp"]}/mcp unset context7/mcp stocke la configuration dans celle d’OpenClaw, et non dans les paramètres de projet de l’agent intégré.
/mcp show masque les champs contenant des identifiants, les valeurs des options reconnues comme contenant
des identifiants et les arguments connus pour avoir la forme de secrets. Lorsqu’elle est exécutée depuis un groupe, la
configuration est envoyée en privé au propriétaire ; si aucun itinéraire privé vers le propriétaire n’est
disponible, la commande échoue de manière sécurisée et demande au propriétaire de réessayer depuis une
conversation directe.
/debug : remplacements limités à l’exécution
/debug show/debug set messages.responsePrefix="[openclaw]"/debug set channels.whatsapp.allowFrom=["+1555","+4477"]/debug unset messages.responsePrefix/debug reset/plugins : gestion des plugins
/plugins/plugins list/plugin show context7/plugins enable context7/plugins disable context7/plugins install ./path/to/plugin/plugins enable|disable met à jour la configuration des plugins et recharge à chaud l’environnement
d’exécution des plugins du Gateway pour les nouveaux tours d’agent. /plugins install redémarre
automatiquement les Gateways gérés, car les modules sources des plugins ont changé.
/trace : sortie de traçage des plugins
/trace # afficher l’état actuel du traçage/trace on/trace off/trace affiche les lignes de traçage et de débogage des plugins propres à la session sans activer le mode
entièrement détaillé. Cette commande ne remplace ni /debug (remplacements d’exécution) ni /verbose (sortie
normale des outils).
/btw : questions annexes
/btw permet de poser rapidement une question annexe sur le contexte de la session actuelle. Alias : /side.
/btw que faisons-nous actuellement ?/side qu’est-ce qui a changé pendant la poursuite de l’exécution principale ?Contrairement à un message normal :
- Utilise la session actuelle comme contexte d’arrière-plan.
- Dans les sessions du banc d’essai Codex, s’exécute comme un fil annexe Codex éphémère.
- Ne modifie pas le contexte futur de la session.
- N’est pas inscrit dans l’historique de la transcription.
Consultez Questions annexes BTW pour connaître le comportement complet.
Notes sur les surfaces
Portée des sessions selon la surface
- Commandes textuelles : s’exécutent dans la session de conversation normale (les messages privés partagent
main, les groupes disposent de leur propre session). - Commandes natives Discord :
agent:<agentId>:discord:slash:<userId> - Commandes natives Slack :
agent:<agentId>:slack:slash:<userId>(préfixe configurable avecchannels.slack.slashCommand.sessionPrefix) - Commandes natives Telegram :
telegram:slash:<userId>(ciblent la session de conversation au moyen deCommandTargetSessionKey) /login codexenvoie les codes d’association de l’appareil uniquement par conversation privée ou par les chemins de réponse de l’interface Web. Les appels depuis un groupe ou un sujet Telegram demandent plutôt au propriétaire d’envoyer un message privé au bot./stopcible la session de conversation active afin d’interrompre l’exécution actuelle.
Spécificités de Slack
channels.slack.slashCommand prend en charge une seule commande de type /openclaw.
Avec commands.native: true, créez une commande slash Slack pour chaque commande
intégrée. Enregistrez /agentstatus (et non /status), car Slack réserve
/status. La commande textuelle /status continue de fonctionner dans les messages Slack.
Chemin rapide et raccourcis intégrés
- Les messages contenant uniquement une commande et provenant d’expéditeurs figurant sur la liste d’autorisation sont traités immédiatement (sans passer par la file d’attente ni par le modèle).
- Les raccourcis intégrés (
/help,/commands,/status,/whoami) fonctionnent également au sein des messages normaux et sont retirés avant que le modèle ne voie le texte restant. - Les messages non autorisés contenant uniquement une commande sont ignorés silencieusement ; les jetons
/...intégrés sont traités comme du texte brut.
Notes sur les arguments
- Les commandes acceptent un caractère
:facultatif entre la commande et les arguments (/think: high,/send: on). /new <model>accepte un alias de modèle,provider/modelou un nom de fournisseur (correspondance approximative) ; en l’absence de correspondance, le texte est traité comme le corps du message./allowlist add|removenécessitecommands.config: trueet respecte le paramètre de canalconfigWrites.
Utilisation et état des fournisseurs
- Utilisation/quota du fournisseur (par exemple, « Claude : 80 % restants ») s’affiche dans
/statuspour le fournisseur du modèle actuel lorsque le suivi de l’utilisation est activé. - Les lignes relatives aux tokens/au cache dans
/statuspeuvent utiliser en dernier recours la dernière entrée d’utilisation de la transcription lorsque l’instantané de la session en direct contient peu d’informations. - Exécution ou environnement d’exécution :
/statusindiqueExecutionpour le chemin effectif du bac à sable etRuntimepour l’entité qui exécute la session :OpenClaw Default,OpenAI Codex, un moteur CLI ou un moteur ACP. - Tokens/coût par réponse : contrôlés par
/usage off|tokens|full. /model statusconcerne les modèles, l’authentification et les points de terminaison, et non l’utilisation.
Pages connexes
Fonctionnement de l’enregistrement et du contrôle d’accès des commandes slash des Skills.
Créez une Skill qui enregistre sa propre commande slash.
Posez des questions annexes sans modifier le contexte de la session.
Guidez l’agent pendant l’exécution avec /steer.