PTENES
Saltar al contenido
MÓDULO 4.2

🧱 Patrones avanzados

El kit de patrones del nivel avanzado: el Ralph loop, loops programados en flota, aislamiento por worktree y sandbox, guardrails como el trabajo de verdad, verificación adversarial, fan-out multiagente y memoria entre intentos. Cada uno con su fuente y cómo/cuándo usarlo.

7
Temas
~55
Minutos
Avanzado
Nivel
Patrones
Tipo
Progreso: 0% 0 de 7
1

🐚 Ralph loop

El patrón más básico y más famoso de la casa: el Ralph loop (Geoffrey Huntley / HumanLayer). Es un loop de shell infinito que repite el MISMO prompt una y otra vez. Cada vuelta modifica el código, y ese código modificado se convierte en el estado inicial de la siguiente vuelta.

Un loop de shell luminoso que se cierra sobre sí mismo, con el mismo prompt entrando y el código saliendo modificado en cada vuelta

Qué ver: el mismo prompt entra en todas las vueltas (la flecha no cambia); lo que cambia es el código en el medio, que lleva el progreso a la siguiente iteración. Es el estado externalizado de la 4.1 llevado al extremo.

Objetivo del código de abajo

Ejecutar el mismo prompt en un loop infinito de shell, dejando que el agente avance la tarea en cada vuelta, sin que tengas que volver a escribir nada.

# O Ralph one-liner — cole no seu terminal, na raiz do projeto
# PROMPT.md contém a tarefa; troque o agente pela ferramenta que você usa.

while :; do cat PROMPT.md | npx --yes @sourcegraph/amp ; done

Cómo verificar / cuándo usar: ejecútalo en un repositorio descartable (de preferencia en un worktree aislado — tema 3) con un git status abierto en otra pestaña: verás aparecer commits/cambios en cada vuelta. Úsalo para tareas grandes y repetitivas con verificación integrada; detente pronto — Huntley advierte que ejecutar demasiado produce "bizarre emergent behavior". El loop infinito es igual de poderoso y peligroso: combínalo SIEMPRE con guardrails (tema 4).

2

⏰ Loops programados

Owain Lewis (según se informa) describe la forma «flota»: un ciclo es un trabajo que el agente repite — se activa con una programación o un evento, lee el estado del trabajo, realiza UN job con alcance definido dentro de permisos fijos, escribe el resultado, se duerme y repite. Es lo opuesto a Ralph: disciplinado, pequeño y controlado.

Una flota de pequeños agentes trabajando codo a codo en un panel, cada uno con su franja de trabajo, funcionando todo el día

Qué ver: no es un agente genio que lo hace todo: es una flota de agentes pequeños, cada uno con un job acotado y permisos fijos. La coordinación es externa (el control plane), no está en la cabeza de ningún agente.

🗂️ Manager (split)

Clasifica el backlog: separa lo que es fácil y de bajo riesgo de lo que requiere intervención humana. No escribe código: solo deriva el trabajo.

🔧 Worker

Implementa los tickets de bajo riesgo y abre PRs. Nunca hace merge. El humano aprueba al final: la puerta final queda en nuestras manos.

CONTROL PLANE GitHub Issues gestorclasifica workerimplementa abre un PRnunca hace merge el humano apruebael merge

Lee el flujo: Las Issues de GitHub son el plano de control: la cola de trabajo compartida. El manager clasifica, el worker implementa y abre un PR, y la última puerta (el merge) siempre está en manos humanas. Ningún agente cierra el ciclo por sí solo.

3

🌲 Worktrees, sandboxes y permisos fijos

Para ejecutar varios agentes en paralelo sin que interfieran entre sí —y sin que alguno haga algo irreversible— necesitas aislamiento. Tres piezas: worktrees, sandboxes y permisos fijos.

🌲 Worktree

Aísla el trabajo en paralelo: cada agente en su propio árbol/branch, sin conflictos entre archivos.

📦 Sandbox

Aísla el entorno: el agente se ejecuta en un lugar donde causar daños no tiene ningún costo externo.

🔒 Permisos fijos

Definen lo que PUEDE hacer: así dejas que un loop se ejecute sin hacer algo irreversible.

💡 La idea central de los permisos fijos

Los permisos fijos son el cinturón de seguridad del loop autónomo. Decides ANTES qué puede tocar el agente (esos archivos, esos comandos) y qué está prohibido (prod, secretos, git push --force). Como nadie está mirando en cada vuelta, el límite tiene que estar en el entorno, no depender de tu atención.

4

🛡️ Guardrails = el trabajo de verdad

El consenso grassroots de la comunidad es directo: "los guardrails son el trabajo de verdad, no los agentes." El agente es la parte fácil. Lo difícil — y lo que separa un sistema seguro de un desastre — es diseñar los límites. El worker abre un PR, pero nunca hace merge; un humano lo aprueba.

Objetivo del prompt de abajo

Darle al agente de la flota un contrato de permisos explícito: qué puede hacer, qué está prohibido y cuándo debe detenerse y pedir aprobación humana.

