Claude

Ultracode en Claude Code: qué es, cómo activarlo y cuándo usarlo

Ultracode no es un modelo ni un nivel de effort: es un ajuste de Claude Code que hace que Claude orqueste dynamic workflows con varios subagentes. Te explico cómo activarlo, qué requisitos pide, cuánto consume y cuándo vale la pena.

  • Javi Mata
  • Actualizado el
  • 10 min de lectura
Tabla de contenido

Ultracode es un ajuste de Claude Code que le permite a Claude resolver con un dynamic workflow las tareas que lo ameriten: un script que reparte el trabajo entre muchos subagentes, verifica los resultados y te entrega una sola respuesta.

Nota: todo lo de este artículo está verificado contra la documentación oficial al 15 de octubre de 2026, con Claude Code v2.1.300 (publicada el 14 de octubre de 2026). Claude Code cambia seguido; revisa las fuentes del final.

Qué es ultracode (y qué no es)

La documentación de configuración de modelos lo define como “a Claude Code setting rather than a model effort level”. Es decir:

  • No es un modelo. Sigues usando el que tengas seleccionado (Opus 5.5, Sonnet 5.5, Fable 5.1, etc.).
  • No es un nivel de effort. Aparece dentro del menú /effort, pero como un interruptor aparte de low, medium, high, xhigh y max.
  • Sí es un interruptor de orquestación. Con ultracode encendido, Claude decide por su cuenta cuándo una tarea merece un workflow y lo arma sin que se lo pidas. Una sola petición puede convertirse en varios workflows seguidos: uno para entender el código, otro para hacer el cambio y otro para verificarlo.

Cómo funcionan los dynamic workflows

Según la página oficial de workflows, un dynamic workflow es un script de JavaScript que Claude escribe para tu tarea y que un runtime ejecuta en segundo plano mientras tu sesión sigue libre. La diferencia con los subagentes de siempre está en quién lleva el plan:

SubagentesDynamic workflows
Quién decide el siguiente pasoClaude, turno por turnoEl script
Dónde viven los resultados intermediosEn el contexto de ClaudeEn variables del script
EscalaUnas cuantas tareas por turnoDe decenas a cientos de agentes por ejecución
Si se interrumpeSe reinicia el turnoSe puede reanudar en la misma sesión

Esquema: un script workflow.js reparte el trabajo en tres fases (entender, cambiar y verificar) y cada fase lanza varios subagentes en paralelo

Esquema simplificado. Según la documentación, con ultracode una sola petición puede convertirse en varios workflows seguidos (uno para entender el código, otro para hacer el cambio y otro para verificarlo), y cada uno reparte su trabajo entre subagentes.

Así se ve un script pequeño. Es el ejemplo de la documentación oficial, no algo que yo haya generado:

export const meta = {
  name: 'audit-routes',
  description: 'Audit every route handler for missing auth checks',
}

const found = await agent('List every .ts file under src/routes/.', {
  schema: { type: 'object', required: ['files'], properties: { files: { type: 'array', items: { type: 'string' } } } },
})

const audits = await pipeline(found.files, file =>
  agent(`Audit ${file} for missing authentication checks.`, { label: file }),
)

return audits.filter(Boolean)

agent() lanza un subagente, pipeline() lanza uno por cada elemento de una lista y parallel() corre varios a la vez y espera a todos. Como el plan vive en código, el workflow puede aplicar patrones de calidad, como poner a agentes independientes a intentar refutar los hallazgos de otros antes de reportarlos.

El runtime tiene límites fijos: hasta 16 agentes simultáneos por defecto (menos si tu máquina tiene pocos núcleos de CPU), 4,096 elementos por llamada a parallel() o pipeline() y 1,000 agentes en total por ejecución.

