Pi 1.0: el agent harness minimalista de Earendil

Pi 1.0: el agent harness minimalista de Earendil

@programacion

Lo esencial

  • Earendil lanzó Pi 1.0 el 1 de octubre de 2026 con soporte nativo para Codemode y MCP.
  • Cientos de miles de personas usan Pi cada semana como agente de código diario.
  • Un agent harness conecta al modelo con herramientas, contexto y el entorno de ejecución real.
  • Codemode deja que el agente escriba un script en vez de llamar herramientas una por una.
  • Pi Durable, paquete experimental separado, extiende el mismo enfoque a tareas de larga duración.

Qué pasó con Pi 1.0

Earendil publicó hoy la versión 1.0 de Pi, su agent harness de código abierto que cientos de miles de personas usan cada semana. La novedad no es el número de versión: es que Pi por fin suma soporte nativo para Codemode y MCP, dos tecnologías que el equipo evitó deliberadamente durante meses.

Junto con Pi 1.0 llegó Pi Durable, un paquete experimental distinto, pensado para conversaciones y tareas que duran horas o días en vez de una sola sesión de terminal. Comparte la misma filosofía minimalista, pero la aplica a un problema diferente.

Qué es un agent harness

Un agent harness es el software que rodea a un modelo de lenguaje y lo convierte en algo que puede actuar. Administra el historial de la conversación, decide qué herramientas puede invocar, arma el contexto que recibe el modelo en cada turno y traduce sus respuestas en acciones reales: leer un archivo, correr un comando, llamar una API.

Pensá en el modelo como el motor de un auto. El harness es la carrocería, el volante y los pedales. Sin él, la inteligencia del modelo no llega a ningún lado: no puede ver tu repositorio, ni ejecutar nada, ni recordar lo que pasó hace tres mensajes.

MCP y Codemode: dos formas de dar herramientas al agente

MCP (Model Context Protocol) es un estándar abierto para exponer herramientas y datos a un modelo, de forma que cualquier cliente compatible pueda usarlas sin integraciones a medida. El agente ve una lista de funciones disponibles y las llama una por una, en formato JSON, en cada turno de la conversación.

Codemode cambia el mecanismo: en vez de pedir una herramienta a la vez, el agente escribe un script completo que las encadena y lo ejecuta de un solo golpe. Esto reduce las idas y vueltas entre el modelo y el harness, aunque exige un entorno capaz de correr ese código de forma segura.

// Codemode: el agente escribe esto en vez de 10 tool calls sueltos
import { listarCommits } from "mcp:git-server";
import { resumirConLLM } from "mcp:claude-server";

const commits = await listarCommits({ repo: "backend-pagos", dias: 7 });
const resumen = await resumirConLLM({
texto: commits.map(c => c.mensaje).join("\n"),
});
console.log(resumen);

Ese script resume una semana de commits en un párrafo sin que el modelo tenga que pedir permiso para cada paso. Es el ejemplo que Earendil usa para mostrar Codemode en producción.

La filosofía minimalista: esperar antes de adoptar

El equipo de Pi explica que prefiere esperar a que una herramienta demuestre valor real antes de integrarla, sopesando su funcionalidad frente a la complejidad que suma al proyecto. Por eso Pi tardó meses en sumar MCP y Codemode, pese a que ambos ya eran populares en el resto del ecosistema de agentes.

La lista de features que sí entraron a Pi 1.0 (Codemode, carga diferida de herramientas, cache warming para modelos de Anthropic, mensajes de sistema a mitad de conversación) es corta. La lista de cosas que probaron y descartaron es, según el propio equipo, mucho más larga.

Instalar Pi 1.0

La instalación sigue siendo un solo comando, sin configuración previa:

# macOS / Linux
curl -fsSL https://pi.dev/install.sh | sh
# Windows (PowerShell)
powershell -c "irm https://pi.dev/install.ps1 | iex"

Pi Durable, en cambio, se instala como paquete de Node para quien quiera construir aplicaciones agénticas de larga duración:

npm install @earendil-works/pi-durable @earendil-works/pi-ai @earendil-works/chord

Ejemplo: una extensión que el propio agente escribe

Con Codemode, Pi permite que el agente se escriba extensiones a sí mismo. Earendil muestra el caso de un modelo virtual que planifica con un modelo y ejecuta con otro, decidiendo en qué momento conviene cambiar:

// Extensión de Pi: router entre dos modelos según la fase de la tarea
export const routerAuto = {
planificar: "claude-opus-4-8",
implementar: "gpt-5.6",
decidirFase: (contexto) =>
contexto.tieneCodigoGenerado ? "implementar" : "planificar",
};

Esa extensión no viene de fábrica: la arma el agente en tiempo real y queda disponible como un modelo más, router/auto, que cualquiera puede elegir al abrir una sesión nueva en la terminal.

Cuándo conviene un harness minimalista (y cuándo no)

Pi no trae de fábrica paneles de administración, conectores empresariales preconfigurados ni bases de datos vectoriales integradas, cosas que sí ofrecen frameworks de agentes más completos desde el primer día. Si un equipo necesita salir a producción en días sin escribir código de integración propio, un harness minimalista le va a pedir más trabajo manual al inicio.

Conviene elegirlo cuando el equipo quiere controlar exactamente qué entra al contexto del modelo y prefiere sumar solo lo que ya probó que funciona en su propio flujo de trabajo. El código de Pi está publicado en GitHub bajo licencia MIT, así que esa personalización se puede llevar hasta el extremo de modificar el propio harness.

Conclusión

Un agent harness es la capa que convierte un modelo de lenguaje en algo que puede actuar sobre un sistema real. MCP y Codemode son dos formas distintas de darle herramientas: una estandariza la lista de funciones disponibles, la otra deja que el agente escriba el código que las conecta. La apuesta de Pi 1.0 es simple de explicar y difícil de sostener: agregar poco, tarde, y solo lo que ya probó su valor.

📖 Versión extendida con más detalle: https://elsolitario.org/2026/10/01/agent-harness-filosofia-minimalista/?utm_source=telegraph&utm_medium=instant_view&utm_campaign=programacion

Report Page