PTENES
Saltar al contenido
MÓDULO 3.1

🪜 Las cinco capas

Prompt, contexto, harness, loop, grafo. Cinco capas, cada una envolviendo la de abajo. La mayoría de los problemas de agentes que creías que eran un "prompt malo" vive en una capa más profunda, y subir de capa sin dominar la de abajo solo multiplica el problema.

6
Temas
40
Minutos
Intermedio
Nivel
Base
Tipo
Progreso de este módulo
0%0 de 6
1

💬 Empieza por el prompt: lo que pides

La primera capa es la que todos conocen: el prompt, el texto que escribes para pedirle algo al modelo. También es la capa donde la mayoría de las personas se atasca: cuando el agente hace algo mal, la reacción es «déjame reescribir el prompt». A veces funciona. La mayoría de las veces, solo aplaza el problema.

Mejorar el prompt tiene rendimiento decreciente rápido: las primeras mejoras (ser específico, dar un ejemplo, pedir un formato de salida) resuelven muchas cosas. Después de cierto punto, agregar más instrucciones al prompt deja de cambiar el resultado. Eso es una señal — no de que hayas escrito mal, sino de que el problema cambió de lugar.

🆕 ¿Nuevo aquí? Tres palabras antes de seguir

  • Harness: la infraestructura que rodea al modelo: qué herramientas tiene, qué permisos tiene, cómo se captura la salida. Sin harness, el modelo solo conversa; con harness, actúa.
  • Ventana de contexto: la cantidad de texto (medida en tokens) que el modelo puede "ver" de una vez al responder. Si supera el límite, olvida lo que vino antes.
  • Presupuesto de tokens: cuánto texto (entrada + salida) te permites gastar en una llamada o en una tarea completa — es el límite práctico de costo y de contexto.
prompt lo que pides contexto qué sabe harness qué puede hacer loop cuántas veces lo intenta grafo cómo se conectan los loops cada nivel envuelve al de abajo — no cambias uno por el otro

Qué observar: la línea punteada sube sin romperse: cada escalón está encima del anterior, no en su lugar. El brillo queda solo en el último escalón, "grafo", que es el horizonte de este módulo. Recuerda el orden: es ahí donde vas a diagnosticar en qué punto está realmente atascado un agente que no funciona.

✓ El prompt lo resuelve

  • ✓Formato de salida incorrecto (se pidió texto, llegó JSON malformado)
  • ✓Tono o nivel de detalle fuera de lo esperado
  • ✓Ambigüedad genuina en la instrucción ("resume" — ¿en cuántas líneas?)

✗ Un prompt no lo resuelve

  • ✗El agente no tiene acceso al archivo que necesita leer (es harness)
  • ✗«Olvidó» una instrucción dada 40 mil tokens atrás (y eso es contexto)
  • ✗Deja de volver a intentarlo después del primer error (y eso es loop)

Conceptos clave

Capa 1

La más visible, la más tentadora

Rendimiento decreciente

Mejora rápido y luego se estanca

Síntoma vs. causa

Un prompt malo a veces es síntoma de otra capa

Prueba de la meseta

¿Dejó de mejorar? Sube de capa

2

🧠 Controla el contexto: lo que sabe

La segunda capa es el contexto: todo lo que el agente «ve» en el momento de actuar: archivos abiertos, historial de la conversación, documentación adjunta, salida de una herramienta que acaba de ejecutar. El prompt es lo que le pides; el contexto es lo que sabe mientras responde. Son cosas distintas, y confundirlas es el error más común después del prompt.

Todo modelo tiene una ventana de contexto limitada. Cuando se llena de cosas irrelevantes — logs detallados, archivos que nadie necesita, historial repetido — el modelo empieza a "olvidar" lo que importa, aunque la instrucción original fuera perfecta. Un contexto incorrecto perjudica un buen prompt; ningún prompt es lo suficientemente bueno para compensar una ventana de contexto contaminada.