Requisitos

  1. Versión de Claude Code. Los dynamic workflows llegaron en la v2.1.154 (28 de mayo de 2026), según el changelog. El comportamiento que describo aquí (interruptor independiente del effort y /effort ultracode off) requiere la v2.1.284 o posterior. Revisa la tuya y actualiza:

    claude --version
    claude update
  2. Un modelo con soporte para xhigh. Ultracode no está disponible si el modelo no soporta ese nivel. Hoy son compatibles Fable 5.1, Fable 5, Opus 5.5, Sonnet 5.5, Haiku 5.5, Opus 5, Sonnet 5, Opus 4.8 y Opus 4.7. Opus 4.6 y Sonnet 4.6 no. En Microsoft Foundry el alias opus apunta a Opus 4.6.

  3. Workflows activados. Están encendidos por defecto en Max, Team, Enterprise y al usar Claude Code con la API. En Pro vienen apagados: actívalos desde la fila Dynamic workflows de /config. Si un administrador los desactivó con disableWorkflows, ultracode tampoco aparece.

Formas de activarlo

MétodoAlcance¿Cambia el effort?
/effort ultracodeSesión actualNo
claude --effort ultracodeUna sesión, desde el arranqueSí, lo sube a xhigh
"ultracode": true en settingsTodas las sesionesNo
Palabra clave ultracode en un promptSolo esa tareaNo

/effort ultracode

Dentro de una sesión:

/effort ultracode

También puedes abrir el slider con /effort, presionar Tab para cambiar el interruptor Ultracode y confirmar con Enter. Elegir otro nivel de effort después no apaga ultracode.

claude --effort ultracode

claude --effort ultracode

Arranca con ultracode encendido y con effort en xhigh. Puedes combinarlo con un modelo:

claude --model opus --effort ultracode

En la API de Anthropic, el alias opus hoy apunta a Opus 5.5. Este flag requiere la v2.1.203 o posterior.

La llave ultracode en settings

Para que todas las sesiones empiecen con ultracode, agrega la llave ultracode a tu settings.json:

{
  "ultracode": true
}

Claude Code lee esta llave pero nunca la escribe: /effort ultracode solo afecta la sesión actual. Importante: ni la llave effortLevel ni la variable CLAUDE_CODE_EFFORT_LEVEL aceptan ultracode como valor.

La palabra clave en un solo prompt

Si no quieres cambiar la sesión, escribe ultracode en el prompt y Claude arma un workflow solo para esa tarea:

ultracode: audit every API endpoint under src/routes/ for missing auth checks

Pedirlo con tus palabras (“use a workflow”) también funciona. La palabra clave solo cuenta en prompts que escribes tú: no se activa con -p, tareas programadas, webhooks ni comentarios de pull requests.

Cómo apagarlo

/effort ultracode off

Si escribiste la palabra clave sin querer, presiona Option+W (macOS) o Alt+W (Windows y Linux), o la tecla de borrar justo después de la palabra resaltada. Para que la palabra deje de activar workflows, apaga Ultracode keyword trigger en /config (equivale a "workflowKeywordTriggerEnabled": false).

Costo y consumo de límites

Con ultracode cada petición usa más tokens y tarda más; con suscripción, eso agota antes tus límites de sesión y semanales.

Además, al encender ultracode se desactivan tres protecciones, porque Claude Code asume que ya aceptaste ejecuciones grandes:

  • El aviso Large workflow no aparece. Normalmente aparece cuando un workflow planea más de 25 agentes o se estima que pasará de 1.5 millones de tokens.
  • El límite de subagentes simultáneos no se aplica a los que Claude lanza con la herramienta Agent. Por defecto, ese límite es de 20.
  • En modo auto, no te pide aprobar el primer workflow.

Guía de tamaño

La guía de tamaño le dice a Claude cuántos agentes buscar. Es un consejo, no un tope:

ValorAgentes que busca Claude
smallMenos de 5
mediumMenos de 10
largeMenos de 50
unrestrictedSin guía, según la tarea

El valor por defecto es medium, o small en Pro desde la v2.1.271. Cámbialo en /config (fila Dynamic workflow size), con /config workflowSizeGuideline=small o con la llave workflowSizeGuideline en settings.

