← Alle Playbooks
Playbook· setup

Niveles de effort en Claude Code — cuándo basta low y cuándo necesitas max

Effort controla cuánto piensa Claude, independientemente del modelo. Los cinco niveles más ultracode, cómo cambiarlo en vivo, fijarlo de forma persistente y elegir el adecuado por tarea.

La mayoría de los operadores dejan Claude Code corriendo en un solo nivel y nunca se dan cuenta de que hay cinco. Effort es el regulador de la profundidad de pensamiento, es decir, cuánto piensa el modelo antes de responder. Eso no es lo mismo que el modelo en sí. Opus en low piensa más superficialmente que Opus en max, aunque ambos son el mismo modelo. Quien solo piensa en el modelo e ignora el effort, o deja dinero sobre la mesa o quema tokens en una tarea que no necesita para nada una cadena de razonamiento profunda. Este playbook te muestra cómo cambiar de nivel en vivo, fijarlo al arrancar, guardarlo de forma persistente y elegir el adecuado por tarea. Probado con Claude Code v2.1.206.

Paso 1: Entiende qué es el effort y qué no

Effort controla cuánto piensa Claude por respuesta. Low significa pensamiento mínimo y la respuesta más rápida. Max significa la cadena de razonamiento más profunda sin ningún tope de tokens. Importan dos distinciones. Effort es algo distinto de la función que Anthropic llama "extended thinking", y es algo distinto de la elección entre Opus, Sonnet y Haiku.

Combinas ambos reguladores. Un modelo potente en low puede ser más rápido y barato en una simple búsqueda de archivos que un modelo débil en high en una tarea que necesita razonamiento de verdad. Si no los separas, giras el mando equivocado y te extrañas de por qué la respuesta se queda superficial pese al modelo caro.

Paso 2: Conoce los cinco niveles más ultracode

Hay cinco niveles. low para pensamiento mínimo y las respuestas más rápidas, bueno para búsquedas de archivos y ediciones triviales. medium para pensamiento moderado. high para razonamiento profundo, que es el default en la mayoría de los modelos. xhigh para razonamiento ampliado. En la mayoría de los modelos high es el default; algunos modelos como Opus 4.7 arrancan en xhigh. En los modelos que no soportan xhigh, cae automáticamente a high. Y max para la mayor profundidad de pensamiento sin ningún límite de tokens.

A eso se suma ultracode, disponible desde Claude Code v2.1.203. Ultracode combina el effort xhigh con orquestación dinámica de workflows para tareas sustanciales. Si los workflows están desactivados en tu setup, ultracode cae a xhigh puro. Recuerda los niveles como una escalera de rápido y superficial a lento y profundo, y así la elección se te hace fácil en el día a día.

Paso 3: Comprueba tu estado actual

Antes de cambiar nada, mira dónde estás ahora mismo. El slider interactivo en /model te muestra el nivel activo. En la extensión de VS Code aparece además en la statusline, así que ves en vivo si vas en high o en max.

El quid: muchos operadores creen que van en high, porque es lo que suena a default, pero están sentados en medium porque una config vieja o una variable de entorno fijada lo sobreescribe. Primero comprueba, luego gira. Eso te ahorra adivinar por qué una respuesta fue más floja de lo esperado.

Paso 4: Cambia en vivo con /effort

La vía más rápida en mitad de la sesión es el slash command. Escribe /effort y obtienes un menú, o pasa el nivel directamente: /effort high. El cambio surte efecto de inmediato para el siguiente turno, no tienes que reiniciar nada.

Este es el regulador que más tocas en el día a día. Llega una pregunta de refactorización más peliaguda, subes, luego bajas otra vez para lo pequeño. Un gesto consciente hacia este slash command por tarea ahorra tokens de forma perceptible a lo largo del día.

Paso 5: Fíjalo al arrancar con --effort

Si sabes que una sesión entera necesita una profundidad determinada, pasa el nivel directamente al arrancar: claude --effort high. El flag de arranque sobreescribe el ajuste effortLevel configurado, pero solo vale para esta sesión y no persiste más allá.

Es práctico para una ejecución headless en CI o para una sesión de debug dedicada en la que no quieres teclear /effort cada vez. Arrancas una vez con el nivel correcto y tienes tranquilidad.

Paso 6: Fíjalo de forma persistente con effortLevel