📊 Lo que suele saturar la ventana de contexto

  • Salida de herramienta sin procesar — un registro de 500 líneas cuando solo 3 eran importantes
  • Historial acumulado — 40 idas y vueltas de una conversación que debió reiniciarse
  • Documentación completa — pegar todo el manual en vez del fragmento pertinente
  • Instrucción desactualizada — una regla antigua que nadie eliminó y que todavía compite por atención

✓ Contexto bien cuidado

  • ✓Solo el fragmento del archivo que se editará, no todo el repositorio
  • ✓Salida de herramienta resumida antes de volver al modelo
  • ✓Historial recortado cuando la tarea cambia de fase

✗ Contexto que sabotea

  • ✗Pegar todo «para asegurarte»: el modelo no pondera la importancia igual que tú
  • ✗Dejar que el error de un intento anterior contamine el siguiente sin indicar que ya se resolvió
  • ✗Nunca se poda: la ventana solo crece hasta desbordarse

💡 Consejo práctico

Antes de reescribir un prompt que "no está funcionando", revisa qué hay dentro de la ventana de contexto en ese momento. Si hay algo que tú mismo no podrías usar para responder bien, el modelo tampoco podrá. Limpiar el contexto suele resolver lo que no se solucionó al reescribir el prompt.

Conceptos clave

Capa 2

Lo que sabe el agente, no lo que pides

Ventana finita

Siempre tiene un límite de tokens

Contaminación

Lo irrelevante compite con lo que importa

Podar > acumular

El contexto requiere curación continua

3

🧰 Arma el harness: con qué actúa

La tercera capa es el harness: la infraestructura que rodea al modelo. Qué herramientas tiene (leer archivos, ejecutar comandos, llamar a una API), con qué permisos, cómo se captura la salida de cada herramienta y se devuelve al modelo, qué ocurre cuando falla una herramienta (reintento — volver a intentarlo automáticamente), y cuánto presupuesto de tokens tiene para gastar toda la tarea.

El prompt dice qué; harness dice con qué. Un agente con un prompt perfecto y un harness deficiente (sin acceso al archivo correcto, sin permiso para ejecutar el comando que resolvería el problema) se queda atascado de todos modos — y ninguna reescritura del prompt lo destraba, porque el problema nunca estuvo en el texto.

1

Herramientas y permisos

Lo que el agente puede llamar y lo que puede hacer con cada llamada.

Leer es diferente de escribir; escribir en un archivo es diferente de ejecutar un comando en el sistema. Cada nivel es una decisión de riesgo.

2

Captura de salida y reintento

Lo que vuelve al modelo después de una llamada a una herramienta y qué ocurre si falla.

Reintento (retry): reintentar automáticamente después de un fallo, generalmente con un límite de intentos.

3

Presupuesto de tokens

El límite de gasto (entrada + salida) para la llamada o para toda la tarea.

Sin un presupuesto definido, un agente con loop puede consumir crédito indefinidamente antes de que alguien se dé cuenta.

⚠️ Señal de que el problema está en el harness, no en el prompt

Si pides lo mismo de dos maneras diferentes y el agente falla igual en ambas —revisa el archivo equivocado, no tiene permiso para ejecutar la prueba, no tiene herramientas para validar su propio trabajo—, el prompt no es el cuello de botella. Es la infraestructura que lo rodea la que debe cambiar.

Conceptos clave

Capa 3

Con aquello sobre lo que actúa, no con lo que sabe

Herramientas

Lo que está disponible para llamar

Permiso

Lo que puede hacer, no solo lo que existe

Presupuesto de tokens

El límite de gasto de la tarea

4

🔁 Diseña el loop: cuántas veces y cómo se detiene

La cuarta capa es el loop: cuántas veces lo intenta el agente y cómo sabe que terminó. Esa es toda la Ruta 2 condensada: descubrir, planificar, actuar, verificar, detenerse. Es la capa en la que dejas de escribir prompts y empiezas a diseñar ciclo: ya no se trata de qué pedir en una sola llamada, sino de cómo se comporta el sistema a lo largo de varias.