Si nada más les asigna un modelo (el script, la definición del subagente o CLAUDE_CODE_SUBAGENT_MODEL), los agentes usan el modelo de tu sesión, así que revisa /model antes de una ejecución grande. Y desde la v2.1.271, si llegas a tu límite de uso, el workflow puede pausarse y seguir solo, siempre que sea una sesión interactiva con suscripción, autoContinueAtUsageLimit esté activo y el límite se restablezca en menos de 24 horas. Si no, los agentes afectados fallan.

Cuándo sí conviene y cuándo no

La documentación menciona como casos típicos una búsqueda de bugs en todo el código, una migración de 500 archivos, una investigación que contrasta fuentes y un plan difícil que vale la pena analizar desde varios ángulos.

Mi recomendación, a partir de eso:

  • Sí: auditorías de seguridad o autenticación de todo un repositorio, migraciones grandes (de JavaScript a TypeScript, cambios de framework), investigaciones con fuentes cruzadas y decisiones de arquitectura difíciles de revertir.
  • No: corregir un bug puntual, renombrar una variable, ajustar estilos o el trabajo diario en general. Ahí ultracode solo gasta más tokens y tiempo. La propia documentación sugiere apagarlo “when you return to routine work”.

Para tareas grandes pero aisladas, prefiero usar la palabra clave en un prompt en lugar de dejar ultracode encendido toda la sesión.

Ultracode vs. ultrathink vs. /deep-research

Ultracodeultrathink/deep-research
Qué esAjuste de Claude CodePalabra clave en un promptWorkflow incluido en Claude Code
Qué haceClaude escribe workflows con muchos subagentesPide razonar más en ese turnoBusca en la web desde varios ángulos, contrasta fuentes y entrega un reporte citado
¿Lanza subagentes?SíNoSí
¿Cambia el effort?Solo con --effort ultracode (o effortLevel en el Agent SDK)No, el effort enviado a la API no cambiaNo

Además, /deep-research solo corre cuando lo invocas y necesita la herramienta WebSearch, y ultrathink solo afecta ese turno.

Ejemplo práctico

Este prompt es un ejemplo mío, no salida real:

ultracode: revisa todos los snippets y secciones de mi tema de Shopify en sections/ y snippets/, encuentra imágenes sin atributos width/height o sin loading="lazy", y verifica cada hallazgo con un segundo agente antes de reportarlo

Lo que pasa después, según la documentación de workflows:

  1. Aprobación. En modo manual o accept edits ves las fases planeadas con las opciones Yes, run it, View raw script y No.
  2. Ejecución en segundo plano. Tu sesión queda libre. Con /workflows ves cada fase con sus agentes y tokens; p pausa y x detiene.
  3. Un solo reporte final en la sesión, en lugar de una transcripción turno por turno.
  4. Reutilización. Si te sirvió, guárdalo con s en .claude/workflows/ (compartido con el repo) o en ~/.claude/workflows/ (solo para ti) y córrelo después como /<nombre>.

La documentación recomienda probar primero con una porción pequeña, como una sola carpeta, para medir el consumo antes de lanzarlo sobre todo el proyecto.

Información desactualizada que vas a encontrar

Varios blogs repiten datos de versiones anteriores. Esto cambió, según la documentación y el changelog oficial:

  • “--effort no acepta ultracode”: antes de la v2.1.203 respondía Unknown --effort value 'ultracode'. Hoy sí lo acepta.
  • “Ultracode siempre pone el effort en xhigh”: era así antes de la v2.1.284 (28 de septiembre de 2026). Ahora, en la CLI, solo lo sube --effort ultracode.
  • “La palabra clave es workflow”: cambió a ultracode en la v2.1.160.
  • “La guía medium es de menos de 15 agentes”: bajó a menos de 10 en la v2.1.271.
  • “/deep-research se lanza solo”: desde la v2.1.218 solo corre cuando lo invocas.

Fuentes