Saltar al contenido

Lección 02 · 8 en la ruta · 4 min de lectura · Nivel 1

Ruteo: primero la capa, después el carril

Antes de elegir modelo hay que preguntarse si hace falta uno. Trabajo determinista y repetible va a código que corre sin modelo (Python/SQL/shell).

La pregunta de la capa, primero

Antes de elegir modelo hay que preguntarse si hace falta uno. Trabajo determinista y repetible va a código que corre sin modelo (Python/SQL/shell). Juicio, pegamento y entradas variables van a instrucciones (skills, agentes, reglas). La pregunta que corta: ¿un modelo tiene que HACER esto, o solo ORQUESTARLO?

Fuente: home/.claude/CLAUDE.md §Routing.

Los carriles

CarrilAgenteModeloEffortToolsCuándo
Trivialmecanicohaiku—Read, Grep, Glob, BashBuscar, listar, leer logs, extraer, contar, renombrar
Mecánicooperariosonnetlow(todas)La decisión ya está tomada; solo falta escribirla
Prosaredactorsonnetmedium(todas)READMEs, commits, informes, TDRs, traducciones
Reconinvestigadorsonnetmedium(todas)Antes de tocar un repo que la sesión no conoce
Ambiguoprofundoopusxhigh(todas)Causa raíz no evidente, trade-offs arquitectónicos reales

Fuente: home/.claude/CLAUDE.md §Routing, tabla; frontmatter de home/.claude/agents/mecanico.md, operario.md, redactor.md, investigador.md, profundo.md. mecanico es el único de los cinco cuyo frontmatter restringe tools:; los otros cuatro heredan el set completo.

Un sexto agente, reviewer (opus, high, tools limitadas a Read, Grep, Glob, Bash(git *)), no aparece en esta tabla porque no es un carril al que se rutea trabajo ordinario — ver docs/reviewer.es.md.

Las seis reglas

  1. Recon primero. Más de 3-4 archivos que leer: delegar a investigador en vez de leerlos en este hilo. Vuelve solo el resumen.
  2. El hilo principal decide, los subagentes ejecutan. La sesión fija el qué y el cómo; la escritura se delega.
  3. profundo se gana, no se asume. El disparador es la ambigüedad, no el tamaño. Un refactor de 20 archivos con el patrón ya definido es operario.
  4. No delegar lo que ya está en contexto. Pasarle a un subagente un archivo ya leído lo hace más caro, no más barato.
  5. Más razonamiento en el mismo hilo: ultrathink, en vez de subir el nivel de la sesión.
  6. Nunca cambiar el modelo de la sesión para conseguir un review. El revisor tiene que ser >= el autor, pero cambiar a mitad de sesión invalida la caché de prompt; se lanza reviewer en su lugar.

Fuente: home/.claude/CLAUDE.md §Routing, reglas 1-6.

El camino barato es el default

CLAUDE_CODE_SUBAGENT_MODEL=sonnet está fijado en home/.claude/settings.json. Toda delegación, salvo que el frontmatter propio de un agente pise el modelo (como hace mecanico con haiku, o profundo/reviewer con opus), ya corre en el modelo barato. Una sesión grande con cero llamadas a subagentes no está usando esta palanca.

Fuente: home/.claude/settings.json (CLAUDE_CODE_SUBAGENT_MODEL).

/route

El skill route (home/.claude/skills/route/SKILL.md) recomienda modelo, effort y modo de ejecución (sesión principal / subagente / sesión nueva / worktree / lote claude -p) para una tarea descrita, antes de arrancar el trabajo. Responde en una tabla fija (tipo, modelo, effort, dónde, costo de caché, necesita SPEC.md, necesita plan mode, review externo después) más una línea de razonamiento.

No recuerda ningún modelo: lee dos archivos cada vez y los cita en la tabla.

  • rules/models.json — los hechos. Ids, nivel (fast < balanced < flagship < frontier), contexto, salida máxima, precios por millón de tokens y esfuerzo por defecto de cada modelo. Lo escribe python tools/model-intel.py leyendo la documentación pública de Anthropic, sin gastar un token de modelo. No se edita a mano: se regenera.
  • rules/routing.json — el criterio. Cada carril (mecanico, operario, redactor, investigador, profundo, reviewer, session-default) con su familia de modelo, su esfuerzo y el porqué. Se edita a mano después de cada cambio de catálogo; decisions es un log fechado de esos cambios (el kit lo publica vacío).

La cascada barato-primero va de tipo de tarea a carril: trivial → mecanico; mecánico → operario; prosa → redactor; feature en código conocido → session-default (u operario si el patrón ya existe); debugging de causa incierta → profundo, desde un comando de reproducción; arquitectura o corrida autónoma larga → session-default con plan mode y SPEC.md; exploración → investigador; review → reviewer, cuyo nivel tiene que ser al menos el del autor. El modelo y el esfuerzo son los que ese carril diga hoy. Si un archivo falta o no parsea, /route lo dice y se detiene. tests/route_test.sh resuelve cinco casos desde los dos archivos y los compara con tests/expected/route-cases.txt.

El skill nombra el costo de caché de forma explícita: cada modelo (y, en la mayoría de modelos, cada nivel de effort) tiene su propia caché de prompt, así que cambiar cualquiera de los dos a mitad de sesión obliga a releer la conversación entera sin ningún acierto de caché — las lecturas de caché se cobran a ~10% del input estándar, lo que hace de un cambio avanzada la sesión la jugada más cara disponible. Sus conclusiones: nunca recomendar cambiar el modelo de la sesión para conseguir un review (lanzar reviewer en su lugar); elegir modelo y effort al arrancar la sesión, y recomendar una sesión nueva en vez de un cambio si la tarea necesita otro; opusplan vuelve a cambiar el modelo en cada toggle de plan mode, por lo que no se recomienda para sesiones largas; y /rewind le gana a /compact al abandonar un camino, porque rewind trunca hacia un prefijo ya cacheado mientras que compact construye uno nuevo.

Fuente: home/.claude/skills/route/SKILL.md.

Se guarda solo en este navegador.