Un agente puede tener un prompt excelente, contexto limpio y un harness bien montado y aun así fallar — porque nadie diseñó la condición de parada, o porque el verificador (lo que decide si el resultado es bueno) está ausente o es débil. En ese punto, más prompt no ayuda: lo que falta es diseñar el loop.

🎯 La pregunta que cambia cuando subes a esta capa

Ya no es "¿qué pido?" — es "¿cuántas vueltas lleva esto y qué me indica que terminó?"

Si la respuesta es «no sé, se detiene cuando se cansa» o «no sé, se ejecuta hasta que se agota el presupuesto», el bucle no está diseñado: está ocurriendo por accidente.

Conceptos clave

Capa 4

Cuántas veces y cómo sabes que terminó

Condición de parada

Sin ella, funciona para siempre

Verificador

Lo que decide si pasó

Diseñar > pedir

Sistema, no una sola llamada

5

🕸️ Conecta los loops en un grafo: cuántos hay y cómo se conectan

La quinta capa solo tiene sentido después de las otras cuatro: cuántos bucles tienes y cómo se conectan. Aquí, un grafo es literalmente varios bucles (o nodos sin ningún bucle) conectados por aristas — el investigador se lo envía al escritor, el escritor se lo envía al revisor, y el revisor puede devolverlo al escritor. Cada uno de estos es un nodo; toda la red es el grafo.

Subir a esta capa sin dominar las cuatro de abajo multiplica el problema en vez de resolverlo. Si un bucle individual ya no tiene una condición de parada clara, poner tres de esos bucles en un grafo no crea tres problemas — crea un problema combinatorio, porque ahora cada bucle mal diseñado puede contaminar a los vecinos.

💡 Consejo práctico

Antes de dibujar un grafo, pregúntate: ¿cada nodo individual, por separado, ya funciona como loop, con su propia condición de parada y su propio verificador? Si la respuesta para cualquiera es no, resuélvelo primero. Un grafo no arregla un loop roto, solo propaga el problema.

Conceptos clave

Capa 5

Cuántos loops y cómo se conectan

Nodo = loop (o menos)

Cada nodo puede ser un loop completo

Prerequisito

Solo asciende quien domina la capa 4

Multiplica, no resuelve

Un grafo sobre un loop defectuoso lo empeora

6

⚖️ Compara los dos harnesses: script × runtime distribuido

El harness de UN loop cabe en un script: entrada del prompt, ventana de contexto, presupuesto de tokens, lógica de reintentos, captura de salida. Lo escribes en una tarde. El harness de un GRAFO hace todo esto y más: enrutamiento de mensajes entre nodos, aislamiento de fallas de un nodo (si un nodo falla, no puede derribar todo el grafo), consistencia del estado entre nodos (lo que un nodo sabe debe coincidir con lo que espera el siguiente), creación dinámica de nodos (el grafo decide en tiempo de ejecución que necesita un nodo más), y observabilidad del grafo entero.

Observabilidad, aquí, es la capacidad de responder: qué nodos se ejecutaron, en qué orden y con qué latencia (tiempo de ejecución). En un script de un solo bucle, esa pregunta es trivial — se ejecutó una vez, se ejecutó de nuevo, se detuvo. En un grafo con nodos paralelos y enrutamiento condicional, sin instrumentación simplemente no sabes qué pasó. Es exactamente por eso que los frameworks de orquestación (herramientas que coordinan varios agentes/nodos) ganan terreno cuando la conversación pasa de bucle a grafo: resuelven este conjunto de problemas de runtime distribuido — un sistema en el que varias partes se ejecutan de forma coordinada y cada una puede fallar independientemente de las otras, en lugar de dejar que cada equipo reinvente esto manualmente.

harness de loop contexto presupuesto retry salida cabe en un script harness de grafo enrutamiento entre nodos aislamiento de fallas consistencia del estado creación dinámica de nodos observabilidad (quién/orden/latencia) y se parece más a un runtime distribuido que a un script

