# Tarea: contrastar la filosofía de Claude Code (Boris Cherny) contra AgentSquad, para mejorarlo

> Prompt listo para pegar en **Claude Code** dentro de `~/agent-squad-app`.
> Transcripción fuente: https://playgrounds.digitalhubassist.ai/transcripts/boris-claude-code-entrevista.md

---

## Contexto
Acabo de transcribir una entrevista a Boris Cherny (creador de Claude Code) y Cat (PM).
La transcripción completa + resumen está aquí (léela ANTES de empezar):
https://playgrounds.digitalhubassist.ai/transcripts/boris-claude-code-entrevista.md

De esa entrevista extraigo 8 principios de diseño de sistemas agénticos que quiero
usar como LENTE CRÍTICA sobre nuestra plataforma AgentSquad:

1. Do the simple thing first — la solución mínima que funciona gana; las restricciones son features.
2. Harness minimalista — reescribir para simplificar, no para acumular.
3. Contexto puro al modelo — el andamiaje no debe ensuciar ni confundir el contexto del modelo.
4. Tres capas de decisión: (a) en el modelo, (b) scaffolding sobre el harness, (c) composición externa. Cada feature vive en UNA capa correcta.
5. Diseñar para el modelo de dentro de 3 meses, no el de hoy — apuntar a más autonomía.
6. Bottom-up / dogfooding — construir lo que uno mismo usaría; medir adopción diaria real.
7. Subagentes en paralelo — lanzar N intentos y elegir/summarizar el mejor.
8. El modelo escribe sus propias herramientas cuando la librería externa no alcanza (patrón FORGE).

## Qué es AgentSquad (nuestra plataforma)
- App consumer: `~/agent-squad-app/` (repo). Substrato / control plane: `~/substrate-infra/`.
- Doc de ingeniería inversa verificada contra código: `~/agent-squad-app/docs/reverse-engineering/{01-prd,02-trd,03-ui-ux,04-app-flow,05-backend-schema,06-implementation-plan}.md`
- Stack substrato: Inngest (durable workflows) + Postgres16/pgvector/pgvectorscale (diskann) + Langfuse + Claude. 10 primitives Intent→Plan→Trace→Claim→Artifact con lineage. Human-gate durable (72h). FORGE = construye capacidades faltantes en runtime (draft spec → TDD → sandbox → build-gate humano → registra).

## Lo que quiero que hagas (en este orden)
1. **Lee** la transcripción del link y **mapea** los 8 principios a hallazgos concretos del código real de AgentSquad. NO teorices: abre los repos, cita `archivo:línea`.
2. Para cada principio, produce una fila con:
   - **Principio (Boris)**
   - **Cómo lo hace AgentSquad hoy** (con evidencia file:line)
   - **Veredicto:** ✅ alineado / ⚠️ parcial / ❌ diverge
   - **Costo de la divergencia** (qué problema real causa: complejidad, contexto sucio, over-engineering, capa equivocada)
   - **Mejora propuesta concreta** (qué borrar/simplificar/mover de capa)
3. Presta atención especial a:
   - **Over-engineering** que "do the simple thing first" eliminaría (ej. arquitecturas de memoria elaboradas vs. un archivo; retrieval vectorial donde una llamada LLM basta — revisa el MATCH de Nova en `compose.ts`/`nova-compose.ts`).
   - **Contexto que ensucia al modelo**: prompts inflados, scaffolding que el modelo ya no necesita.
   - **Features en la capa equivocada**: cosas metidas en el harness que deberían ser composición externa, o al revés.
   - **Deuda de simplificación**: dónde AgentSquad debería reescribir-para-simplificar como Boris hizo 5 veces con el harness.
4. Cierra con un **backlog priorizado** (tallaje S/M/L) de las 5-8 mejoras de mayor leverage, cada una con un bloque **Done when** verificable (comando o inspección concreta, nada subjetivo).

## Reglas
- El código manda sobre los docs. Si un doc y el código difieren, cita el código.
- No inventes rutas, tablas ni endpoints: verifícalos antes de afirmar.
- No propongas reescrituras masivas gratis — cada propuesta debe pagar su complejidad con un problema real que hoy causa.
- Distingue lo que es divergencia legítima (AgentSquad es multi-agente de negocio, no un CLI de coding) de lo que es over-engineering real. No fuerces el molde de Claude Code donde no aplica.
- Entrega en Markdown: tabla de los 8 principios + backlog priorizado con Done when.