Para un ajuste permanente usas la clave de config effortLevel. Los niveles low, medium, high y xhigh persisten cuando los fijas en una sesión interactiva, así que sobreviven al reinicio y valen como tu nuevo default.

Dos niveles están excluidos a propósito. max y ultracode NO se pueden guardar como default y solo valen para la sesión en curso. Para max hay una excepción: si lo fijas mediante la variable de entorno CLAUDE_CODE_EFFORT_LEVEL, también surte efecto a través de las sesiones. ultracode, en cambio, no acepta esta variable de entorno. Eso no es un bug sino algo intencionado, para que no acabes corriendo de forma permanente con carga máxima de tokens en cada minucia.

Paso 7: La variable de entorno y el orden de precedencia

Hay una tercera vía, la variable de entorno CLAUDE_CODE_EFFORT_LEVEL. Útil cuando quieres fijar el effort por proyecto o por shell, por ejemplo en un script de arranque específico del proyecto.

Lo que importa es el orden de quién gana cuando los valores se contradicen. La variable de entorno tiene la máxima prioridad, después vienen los ajustes configurados, y del todo abajo los defaults del modelo. Así que si tu /effort parece ignorarse, la causa más común es una CLAUDE_CODE_EFFORT_LEVEL fijada que anula todo lo demás. Ese fue el clásico en mi caso: una línea vieja en el .bashrc sobreescribió en silencio cada cambio de slider durante semanas.

Paso 8: max y ultracode, las armas de sesión

max lo sacas cuando una tarea necesita de verdad un pensamiento profundo y de varias etapas y aceptas el coste de tokens. No hay límite de tokens en este nivel, lo que es a la vez función y advertencia. Para una pregunta dura de arquitectura o un debug a través de muchos archivos es justo lo adecuado, para el día a día es un derroche.

ultracode es el nivel especial para tareas sustanciales, effort xhigh más orquestación automática de workflows. Ambos son solo de sesión, desaparecen en el siguiente arranque. Úsalos de forma dirigida para un buen pedazo de trabajo y baja luego conscientemente otra vez, si no la factura se te dispara sin que obtengas mejor output.

Paso 9: Elige el nivel por tarea

Como regla general: low para búsquedas, renombrados y preguntas cortas donde la respuesta está prácticamente cerrada. high o xhigh para programar de verdad y trabajo agéntico con varios pasos de herramientas, ese es el sweet spot para la mayor parte del trabajo de desarrollo. max o ultracode para los raros problemas complejos de varios pasos, decisiones de arquitectura, debugging peliagudo.

Los niveles más bajos ahorran tokens y coste, los más altos te compran profundidad de pensamiento. El error caro es confundir ambos y dejarlo todo en bloque en un nivel. Quien va en max todo el día paga por pensar lo que la tarea no necesita, quien se queda pegado a low obtiene respuestas superficiales en las preguntas duras y no se da cuenta de por qué.

Paso 10: Restablece con /effort auto

Si has perdido la pista de qué nivel está actuando y de dónde viene, simplemente restablece. /effort auto te lleva al default del modelo. El default varía según el modelo, la mayoría están en high. Desde ahí decides de nuevo con limpieza.

Esta única línea es tu botón de reset cuando config, variable de entorno y slash command se han sobreescrito entre sí y ya no sabes qué está realmente activo. En caso de duda /effort auto, y luego sube conscientemente donde lo necesites.

Qué viene después

Effort y coste están directamente ligados, los niveles más altos tiran de más tokens. Si quieres tenerlo controlado, lee el playbook Control de costes para el uso diario. Si tus sesiones se hacen largas y quieres combinar el effort con la gestión de contexto, encaja Gestionar la ventana de contexto. Y si quieres entender por qué el razonamiento profundo ayuda siquiera en algunas tareas, vuelve a la lección Razonamiento y extended thinking. Para tareas grandes estructuradas vale la pena la combinación con Usar bien el plan mode.

Fuentes

  • Claude Code Model Config, effort level, reset y precedencia: https://code.claude.com/docs/en/model-config
  • Claude Code Commands, /effort: https://code.claude.com/docs/en/commands
  • Claude Code CLI Reference, flag --effort y valores incl. ultracode: https://code.claude.com/docs/en/cli-reference
Niveles de effort en Claude Code — cuándo basta low y cuándo necesitas max — StudioMeyer Academy