Qué observar: compara el tamaño de las dos cajas. La caja de la izquierda tiene 4 responsabilidades y cabe en una tarde de trabajo. La caja de la derecha tiene 5 responsabilidades — y cada una de ellas, por sí sola, es un proyecto de ingeniería (el aislamiento de fallas, por ejemplo, es todo un tema de los sistemas distribuidos clásicos). Eso explica por qué "solo agregar un agente más" nunca es "solo".

ResponsabilidadHarness de loopHarness de grafo
Entrada de prompt1 punto de entrada1 por nodo, enrutado
FallaDetiene el loop completoAislada, no derriba el grafo
EstadoUna variable localNecesita un schema entre nosotros
ObservabilidadUn log linealTraza de nodos, orden, latencia

🧪 Ejemplo práctico: diagnostica en qué capa está el problema

Objetivo: dejar de reescribir prompts a ciegas. Un prompt listo para ejecutar en Claude Code (o cualquier asistente agéntico) que te obliga a pasar por las cinco capas antes de aceptar "mejora el prompt" como respuesta.

Meu agente faz <o que ele faz de errado> quando eu peco <a tarefa>.

Antes de sugerir qualquer mudanca, analise as cinco camadas NESTA ORDEM
e descarte cada uma explicitamente antes de passar pra proxima:

1. PROMPT — a instrucao em si tem ambiguidade real, ou ja e clara?
2. CONTEXTO — o que o agente "ve" no momento de agir esta limpo,
   ou tem coisa irrelevante competindo com o que importa?
3. HARNESS — ele tem a ferramenta certa, com a permissao certa,
   e a saida dela volta pra ele de um jeito util?
4. LOOP — existe condicao de parada e verificador? Ele sabe quando
   "terminou" de verdade, ou so para de tentar?
5. GRAFO — se ha mais de um agente/etapa, o problema esta na
   ligacao entre eles (roteamento, estado que vaza) e nao dentro
   de um unico no?

Para cada camada, diga "descartada" ou "e aqui" com uma frase de
justificativa. So recomende uma mudanca depois de passar pelas cinco.

Cómo verificar: si la respuesta es solo "mejora el prompt así..." sin mencionar las otras cuatro capas, el modelo se saltó el diagnóstico — vuelve a pedirlo, insistiendo en que descarte capa por capa, en orden, antes de recomendar algo.

Ahora cámbialo por el tuyo: reemplaza <o que ele faz de errado> e <a tarefa> por el caso real que tienes entre manos.

Verificación rápida (no bloquea nada): tu agente con UN solo loop ya funciona bien por sí solo, pero quieres agregar un segundo agente que revise su resultado. ¿Qué exige este cambio que no requería un harness de loop simple?

Conceptos clave

Script × runtime

Diferencia de tamaño, no de grado

5 responsabilidades nuevas

Enrutamiento, aislamiento, estado, spawn, observabilidad

Observabilidad

Quién se ejecutó, en qué orden y con qué latencia

Orquestación

Por eso los frameworks ganan tracción aquí

📌 Resumen del módulo

✓
Prompt = lo que pides — la capa más visible, con rendimientos decrecientes rápidos.
✓
Contexto = lo que sabe — ventana finita; un contexto contaminado arruina un buen prompt.
✓
Harness = con qué actúa — herramientas, permisos, reintentos, presupuesto de tokens.
✓
Bucle = cuántas veces y cómo se detiene — toda la Trilha 2, condensada en una capa.
✓
Grafo = cuántos loops hay y cómo se conectan — solo tiene sentido después de dominar las cuatro de abajo.
✓
Harness de grafo y runtime distribuido — enrutamiento, aislamiento de fallas, estado, creación dinámica de agentes, observabilidad.

Próximo módulo:

3.2 — La comparación de verdad: agentic, loop y graph lado a lado, en el mismo caso: el daily brief.