Skills
Commandes slash
Le Gateway gère 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, et /status ainsi que /unfocus restent locales chaque fois que
la gestion des commandes est activée pour l’interface.
Trois types de commandes
Messages /... autonomes géré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 sont accompagnées d’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 une confirmation est renvoyée.
- 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/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 de /... 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 cette option est définie 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 dépourvus de prise en charge native. Remplacez ce réglage pour chaque canal avec
channels.<provider>.commands.native. Sur Discord, false ignore l’enregistrement des commandes
à barre oblique ; 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 tools.elevated.
commands.bashForegroundMsnumberdefault: 2000Durée pendant laquelle bash attend avant de passer en mode arrière-plan (0 passe
immédiatement en arrière-plan).
commands.configbooleandefault: falseActive /config (lit/écrit openclaw.json). Réservé au propriétaire.
commands.mcpbooleandefault: falseActive /mcp (lit/écrit la configuration MCP gérée par OpenClaw sous mcp.servers). Réservé au propriétaire.
commands.pluginsbooleandefault: falseActive /plugins (découverte/état des plugins, installation et activation/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 demandes de redémarrage externes SIGUSR1.
commands.ownerAllowFromstring[]Liste d’autorisation explicite du propriétaire pour les interfaces de commandes réservées au propriétaire. Distincte de
commands.allowFrom et de l’accès par association en message privé.
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9ImNoYW5uZWxzLjxjaGFubmVs
.commands.enforceOwnerForCommands" type="boolean" default="false">
Par canal : exige l’identité du propriétaire pour les commandes réservées au propriétaire. Lorsque true,
l’expéditeur doit correspondre à commands.ownerAllowFrom ou détenir la portée interne operator.admin.
Une entrée générique allowFrom n’est pas suffisante.
commands.ownerDisplay"raw" | "hash"Contrôle la manière dont les identifiants du propriétaire apparaissent dans l’invite 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/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 de plugins : appels
registerCommand()du plugin
Leur disponibilité dépend des options de configuration, de l’interface du canal et des plugins installés/activés.
Commandes principales
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 selon l’âge maximal de la liaison au fil de discussion |
/export-session [path] |
Réservé au propriétaire. Exporter la session actuelle au format HTML dans l’espace de travail. Alias : /export |
/export-trajectory [path] |
Exporter un paquet de trajectoire JSONL pour la session actuelle. Alias : /trajectory |
Les chemins /export-session explicites remplacent les fichiers existants dans
l’espace de travail. Omettre le chemin pour générer un nom de fichier sans risque de collision.
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 de 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 traçage des plugins pour la session actuelle |
/fast [status|auto|on|off|default] |
Afficher, définir ou désactiver 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. Propriétaire/administrateur uniquement |
/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/disponibles avec l’authentification actuelle |
/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 consignes dans l’exécution active. Alias : /tell. Voir Pilotage |
Sécurité des modes détaillé / traçage / rapide / raisonnement
/verboseest destiné au débogage — laissez-le désactivé en utilisation normale./tracene révèle que les lignes de traçage/débogage propres aux plugins ; les messages détaillés ordinaires restent désactivés./fast auto|on|offconserve un remplacement de session ; utilisez l’optioninheritde l’interface Sessions pour l’effacer./fastdépend du fournisseur : OpenAI/Codex l’associent àservice_tier=priority; les requêtes Anthropic directes l’associent àservice_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
/modelconserve immédiatement le nouveau modèle dans la session.- Si l’agent est inactif, l’exécution suivante l’utilise immédiatement.
- Si une exécution est active, le changement est marqué comme étant 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 immédiatement |
/status |
Afficher l’état de l’exécution/du runtime, la disponibilité du Gateway et du système, la santé des plugins, ainsi que l’utilisation/le quota du fournisseur |
/status plugins |
Afficher l’état détaillé des plugins : erreurs de chargement, mises en quarantaine, échecs des plugins de canal, problèmes de dépendances, 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] |
Flux de rapport d’assistance réservé au propriétaire. Demande à chaque fois l’approbation de l’exécution |
/openclaw <request> |
Exécuter l’assistant de configuration et de réparation d’OpenClaw depuis un message privé du propriétaire |
/tasks |
Répertorier les tâches d’arrière-plan actives/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 par réponse (reset/inherit/clear/default efface le remplacement de session pour hériter à nouveau de la valeur par défaut configurée) ou afficher un récapitulatif local des coûts |
Skills, listes d’autorisation, approbations
| Commande | Description |
|---|---|
/skill <name> [input] |
Exécuter une compétence par son nom |
/learn [request] |
Préparer une compétence révisable à partir de la conversation actuelle ou de sources nommées via l’atelier de compétences |
/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 secondaire sans modifier le contexte de la session. Alias : /side. Voir BTW |
Sous-agents et ACP
| Commande | Description |
|---|---|
/subagents list|log|info |
Examiner 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é du propriétaire externe ou de l’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 écrire openclaw.json. Réservé au propriétaire |
/mcp show|get|set|unset |
commands.mcp: true |
Lire ou écrire la configuration des serveurs MCP gérée par OpenClaw. Réservé au propriétaire |
/plugins list|inspect|show|get|install|enable|disable |
commands.plugins: true |
Examiner 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, synthèse vocale 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 Synthèse vocale |
/activation mention|always |
Définir le mode d’activation du groupe |
/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 font basculer la route 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 canal 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 Node à haut risque (caméra/écran/ordinateur/écritures). Voir Utilisation de l’ordinateur |
/voice status|list|set <voiceId> |
Gérer la configuration vocale de Talk. Nom natif Discord : /talkvoice |
/card ... |
Envoyer des préréglages de cartes enrichies LINE. Voir LINE |
/codex <action> ... |
Lier, piloter et examiner le harnais du serveur d’application Codex (état, fils, reprise, modèle, mode rapide, autorisations, Compaction, révision, MCP, Skills, etc.). Voir Harnais Codex |
QQBot uniquement : /bot-ping, /bot-version, /bot-help, /bot-upgrade, /bot-logs
Commandes de Skills
Les Skills invocables par l’utilisateur sont exposées comme commandes à barre oblique :
/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 en
a-z0-9_(32 caractères maximum) ; les collisions reçoivent des suffixes numériques.
Répartition 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 pour acheminer directement vers un outil
(de manière 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 les menus de boutons lorsque des
arguments obligatoires sont omis. Telegram et Slack affichent un menu de boutons pour les commandes comportant
des choix. Les choix dynamiques sont déterminés en fonction du modèle de la session cible ; les options propres
au modèle, telles que les niveaux /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 immédiatement dans cette
conversation — et non un catalogue statique de configuration.
/tools # vue compacte/tools verbose # avec de courtes descriptionsLes résultats sont limités à la session. Le changement d’agent, de canal, de fil, d’autorisation de l’expéditeur ou de modèle peut modifier la sortie. Pour modifier le profil et les remplacements, utilisez le panneau Tools 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 APISur Discord, /model et /models ouvrent un sélecteur interactif avec 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 la 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 /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 reconnues des options relatives aux identifiants
et les arguments présentant une forme connue de secret. Lorsqu’elle est exécutée depuis un groupe, la
configuration est envoyée en privé au propriétaire ; si aucune route privée 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 clawhub:<package>/plugins install npm:@openclaw/<official-package>/plugins install npm:<package> --force/plugins install git:<repository>@<ref> --force/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 des agents. /plugins install redémarre automatiquement les
Gateways gérés, car les modules sources des Plugins ont changé. Les installations ClawHub de confiance
et celles provenant du catalogue officiel ne nécessitent pas d’accusé de réception supplémentaire. Les sources npm,
git, d’archive, npm-pack: et de chemin local arbitraires affichent un avertissement de provenance et
nécessitent un --force final après examen de la source. Cette option confirme la prise en compte
de la source et autorise le remplacement d’une installation existante ; elle ne contourne ni
security.installPolicy ni les contrôles de sécurité du programme d’installation. Les versions ClawHub accompagnées
d’avertissements de risque nécessitent toujours l’option distincte, disponible uniquement dans le shell,
--acknowledge-clawhub-risk. Les installations issues de la place de marché, liées et épinglées
restent également limitées au shell.
/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 limitées à la session sans activer le mode
entièrement détaillé. Il ne remplace ni /debug (remplacements d’exécution), ni /verbose (sortie
normale des outils).
/btw : questions secondaires
/btw permet de poser rapidement une question secondaire sur le contexte de la session actuelle. Alias : /side.
/btw que faisons-nous actuellement ?/side qu’est-ce qui a changé pendant que l’exécution principale se poursuivait ?Contrairement à un message normal :
- Utilise la session actuelle comme contexte d’arrière-plan.
- Dans les sessions du harnais Codex, s’exécute comme un fil secondaire Codex éphémère.
- Ne modifie pas le contexte futur de la session.
- N’est pas écrit dans l’historique de la transcription.
Consultez Questions secondaires BTW pour connaître le comportement complet.
Remarques 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 possèdent leur propre session). - Commandes Discord natives :
agent:<agentId>:discord:slash:<userId> - Commandes Slack natives :
agent:<agentId>:slack:slash:<userId>(préfixe configurable viachannels.slack.slashCommand.sessionPrefix) - Commandes Telegram natives :
telegram:slash:<userId>(ciblent la session de conversation viaCommandTargetSessionKey) /login codexenvoie les codes d’association d’appareils uniquement par conversation privée ou via 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 en cours.
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 par commande
intégrée. Enregistrez /agentstatus (et non /status), car Slack réserve
/status. Le texte /status fonctionne toujours 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 le modèle).
- Les raccourcis intégrés (
/help,/commands,/status,/whoami) fonctionnent également lorsqu’ils sont incorporés dans 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.
Remarques sur les arguments
- Les commandes acceptent un
: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 la valeurconfigWritesdu canal.
Utilisation et état du fournisseur
- 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 de jetons/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 et 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. - Jetons/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.