# Cole no topo do PROMPT.md do seu worker (ajuste os nomes ao seu repo)

REGRAS (não negociáveis):
- Trabalhe APENAS nos arquivos sob .
- Abra um Pull Request ao terminar. NUNCA dê merge você mesmo.
- NUNCA toque em produção, em segredos (.env, chaves) nem em CI/CD.
- PROIBIDO: git push --force, deletar branches, alterar o histórico.
- PARE e peça aprovação humana antes de: ,
   ou .
- Se a verificação falhar 3 vezes, pare e escreva o que travou em BLOCKED.md.

Cómo verificar: ejecuta el worker en un worktree de prueba y comprueba el resultado línea por línea — ¿abrió un PR sin hacer merge? ¿no tocó .env? ¿Se detuvo al llegar a una migración? Si se violó alguna regla, la barrera de seguridad es demasiado débil y el prompt debe ser más específico. La barrera solo es real cuando la pones a prueba con un agente que intenta eludirla.

5

🥊 Maker/checker adversarial y especialista en verificación

Ya viste Maker→Checker en la Ruta 2. Aquí sube de nivel: el checker queda adversarial. En vez de solo revisar, un segundo agente (o panel) intenta ROMPER el trabajo: recibe instrucciones para refutar, encontrar el fallo y demostrar que está equivocado.

🚨 Cuidado con la fuente: especulación, no hecho

Hesamation leyó el system prompt de Claude Code e interpretó que introduciría un subagente «verification specialist», pero ÉL MISMO lo calificó como inferencia especulativa, posiblemente inactiva.

Trata al "verification specialist" como una idea de diseño útil, no como una función confirmada de ninguna herramienta. El patrón (separar a quien hace de quien refuta) es sólido; la afirmación específica sobre el system prompt es especulación.

MAKER produce el trabajo CHECKER adversarialintenta ROMPER / refutar APRUEBAno pudo ¿lo refutó? Vuelve para que quien lo creó lo corrija

La diferencia desde el punto de vista adversarial: el checker no pregunta «¿está bien?», pregunta «¿cómo pruebo que está mal?». Solo aprueba cuando NO logra romperlo. Quien lo hace nunca se pone su propia nota: es la regla de oro de la verificación llevada al ataque.

6

🕸️ Multiagente / fan-out / orquestación

La flota crece: un manager que da prompts a agentes que dan prompts a otros agentes —«Russian nesting dolls» (muñecas rusas), anidamiento dentro de anidamiento. El patrón que organiza todo es una secuencia: orquestar → delegar (fan-out) → verificar.

ORQUESTADOR delega (A) agente 1 agente 2 agente N VERIFICA (1) une N → 1

Lee el fan-out: A (un orquestador) → N (varios agentes en paralelo) → 1 (un verificador que lo integra todo). El paralelismo aporta velocidad; la verificación final impide que N errores independientes se conviertan en un producto atractivo pero defectuoso.

7

🧠 Memoria entre intentos (Reflexion)

El último patrón cambia la unidad del loop: en vez de una vuelta, un episodio entero. La memoria entre pruebas (memoria entre intentos, del paper Reflexion) permite que el loop pase por varios intentos: actuar → recibir feedback → reflexionar en texto → guardar en la memoria episódica → hacerlo mejor la próxima vez.

PasoQué sucede
1. Actuarel agente intenta resolver la tarea (la «trial»)
2. Feedbackrecibe una señal de éxito o fracaso (pruebas, evaluador, entorno)
3. Reflexionarescribe en texto por qué falló y qué haría diferente
4. Guardarguarda esa reflexión en la memoria episódica
5. Intentarlo de nuevolee la memoria y hace un intento mejor, sin volver a entrenar nada

🔗 Adónde te lleva esto

Reflexion es la versión «aprende del error» del loop. Combínala con los otros patrones: un worker de una flota que GUARDA lo que aprendió mejora con cada ticket, sin que tengas que ajustar nada. También es la raíz de la idea de «comprehension debt» de la 4.3: cuanto más aprende el sistema por sí solo, menos entiendes por qué hace lo que hace.

En el patrón de flota programada, ¿quién hace el merge del PR?

🧾 Resumen del módulo

✓
Ralph loop — shell infinito con el mismo prompt; potente y peligroso, detente pronto.
✓
Loops programados — flota disciplinada: manager + worker, control plane de Issues, aprobación humana.
✓
Worktrees y sandboxes — aislar el trabajo y el entorno; los permisos fijos evitan lo irreversible.
✓
Guardrails — el trabajo real; PR sin merge, humano en la última puerta.
✓
Maker/checker adversarial — checker que intenta encontrar fallas; «verification specialist» es una especulación útil, no un hecho.
✓
Fan-out / orquestación — orquestar → delegar (A→N) → verificar (N→1).
✓
Cross-trial memory — Reflexion: aprende mediante lenguaje entre intentos, sin reentrenamiento.

Siguiente:

4.3 — Riesgos, costo y caso de estudio (el cierre del curso)