Tools
Niveles de razonamiento
Qué hace
- Directiva en línea en cualquier cuerpo entrante:
/t <level>,/think:<level>o/thinking <level>. - Niveles (alias):
off | minimal | low | medium | high | xhigh | adaptive | max- minimal → "pensar"
- low → "pensar intensamente"
- medium → "pensar más intensamente"
- high → "ultrathink" (presupuesto máximo)
- xhigh → "ultrathink+" (modelos GPT-5.2+ y Codex, más esfuerzo de Anthropic Claude Opus 4.7)
- adaptive → razonamiento adaptativo administrado por el proveedor (compatible con Claude 4.6 en Anthropic/Bedrock, Anthropic Claude Opus 4.7 y el razonamiento dinámico de Google Gemini)
- max → razonamiento máximo del proveedor (Anthropic Claude Opus 4.7; Ollama asigna esto a su mayor esfuerzo
thinknativo) x-high,x_high,extra-high,extra highyextra_highse asignan axhigh.highestse asigna ahigh.
- Notas del proveedor:
- Los menús y selectores de razonamiento dependen del perfil del proveedor. Los Plugin de proveedor declaran el conjunto exacto de niveles para el modelo seleccionado, incluidas etiquetas como el binario
on. adaptive,xhighymaxsolo se anuncian para perfiles de proveedor/modelo que los admiten. Las directivas escritas para niveles no compatibles se rechazan con las opciones válidas de ese modelo.- Los niveles no compatibles almacenados existentes se reasignan según el rango del perfil del proveedor.
adaptiveretrocede amediumen modelos no adaptativos, mientras quexhighymaxretroceden al mayor nivel compatible distinto de off para el modelo seleccionado. - Los modelos Anthropic Claude 4.6 usan
adaptivede forma predeterminada cuando no se establece ningún nivel de razonamiento explícito. - Anthropic Claude Opus 4.7 no usa razonamiento adaptativo de forma predeterminada. El valor predeterminado de esfuerzo de su API sigue perteneciendo al proveedor, salvo que establezcas explícitamente un nivel de razonamiento.
- Anthropic Claude Opus 4.7 asigna
/think xhigha razonamiento adaptativo másoutput_config.effort: "xhigh", porque/thinkes una directiva de razonamiento yxhighes el ajuste de esfuerzo de Opus 4.7. - Anthropic Claude Opus 4.7 también expone
/think max; se asigna a la misma ruta de esfuerzo máximo propiedad del proveedor. - Los modelos directos DeepSeek V4 exponen
/think xhigh|max; ambos se asignan areasoning_effort: "max"de DeepSeek, mientras que los niveles inferiores distintos de off se asignan ahigh. - Los modelos DeepSeek V4 enrutados por OpenRouter exponen
/think xhighy envían valoresreasoning_effortcompatibles con OpenRouter. Las sobrescriturasmaxalmacenadas retroceden axhigh. - Los modelos de Ollama con capacidad de razonamiento exponen
/think low|medium|high|max;maxse asigna althink: "high"nativo porque la API nativa de Ollama acepta cadenas de esfuerzolow,mediumyhigh. - Los modelos GPT de OpenAI asignan
/thinkmediante la compatibilidad de esfuerzo específica del modelo en la Responses API./think offenvíareasoning.effort: "none"solo cuando el modelo de destino lo admite; de lo contrario, OpenClaw omite la carga útil de razonamiento deshabilitado en lugar de enviar un valor no compatible. - Las entradas de catálogo personalizadas compatibles con OpenAI pueden optar por
/think xhighestableciendomodels.providers.<provider>.models[].compat.supportedReasoningEffortspara incluir"xhigh". Esto usa los mismos metadatos de compatibilidad que asignan las cargas útiles salientes de esfuerzo de razonamiento de OpenAI, por lo que los menús, la validación de sesión, la CLI del agente yllm-taskcoinciden con el comportamiento de transporte. - Las referencias configuradas obsoletas de OpenRouter Hunter Alpha omiten la inyección de razonamiento de proxy porque esa ruta retirada podía devolver texto de respuesta final mediante campos de razonamiento.
- Google Gemini asigna
/think adaptiveal razonamiento dinámico propiedad del proveedor de Gemini. Las solicitudes de Gemini 3 omiten unthinkingLevelfijo, mientras que las solicitudes de Gemini 2.5 envíanthinkingBudget: -1; los niveles fijos siguen asignándose althinkingLevelo presupuesto de Gemini más cercano para esa familia de modelos. - MiniMax (
minimax/*) en la ruta de streaming compatible con Anthropic usathinking: { type: "disabled" }de forma predeterminada, salvo que establezcas explícitamente el razonamiento en parámetros del modelo o parámetros de la solicitud. Esto evita deltas filtrados dereasoning_contentdesde el formato de stream no nativo de Anthropic de MiniMax. - Z.AI (
zai/*) solo admite razonamiento binario (on/off). Cualquier nivel distinto deoffse trata comoon(asignado alow). - Moonshot (
moonshot/*) asigna/think offathinking: { type: "disabled" }y cualquier nivel distinto deoffathinking: { type: "enabled" }. Cuando el razonamiento está habilitado, Moonshot solo aceptatool_choiceauto|none; OpenClaw normaliza los valores incompatibles aauto.
- Los menús y selectores de razonamiento dependen del perfil del proveedor. Los Plugin de proveedor declaran el conjunto exacto de niveles para el modelo seleccionado, incluidas etiquetas como el binario
Orden de resolución
- Directiva en línea en el mensaje (se aplica solo a ese mensaje).
- Sobrescritura de sesión (establecida enviando un mensaje que solo contiene la directiva).
- Valor predeterminado por agente (
agents.list[].thinkingDefaulten la configuración). - Valor predeterminado global (
agents.defaults.thinkingDefaulten la configuración). - Retroceso: valor predeterminado declarado por el proveedor cuando esté disponible; de lo contrario, los modelos con capacidad de razonamiento resuelven a
mediumo al nivel compatible distinto deoffmás cercano para ese modelo, y los modelos sin razonamiento permanecen enoff.
Establecer un valor predeterminado de sesión
- Envía un mensaje que sea solo la directiva (se permiten espacios en blanco), por ejemplo,
/think:mediumo/t high. - Eso queda fijado para la sesión actual (por remitente de forma predeterminada); se borra con
/think:offo con el restablecimiento por inactividad de la sesión. - Se envía una respuesta de confirmación (
Thinking level set to high./Thinking disabled.). Si el nivel no es válido (por ejemplo,/thinking big), el comando se rechaza con una sugerencia y el estado de la sesión queda sin cambios. - Envía
/think(o/think:) sin argumento para ver el nivel de razonamiento actual.
Aplicación por agente
- Pi integrado: el nivel resuelto se pasa al runtime del agente Pi en proceso.
- Backend de Claude CLI: los niveles distintos de off se pasan a Claude Code como
--effortcuando se usaclaude-cli; consulta backends de CLI.
Modo rápido (/fast)
- Niveles:
on|off. - Un mensaje que solo contiene la directiva alterna una sobrescritura de modo rápido de sesión y responde
Fast mode enabled./Fast mode disabled.. - Envía
/fast(o/fast status) sin modo para ver el estado efectivo actual del modo rápido. - OpenClaw resuelve el modo rápido en este orden:
/fast on|offen línea o como única directiva- Sobrescritura de sesión
- Valor predeterminado por agente (
agents.list[].fastModeDefault) - Configuración por modelo:
agents.defaults.models["<provider>/<model>"].params.fastMode - Retroceso:
off
- Para
openai/*, el modo rápido se asigna al procesamiento prioritario de OpenAI enviandoservice_tier=priorityen solicitudes Responses compatibles. - Para
openai-codex/*, el modo rápido envía la misma marcaservice_tier=priorityen Codex Responses. OpenClaw mantiene un único interruptor/fastcompartido entre ambas rutas de autenticación. - Para solicitudes públicas directas
anthropic/*, incluido el tráfico autenticado con OAuth enviado aapi.anthropic.com, el modo rápido se asigna a los niveles de servicio de Anthropic:/fast onestableceservice_tier=auto,/fast offestableceservice_tier=standard_only. - Para
minimax/*en la ruta compatible con Anthropic,/fast on(oparams.fastMode: true) reescribeMiniMax-M2.7comoMiniMax-M2.7-highspeed. - Los parámetros de modelo explícitos
serviceTier/service_tierde Anthropic sobrescriben el valor predeterminado del modo rápido cuando ambos están establecidos. OpenClaw sigue omitiendo la inyección de nivel de servicio de Anthropic para URL base de proxy que no son de Anthropic. /statusmuestraFastsolo cuando el modo rápido está habilitado.
Directivas detalladas (/verbose o /v)
- Niveles:
on(mínimo) |full|off(predeterminado). - Un mensaje que solo contiene la directiva alterna el modo detallado de sesión y responde
Verbose logging enabled./Verbose logging disabled.; los niveles no válidos devuelven una sugerencia sin cambiar el estado. /verbose offalmacena una sobrescritura explícita de sesión; bórrala mediante la interfaz de sesiones eligiendoinherit.- La directiva en línea afecta solo a ese mensaje; en los demás casos se aplican los valores predeterminados de sesión/globales.
- Envía
/verbose(o/verbose:) sin argumento para ver el nivel detallado actual. - Cuando el modo detallado está activado, los agentes que emiten resultados estructurados de herramientas (Pi, otros agentes JSON) devuelven cada llamada de herramienta como su propio mensaje solo de metadatos, con el prefijo
<emoji> <tool-name>: <arg>cuando esté disponible. Estos resúmenes de herramientas se envían en cuanto se inicia cada herramienta (burbujas separadas), no como deltas de streaming. - Los resúmenes de fallos de herramientas siguen siendo visibles en modo normal, pero los sufijos de detalle de error sin procesar se ocultan salvo que el modo detallado sea
onofull. - Cuando el modo detallado es
full, las salidas de herramientas también se reenvían después de completarse (burbuja separada, truncada a una longitud segura). Si alternas/verbose on|full|offmientras una ejecución está en curso, las burbujas de herramientas posteriores respetan el nuevo ajuste. agents.defaults.toolProgressDetailcontrola la forma de los resúmenes de herramientas de/verbosey las líneas de herramientas del borrador de progreso. Usa"explain"(predeterminado) para etiquetas humanas compactas como🛠️ Exec: checking JS syntax; usa"raw"cuando también quieras anexar el comando/detalle sin procesar para depuración.agents.list[].toolProgressDetailpor agente sobrescribe el valor predeterminado.explain:🛠️ Exec: check JS syntax for /tmp/app.jsraw:🛠️ Exec: check JS syntax for /tmp/app.js, node --check /tmp/app.js
Directivas de traza de Plugin (/trace)
- Niveles:
on|off(predeterminado). - Un mensaje que solo contiene la directiva alterna la salida de traza de Plugin de sesión y responde
Plugin trace enabled./Plugin trace disabled.. - La directiva en línea afecta solo a ese mensaje; en los demás casos se aplican los valores predeterminados de sesión/globales.
- Envía
/trace(o/trace:) sin argumento para ver el nivel de traza actual. /tracees más específico que/verbose: solo expone líneas de traza/depuración propiedad de Plugin, como resúmenes de depuración de Active Memory.- Las líneas de traza pueden aparecer en
/statusy como un mensaje de diagnóstico de seguimiento después de la respuesta normal del asistente.
Visibilidad del razonamiento (/reasoning)
- Niveles:
on|off|stream. - Un mensaje que solo contiene la directiva alterna si los bloques de razonamiento se muestran en las respuestas.
- Cuando está habilitado, el razonamiento se envía como un mensaje separado con el prefijo
Reasoning:. stream(solo Telegram): transmite el razonamiento en la burbuja de borrador de Telegram mientras se genera la respuesta y luego envía la respuesta final sin razonamiento.- Alias:
/reason. - Envía
/reasoning(o/reasoning:) sin argumento para ver el nivel de razonamiento actual. - Orden de resolución: directiva en línea, luego sobrescritura de sesión, luego valor predeterminado por agente (
agents.list[].reasoningDefault), luego retroceso (off).
Las etiquetas de razonamiento de modelos locales malformadas se manejan de forma conservadora. Los bloques cerrados <think>...</think> permanecen ocultos en respuestas normales, y el razonamiento no cerrado después de texto ya visible también se oculta. Si una respuesta está completamente envuelta en una sola etiqueta de apertura no cerrada y, de otro modo, se entregaría como texto vacío, OpenClaw elimina la etiqueta de apertura malformada y entrega el texto restante.
Relacionado
- La documentación del modo elevado se encuentra en Modo elevado.
Heartbeats
- El cuerpo de la sonda Heartbeat es el prompt de Heartbeat configurado (predeterminado:
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.). Las directivas en línea en un mensaje de Heartbeat se aplican como de costumbre (pero evita cambiar valores predeterminados de sesión desde Heartbeats). - La entrega de Heartbeat usa de forma predeterminada solo la carga útil final. Para enviar también el mensaje separado
Reasoning:(cuando esté disponible), estableceagents.defaults.heartbeat.includeReasoning: trueoagents.list[].heartbeat.includeReasoning: truepor agente.
Interfaz de chat web
- El selector de razonamiento del chat web refleja el nivel almacenado de la sesión desde el almacén/configuración de sesiones entrantes cuando se carga la página.
- Elegir otro nivel escribe la sobrescritura de sesión inmediatamente mediante
sessions.patch; no espera al siguiente envío y no es una sobrescritura de un solo usothinkingOnce. - La primera opción siempre es
Default (<resolved level>), donde el valor predeterminado resuelto proviene del perfil de razonamiento del proveedor del modelo de sesión activo más la misma lógica de retroceso que usan/statusysession_status. - El selector usa
thinkingLevelsdevuelto por la fila/valores predeterminados de sesión del Gateway, conthinkingOptionsmantenido como una lista de etiquetas heredada. La interfaz del navegador no mantiene su propia lista de regex de proveedores; los Plugin poseen los conjuntos de niveles específicos de cada modelo. /think:<level>sigue funcionando y actualiza el mismo nivel de sesión almacenado, por lo que las directivas de chat y el selector permanecen sincronizados.
Perfiles de proveedor
- Los plugins de proveedor pueden exponer
resolveThinkingProfile(ctx)para definir los niveles admitidos por el modelo y el valor predeterminado. - Los plugins de proveedor que hacen proxy de modelos Claude deben reutilizar
resolveClaudeThinkingProfile(modelId)deopenclaw/plugin-sdk/provider-model-sharedpara que los catálogos directos de Anthropic y los de proxy permanezcan alineados. - Cada nivel de perfil tiene un
idcanónico almacenado (off,minimal,low,medium,high,xhigh,adaptiveomax) y puede incluir unlabelde visualización. Los proveedores binarios usan{ id: "low", label: "on" }. - Los plugins de herramientas que necesiten validar una anulación explícita de razonamiento deben usar
api.runtime.agent.resolveThinkingPolicy({ provider, model })másapi.runtime.agent.normalizeThinkingLevel(...); no deben mantener sus propias listas de niveles por proveedor/modelo. - Los plugins de herramientas con acceso a metadatos configurados de modelos personalizados pueden pasar
catalogaresolveThinkingPolicypara que las adhesiones explícitas decompat.supportedReasoningEffortsse reflejen en la validación del lado del plugin. - Los puntos de enlace heredados publicados (
supportsXHighThinking,isBinaryThinkingyresolveDefaultThinkingLevel) permanecen como adaptadores de compatibilidad, pero los nuevos conjuntos de niveles personalizados deben usarresolveThinkingProfile. - Las filas y valores predeterminados de Gateway exponen
thinkingLevels,thinkingOptionsythinkingDefaultpara que los clientes de ACP/chat representen los mismos identificadores y etiquetas de perfil que usa la validación en tiempo de ejecución.