Tools
Niveaux de réflexion
Fonctionnement
- Directive intégrée dans tout corps de message entrant :
/t <level>,/think:<level>ou/thinking <level>. - Niveaux (alias) :
off | minimal | low | medium | high | xhigh | adaptive | max | ultra, correspondant approximativement à l’échelle classique de mots magiques d’Anthropic « think » < « think hard » < « think harder » < « ultrathink » :- minimal ~ « réfléchir »
- low ~ « réfléchir sérieusement »
- medium ~ « réfléchir plus sérieusement »
- high ~ « ultraréflexion » (budget maximal)
- xhigh ~ « ultraréflexion+ » (modèles GPT-5.2+ et Codex, ainsi que l’effort d’Anthropic Claude Opus 4.7+)
- adaptive → réflexion adaptative gérée par le fournisseur (prise en charge pour Claude 4.6 sur Anthropic/Bedrock, Anthropic Claude Opus 4.7+ et la réflexion dynamique de Google Gemini)
- max → raisonnement maximal du fournisseur (Anthropic Claude Opus 4.7+ ; Ollama l’associe à son effort
thinknatif le plus élevé) - ultra → raisonnement maximal du fournisseur avec orchestration proactive de sous-agents lorsque le modèle ou l’environnement d’exécution sélectionné le prend en charge
x-high,x_high,extra-high,extra highetextra_highcorrespondent àxhigh.highestcorrespond àhigh.
- Remarques sur les fournisseurs :
- Les menus et sélecteurs de réflexion dépendent du profil du fournisseur. Les plugins de fournisseur déclarent l’ensemble exact de niveaux pour le modèle sélectionné, y compris des libellés tels que le binaire
on. adaptive,xhigh,maxetultrane sont proposés que pour les profils de fournisseur, de modèle et d’environnement d’exécution qui les prennent en charge. Les directives saisies avec des niveaux non pris en charge sont rejetées avec les options valides pour ce modèle.- Les niveaux non pris en charge déjà enregistrés sont réaffectés selon le rang du profil du fournisseur.
adaptiverevient àmediumsur les modèles non adaptatifs, tandis quexhighetmaxreviennent au plus grand niveau pris en charge autre queoffpour le modèle sélectionné. - Les modèles Anthropic Claude 4.6 utilisent
adaptivepar défaut lorsqu’aucun niveau de réflexion explicite n’est défini. - Anthropic Claude Opus 4.8 et Opus 4.7 conservent la réflexion désactivée, sauf si vous définissez explicitement un niveau de réflexion. Après l’activation de la réflexion adaptative, la valeur d’effort par défaut gérée par le fournisseur pour Opus 4.8 est
high. - Anthropic Claude Opus 4.7+ associe
/think xhighà la réflexion adaptative avecoutput_config.effort: "xhigh", car/thinkest une directive de réflexion etxhighest le réglage d’effort d’Opus. - Anthropic Claude Opus 4.7+ propose également
/think max, qui correspond au même mécanisme d’effort maximal géré par le fournisseur. - Les modèles DeepSeek V4 directs proposent
/think xhigh|max; les deux correspondent àreasoning_effort: "max"de DeepSeek, tandis que les niveaux inférieurs autres queoffcorrespondent àhigh. - Les modèles DeepSeek V4 acheminés par OpenRouter proposent
/think xhighet envoient les valeursreasoning.effortprises en charge par OpenRouter au lieu du champreasoning_effortde premier niveau natif de DeepSeek. Les niveaux inférieurs autres queoffcorrespondent àhigh, et les remplacementsmaxenregistrés reviennent àxhigh. - Les modèles Ollama capables de réflexion proposent
/think low|medium|high|max;maxcorrespond à la valeur nativethink: "high", car l’API native d’Ollama accepte les chaînes d’effortlow,mediumethigh. - Les modèles OpenAI GPT associent
/thinkà la prise en charge de l’effort propre au modèle dans l’API Responses./think offenvoiereasoning.effort: "none"uniquement lorsque le modèle cible le prend en charge ; sinon, OpenClaw omet la charge utile de raisonnement désactivé au lieu d’envoyer une valeur non prise en charge. - GPT-5.6 Sol et Terra proposent
/think ultrade manière native par l’intermédiaire de l’environnement d’exécution Codex. GPT-5.6 Luna propose les niveaux jusqu’àmax, car son catalogue Codex n’annonce pas Ultra. - L’environnement d’exécution OpenClaw intégré propose le niveau logique
/think ultrapour GPT-5.6 Sol, Terra et Luna. Il envoie l’effort maximal du fournisseur et ajoute des instructions d’orchestration proactive de sous-agents limitées à l’exécution. - Les entrées personnalisées du catalogue compatibles avec OpenAI peuvent activer
/think xhighen ajoutant"xhigh"àmodels.providers.<provider>.models[].compat.supportedReasoningEfforts. Cela utilise les mêmes métadonnées de compatibilité que celles qui associent les charges utiles d’effort de raisonnement OpenAI sortantes, afin que les menus, la validation de session, la CLI de l’agent etllm-taskconcordent avec le comportement du transport. - Les anciennes références OpenRouter Hunter Alpha configurées ignorent l’injection de raisonnement par le proxy, car cette route retirée pouvait renvoyer le texte de la réponse finale dans les champs de raisonnement.
- Google Gemini associe
/think adaptiveà la réflexion dynamique gérée par le fournisseur Gemini. Les requêtes Gemini 3 omettent unthinkingLevelfixe, tandis que les requêtes Gemini 2.5 envoientthinkingBudget: -1; les niveaux fixes correspondent toujours authinkingLevelou au budget Gemini le plus proche pour cette famille de modèles. - MiniMax M2.x (
minimax/MiniMax-M2*) utilise par défautthinking: { type: "disabled" }sur le chemin de diffusion en continu compatible avec Anthropic, sauf si vous définissez explicitement la réflexion dans les paramètres du modèle ou de la requête. Cela évite les deltasreasoning_contentindésirables provenant du format de flux Anthropic non natif de M2.x. MiniMax-M3 (et M3.x) est exempté : M3 émet des blocs de réflexion Anthropic corrects et renvoie un contenu vide lorsque la réflexion est désactivée ; OpenClaw conserve donc M3 sur le chemin de réflexion omise ou adaptative du fournisseur. - Z.AI (
zai/*) est binaire (on/off) pour la plupart des modèles GLM. GLM-5.2 fait exception : il propose/think off|low|high|max, associelowethighàreasoning_effort: "high"de Z.AI, etmaxàreasoning_effort: "max". - Moonshot Kimi K2.7 Code (
moonshot/kimi-k2.7-code) réfléchit toujours. Son profil ne propose queon, et OpenClaw omet le champthinkingsortant comme l’exige Moonshot. Les autres modèlesmoonshot/*associent/think offàthinking: { type: "disabled" }et tout niveau autre queoffàthinking: { type: "enabled" }. Lorsque la réflexion est activée, Moonshot n’accepte queauto|nonepourtool_choice; OpenClaw normalise les valeurs incompatibles enauto.
- Les menus et sélecteurs de réflexion dépendent du profil du fournisseur. Les plugins de fournisseur déclarent l’ensemble exact de niveaux pour le modèle sélectionné, y compris des libellés tels que le binaire
Ordre de résolution
- Directive intégrée au message (s’applique uniquement à ce message).
- Remplacement de session (défini par l’envoi d’un message contenant uniquement une directive).
- Valeur par défaut propre à l’agent (
agents.list[].thinkingDefaultdans la configuration). - Valeur globale par défaut (
agents.defaults.thinkingDefaultdans la configuration). - Repli : valeur par défaut déclarée par le fournisseur lorsqu’elle est disponible ; sinon, les modèles capables de raisonnement utilisent
mediumou le niveau pris en charge autre queoffle plus proche pour ce modèle, tandis que les modèles sans raisonnement restent suroff.
Définition d’une valeur de session par défaut
- Envoyez un message contenant uniquement la directive (les espaces sont autorisés), par exemple
/think:mediumou/t high. - Ce réglage reste actif pour la session actuelle (par expéditeur, par défaut). Utilisez
/think defaultpour effacer le remplacement de session et hériter de la valeur par défaut configurée ou du fournisseur ; les alias comprennentinherit,clear,resetetunpin. /think offenregistre un remplacement explicite paroff. Il désactive la réflexion jusqu’à ce que vous modifiiez ou effaciez le remplacement de session.- Une réponse de confirmation est envoyée (
Niveau de réflexion défini sur high./Réflexion désactivée.). Si le niveau n’est pas valide (par exemple/thinking big), la commande est rejetée avec une indication et l’état de la session reste inchangé. - Envoyez
/think(ou/think:) sans argument pour afficher le niveau de réflexion actuel.
Application par agent
- OpenClaw intégré : le niveau résolu est transmis à l’environnement d’exécution de l’agent OpenClaw dans le processus.
- Moteur CLI Claude : les niveaux concrets autres que
offsont transmis à Claude Code sous forme de--effortlors de l’utilisation declaude-cli;adaptivesupprime les indicateurs d’effort configurés et délègue l’effort effectif à l’environnement, aux paramètres et aux valeurs par défaut du modèle de Claude Code. Consultez Moteurs CLI.
Mode rapide (/fast)
- Niveaux :
auto|on|off|default. - Un message contenant uniquement la directive active ou désactive un remplacement du mode rapide pour la session et répond
Mode rapide défini sur auto.,Mode rapide activé.ouMode rapide désactivé.. Utilisez/fast defaultpour effacer le remplacement de session et hériter de la valeur par défaut configurée ; les alias comprennentinherit,clear,resetetunpin. - Envoyez
/fast(ou/fast status) sans mode pour afficher l’état effectif actuel du mode rapide. - OpenClaw résout le mode rapide dans l’ordre suivant :
- Remplacement
/fast auto|on|offintégré ou seul dans le message (/fast defaultefface cette couche) - Remplacement de session
- Valeur par défaut propre à l’agent (
agents.list[].fastModeDefault) - Configuration propre au modèle :
agents.defaults.models["<provider>/<model>"].params.fastMode - Repli :
off
- Remplacement
autoconserve le mode de session ou de configuration sur auto, mais résout chaque nouvel appel de modèle indépendamment. Les appels qui commencent avant le délai d’arrêt automatique ont le mode rapide activé ; les appels ultérieurs de nouvelle tentative, de repli, de résultat d’outil ou de continuation commencent avec le mode rapide désactivé. Le délai d’arrêt est de 60 secondes par défaut ; définissezagents.defaults.models["<provider>/<model>"].params.fastAutoOnSecondssur le modèle actif pour le modifier.- Pour
openai/*, le mode rapide correspond au traitement prioritaire d’OpenAI en envoyantservice_tier=prioritydans les requêtes Responses prises en charge. - Pour les modèles
openai/*/openai-codex/*reposant sur Codex, le mode rapide envoie le même indicateurservice_tier=prioritydans les réponses Codex. Les tours natifs du serveur d’application Codex ne reçoivent le niveau que lors deturn/startou du démarrage ou de la reprise d’un fil ;autone peut donc pas modifier le niveau d’un tour de serveur d’application déjà en cours. Il s’applique au prochain tour de modèle lancé par OpenClaw. - Pour les requêtes publiques directes
anthropic/*, y compris le trafic authentifié par OAuth envoyé àapi.anthropic.com, le mode rapide correspond aux niveaux de service Anthropic :/fast ondéfinitservice_tier=auto, tandis que/fast offdéfinitservice_tier=standard_only. - Pour
minimax/*sur le chemin compatible avec Anthropic,/fast on(ouparams.fastMode: true) remplaceMiniMax-M2.7parMiniMax-M2.7-highspeed. - Les paramètres de modèle Anthropic explicites
serviceTier/service_tierremplacent la valeur par défaut du mode rapide lorsque les deux sont définis. OpenClaw ignore toujours l’injection du niveau de service Anthropic pour les URL de base de proxy non Anthropic. /statusafficheFastlorsque le mode rapide est activé etFast:autolorsque le mode configuré est auto.
Directives de verbosité (/verbose ou /v)
- Niveaux :
on(minimal) |full|off(par défaut). - Un message contenant uniquement la directive active ou désactive la verbosité de la session et répond
Journalisation détaillée activée./Journalisation détaillée désactivée.; les niveaux non valides renvoient une indication sans modifier l’état. /verbose offenregistre un remplacement explicite pour la session ; effacez-le depuis l’interface des sessions en choisissantinherit.- Les expéditeurs autorisés des canaux externes peuvent conserver le remplacement de verbosité de la session. Les clients internes du Gateway ou du clavardage web ont besoin de
operator.adminpour le conserver. - Une directive intégrée affecte uniquement ce message ; sinon, les valeurs par défaut de session ou globales s’appliquent.
- Envoyez
/verbose(ou/verbose:) sans argument pour afficher le niveau de verbosité actuel. - Lorsque la verbosité est activée, les agents qui émettent des résultats d’outil structurés renvoient chaque appel d’outil dans son propre message contenant uniquement des métadonnées, précédé de
<emoji> <tool-name>: <arg>lorsque ces informations sont disponibles. Ces résumés d’outils sont envoyés dès le démarrage de chaque outil, dans des bulles distinctes, et non sous forme de deltas diffusés en continu. - Les résumés d’échec des outils restent visibles en mode normal, mais les suffixes contenant les détails bruts des erreurs sont masqués sauf si la verbosité est définie sur
full. - Lorsque la verbosité est définie sur
full, les sorties des outils sont également transmises après leur achèvement, dans une bulle distincte et tronquées à une longueur sûre. Si vous utilisez/verbose on|full|offpendant une exécution en cours, les bulles d’outils suivantes respectent le nouveau réglage. agents.defaults.toolProgressDetailcontrôle la forme des résumés d’outils/verboseet des lignes d’outils dans les brouillons de progression. Utilisez"explain"(par défaut) pour des libellés humains compacts tels que🛠️ Exécution : vérification de la syntaxe JS; utilisez"raw"si vous souhaitez également ajouter la commande ou les détails bruts pour le débogage. La valeuragents.list[].toolProgressDetailpropre à l’agent remplace la valeur par défaut.explain:🛠️ Exécution : vérifier la syntaxe JS de /tmp/app.jsraw:🛠️ Exécution : vérifier la syntaxe JS de /tmp/app.js, node --check /tmp/app.js
Directives de traçage des plugins (/trace)
- Niveaux :
on|off(par défaut). - Un message contenant uniquement la directive active ou désactive la sortie de traçage des plugins pour la session et répond
Traçage des plugins activé./Traçage des plugins désactivé.. - Une directive intégrée affecte uniquement ce message ; sinon, les valeurs par défaut de session ou globales s’appliquent.
- Envoyez
/trace(ou/trace:) sans argument pour afficher le niveau de traçage actuel. /tracea une portée plus restreinte que/verbose: il expose uniquement les lignes de traçage et de débogage appartenant aux plugins, telles que les résumés de débogage d’Active Memory.- Les lignes de traçage peuvent apparaître dans
/statuset dans un message de diagnostic de suivi après la réponse normale de l’assistant.
Visibilité du raisonnement (/reasoning)
- Niveaux :
on|off|stream. - Un message contenant uniquement la directive détermine si les blocs de raisonnement sont affichés dans les réponses.
- Lorsque cette option est activée, le raisonnement est envoyé dans un message distinct préfixé par
Thinking. stream: diffuse le raisonnement pendant la génération de la réponse lorsque le canal actif prend en charge les aperçus du raisonnement, puis envoie la réponse finale sans le raisonnement.- Alias :
/reason. - Envoyez
/reasoning(ou/reasoning:) sans argument pour afficher le niveau de raisonnement actuel. - Ordre de résolution : directive en ligne, puis remplacement de session, puis valeur par défaut propre à l’agent (
agents.list[].reasoningDefault), puis valeur globale par défaut (agents.defaults.reasoningDefault), puis valeur de repli (off).
Les balises de raisonnement mal formées des modèles locaux sont traitées de manière prudente. Les blocs <think>...</think> fermés restent masqués dans les réponses normales, tout comme le raisonnement non fermé qui suit du texte déjà visible. Si une réponse est entièrement enveloppée dans une seule balise ouvrante non fermée et serait autrement transmise comme un texte vide, OpenClaw supprime la balise ouvrante mal formée et transmet le texte restant.
Voir aussi
- La documentation du mode élevé se trouve dans Mode élevé.
Heartbeats
- Le corps de la sonde Heartbeat correspond à l’invite Heartbeat configurée (par défaut :
Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.). Les directives en ligne d’un message Heartbeat s’appliquent comme d’habitude (mais évitez de modifier les valeurs par défaut de la session depuis les Heartbeats). - Par défaut, la livraison des Heartbeats comprend uniquement la charge utile finale. Pour envoyer également le message
Thinkingdistinct (lorsqu’il est disponible), définissezagents.defaults.heartbeat.includeReasoning: trueou, pour un agent donné,agents.list[].heartbeat.includeReasoning: true.
Interface de discussion web
- Au chargement de la page, le sélecteur de raisonnement de la discussion web reflète le niveau enregistré de la session provenant du stockage ou de la configuration de la session entrante.
- La sélection d’un autre niveau enregistre immédiatement le remplacement de session via
sessions.patch; elle n’attend pas le prochain envoi et ne constitue pas un remplacement ponctuelthinkingOnce. - Si un message est envoyé alors que des modifications du sélecteur de modèle, de raisonnement ou de vitesse sont encore en cours d’application, l’envoi attend la fin de toutes les mises à jour de sélecteur en attente ; si une modification échoue, le message reste non envoyé afin de permettre sa vérification.
- La première option permet toujours d’effacer le remplacement. Elle affiche
Inherited: <resolved level>, y comprisInherited: Offlorsque le raisonnement hérité est désactivé. - Les choix explicites du sélecteur utilisent directement les libellés de leur niveau tout en conservant les libellés du fournisseur lorsqu’ils sont présents (par exemple
Maximumpour une optionmaxlibellée par un fournisseur). - Le sélecteur utilise
thinkingLevelsrenvoyé par la ligne ou les valeurs par défaut de session du Gateway, tandis quethinkingOptionsest conservé comme ancienne liste de libellés. L’interface du navigateur ne conserve pas sa propre liste d’expressions régulières de fournisseurs ; les Plugins définissent les ensembles de niveaux propres aux modèles. /think:<level>continue de fonctionner et met à jour le même niveau de session enregistré, afin que les directives de discussion et le sélecteur restent synchronisés.
Profils de fournisseurs
- Les Plugins de fournisseurs peuvent exposer
resolveThinkingProfile(ctx)pour définir les niveaux pris en charge et le niveau par défaut du modèle. - Les Plugins de fournisseurs qui servent de mandataires pour des modèles Claude doivent réutiliser
resolveClaudeThinkingProfile(modelId)depuisopenclaw/plugin-sdk/provider-model-sharedafin que les catalogues Anthropic directs et ceux des mandataires restent alignés. - Chaque niveau de profil possède un
idcanonique enregistré (off,minimal,low,medium,high,xhigh,adaptive,maxouultra) et peut inclure unlabeld’affichage. Les fournisseurs binaires utilisent{ id: "low", label: "on" }. - Les points d’extension de profil reçoivent, lorsqu’elles sont disponibles, les informations fusionnées du catalogue, notamment
reasoning,compat.thinkingFormatetcompat.supportedReasoningEfforts. Utilisez ces informations pour n’exposer des profils binaires ou personnalisés que lorsque le contrat de requête configuré prend en charge la charge utile correspondante. - Les Plugins d’outils qui doivent valider un remplacement explicite du raisonnement doivent utiliser
api.runtime.agent.resolveThinkingPolicy({ provider, model, agentRuntime })avecapi.runtime.agent.normalizeThinkingLevel(...); ils ne doivent pas conserver leurs propres listes de niveaux par fournisseur ou modèle. TransmettezagentRuntimelorsque l’outil contrôle le chemin d’exécution, par exemple pour une exécution toujours intégrée. - Les Plugins d’outils ayant accès aux métadonnées configurées de modèles personnalisés peuvent transmettre
catalogàresolveThinkingPolicyafin que les activations explicites decompat.supportedReasoningEffortssoient prises en compte dans la validation côté Plugin. - Les anciens points d’extension publiés (
supportsXHighThinking,isBinaryThinkingetresolveDefaultThinkingLevel) restent disponibles comme adaptateurs de compatibilité, mais les nouveaux ensembles de niveaux personnalisés doivent utiliserresolveThinkingProfile. - Les lignes et valeurs par défaut du Gateway exposent
thinkingLevels,thinkingOptionsetthinkingDefaultafin que les clients ACP et de discussion affichent les mêmes identifiants et libellés de profil que ceux utilisés par la validation à l’exécution.
Was this useful?