- pi-coding-agent es un framework de agentes de programación diseñado para minimizar las funciones complejas y permitir que el usuario tenga control total del contexto y la transparencia
- Sus cuatro componentes principales son pi-ai, pi-agent-core, pi-tui y pi-coding-agent, y cada uno se encarga respectivamente de la integración con APIs de LLM, el bucle del agente, la UI de terminal y la integración CLI
- Mantiene el prompt del sistema y el conjunto de herramientas por debajo de 1000 tokens, y busca una simplificación extrema al ofrecer solo cuatro herramientas: read/write/edit/bash
- Excluye por completo restricciones de seguridad, subagentes, modo de planificación y soporte MCP, y en su lugar prioriza la observabilidad total y el control
- Los resultados de benchmarks y la experiencia de uso real demuestran que un diseño simple y transparente puede ser suficientemente competitivo frente a agentes complejos
pi-ai y pi-agent-core
- pi-ai ofrece una API unificada de integración con proveedores de LLM como Anthropic, OpenAI, Google, xAI y Groq
- Incluye streaming, llamadas a herramientas, soporte de razonamiento (trace), seguimiento de tokens y costos, y compatibilidad con navegador
- Con solo cuatro APIs principales (OpenAI Completions/Responses, Anthropic Messages y Google Generative AI) puede comunicarse con la mayoría de los modelos
- Unifica el manejo de las diferencias entre APIs de cada proveedor
- Por ejemplo: diferencias en nombres de campos como
max_tokens, ubicación del campo de reasoning o falta de soporte para el rol developer
- Como cada proveedor reporta los tokens de forma distinta, no es posible calcular el costo exacto, así que pi-ai lo rastrea con un enfoque best-effort
- La función Context handoff permite cambiar de modelo o proveedor en medio de una sesión
- Por ejemplo, al pasar de Anthropic → OpenAI → Google, el contenido de razonamiento se conserva transformado en etiquetas ``
- Ofrece definiciones de modelos con seguridad de tipos mediante un registro de modelos
- Analiza datos de OpenRouter y models.dev para generar automáticamente información de costos y capacidades por modelo
- Soporta por completo la interrupción de solicitudes (abort) y la devolución de resultados parciales
- Si se interrumpe el streaming con AbortController, los resultados intermedios pueden aprovecharse tal como están
- Introduce una estructura separada para resultados de herramientas
- Devuelve por separado el texto para el LLM y los datos para mostrar en la UI, y valida argumentos con TypeBox/AJV
- En el futuro planea agregar streaming de resultados de herramientas
- El bucle del agente repite automáticamente el procesamiento de mensajes, la ejecución de herramientas y la retroalimentación de resultados
- Su estructura basada en eventos facilita implementar una UI reactiva
- Se simplifica eliminando parámetros de control innecesarios, como el número máximo de pasos
pi-tui
- pi-tui es un framework de UI de terminal basado en Node.js que permite actualizaciones en tiempo real con parpadeo mínimo
- Usa renderizado diferencial (differential rendering) para actualizar solo las líneas modificadas
- Minimiza el parpadeo mediante secuencias de salida sincronizadas (CSI ?2026h/l)
- Entre dos enfoques de TUI, adopta un método de salida tipo CLI que conserva el búfer de scrollback
- Aprovecha intactas las funciones nativas de la terminal, como scroll natural y búsqueda
- Tiene una estructura similar a Claude Code, Codex y Droid
- Utiliza una UI de modo retenido (Retained mode UI)
- Cada componente almacena en caché su propio resultado de renderizado y solo se vuelve a dibujar cuando hay cambios
- Esto permite actualizaciones eficientes sin rerenderizar toda la pantalla
- El rendimiento y el uso de memoria son mínimos, y puede manejar sesiones grandes sin problemas con solo unos cientos de KB
pi-coding-agent
- pi-coding-agent es un agente de programación basado en CLI que ofrece las siguientes funciones
- Soporte para Windows/Linux/macOS, gestión de sesiones (reanudar y ramificar), cambio de modelo y carga de AGENTS.md por proyecto
- Autenticación OAuth, cambio de tema en tiempo real, exportación de sesiones a HTML y modo headless (JSON/RPC)
- El prompt del sistema es una forma concisa de menos de 1000 tokens
- Solo especifica las cuatro herramientas read/write/edit/bash
- Elimina explicaciones innecesarias y reglas complejas, y permite que el usuario amplíe libremente mediante AGENTS.md
- El conjunto de herramientas se compone del mínimo de 4
- Solo usa
read, write, edit y bash, lo que basta para la mayoría de las tareas de programación
- Herramientas adicionales pueden activarse opcionalmente (por ejemplo: grep, find, ls)
- Aplica por defecto el modo YOLO
- No hay restricciones para acceder a todo el sistema de archivos ni para ejecutar comandos
- Se eliminan los prompts de seguridad y los procedimientos de validación previa; en su lugar se recomienda usar un entorno con contenedores
- Se eliminan por completo To-do integrado, modo Plan, MCP, Background bash y Sub-agent
- To-do/Plan se sustituyen simplemente por gestión basada en archivos (TODO.md, PLAN.md)
- MCP se excluye por desperdicio de tokens y complejidad, y se reemplaza por un enfoque de CLI+README
- Para Background bash se recomienda usar tmux
- Los Sub-agent se desactivan por falta de visibilidad; si hace falta, puede invocarse a sí mismo desde bash
- Se prioriza la observabilidad (Observability)
- Todos los comandos, accesos a archivos y salidas se muestran con total transparencia
- Contrasta con la estructura de “caja negra” de otros agentes como Claude Code
Benchmarks
- Se realizaron pruebas en Terminal-Bench 2.0 junto con el modelo Claude Opus 4.5
- Frente a Codex, Cursor, Windsurf y otros, obtuvo un rendimiento competitivo
- El archivo de resultados (
results.json) fue enviado al repositorio público
- Agentes simples como Terminus 2 también mostraron un rendimiento similar, lo que demuestra la validez del enfoque minimalista
Conclusión
- pi es un agente de programación que prioriza el control del contexto, la simplicidad y la transparencia por encima de funciones complejas
- Tanto en uso real como en benchmarks mostró una eficiencia equivalente a la de agentes grandes
- Las próximas funciones previstas son básicamente la compresión de contexto (compaction) y el streaming de resultados de herramientas
- El proyecto está publicado como open source y garantiza libertad para hacer forks y ampliarlo
- La lección central es: “la simplicidad es control, y el control es productividad”
2 comentarios
Pi: análisis del agente de IA para desarrolladores, núcleo de OpenClaw y extremadamente simplificado
Comentarios en Hacker News
Parece un proyecto realmente genial y bien pensado
Yo también coincido totalmente en la importancia de la ingeniería de contexto y de las estructuras de conversación basadas en árboles
El flujo de conversación lineal tradicional era demasiado limitado, así que resultaba incómodo colaborar con un LLM al investigar o generar ideas
Yo también hice una herramienta personal con una filosofía parecida, reutilizando contexto bien armado o lanzando side quests y trayendo solo los buenos resultados
La versión que hiciste tiene mucho más valor como implementación. Me alegra haber conocido Pi gracias a esto
Así mantengo memoria entre sesiones y reduzco el desperdicio de contexto al crear subagentes
Se puede ver mi código de ejemplo
Siento que la relación entre OpenClaw y Pi-agent es parecida a la de ollama/llama-cpp
El primero se lleva la atención, pero en realidad el segundo es más impresionante
Claude Code está bien por ahora gracias a los beneficios de la suscripción, pero cuando el mercado se estabilice y se acerque al costo de las APIs, una experiencia premium de pago por token probablemente será una mejor opción
Al final, creo que un framework de agentes personalizable terminará imponiéndose sobre las apps cerradas
La estructura de costos de inferencia es más eficiente de lo que parece y además tienen suficiente dinero para I+D
Todas las herramientas están mejorando poco a poco, y los productos competidores tampoco son perfectos
En lo personal, me da gusto que el proyecto de Peter esté recibiendo atención
Sigue habiendo muchos PR del lado de OpenClaw, pero Pi está como en una centésima parte de eso, así que es mucho más fácil de mantener
OpenAI también decía: “no entiendo por qué ChatGPT es tan popular, si GPT ya existía vía API”
Me sorprende que Google todavía no soporte tool call streaming
Ni siquiera ofrece un tokenizador local, así que AI Studio tiene esa estructura ineficiente de contar tokens con llamadas a la API cada vez
El uso de CPU sube hasta 100%, y siento que mi laptop consume más energía que un clúster de TPU
La mayoría de las medidas de seguridad de otros agentes de código no pasan de ser puro security theater
Codex ejecuta comandos dentro de un sandbox del sistema operativo (por ejemplo, macOS Seatbelt), así que no es completamente inútil
Aunque dé flojera, sigue siendo mejor que tener que recuperar un comando equivocado
Sin tocar la base de datos, solo dejando que modifique la UI y el código de capa intermedia
Ya vi a varios power users pasarse a Pi, y yo también lo estoy considerando
Las ventajas de Pi son el control total del contexto y una estructura de herramientas extensible
Hay varios ejemplos de system prompts, extensiones de todo, adaptadores MCP y más
Si entiendes problemas como los límites de rendimiento del contexto, el context rot y el contextual drift, el valor de Pi se vuelve evidente
Colección de enlaces relacionados
Armin claramente está adelantado a su tiempo
Claude Code sigue siendo superficial en hooks y manejo de contexto
Yo todavía uso Cursor
Intenté pasarme a Claude Code, pero en mi codebase pequeña Cursor es mucho más rápido
Eso sí, es incómodo que la UI de revisión de diffs no esté integrada con Git
Me cuesta distinguir entre cambios hechos por la IA y cambios hechos por mí, y siento que la revisión integrada con Git es más importante
Claude Code da la sensación de que solo confías y lo dejas trabajar, y eso me pone inquieto
Poder cambiar de modelo libremente es clave. El rendimiento cambia según el lenguaje o el tipo de tarea
Yo hice un hook que mete la lista de archivos en el contexto al inicio para mejorar la velocidad
También hice una herramienta personalizada para editar varios archivos al mismo tiempo y me dio una mejora de unas 3 veces, pero la desactivé por algunos casos límite
Por ejemplo, automatizar pruebas de frontend o ajustar landing pages
Las funciones principales las manejo en un bucle de retroalimentación cercano con otra instancia de Claude
Me impresionó el artículo sobre una arquitectura de agentes minimalista
Me gusta la filosofía de “si no hace falta, no lo construyas”
Yo uso OpenClaw para gestionar varios flujos de trabajo en paralelo: soporte al cliente, monitoreo de despliegues, revisión de código y más
La clave está en la ingeniería de contexto
El modelo centrado en workspace de OpenClaw mantiene el aprendizaje entre sesiones con AGENTS.md, TOOLS.md y el directorio memory/
Puedes observar en los logs cómo el agente va aprendiendo por sí solo
Me gusta ese enfoque de reconocer modelos de amenaza realistas en lugar de hacer teatro de seguridad
También coincido en que tener varios agentes especializados en paralelo es mejor que uno de propósito general
Sería interesante comparar Pi y OpenClaw en Terminal-Bench
Me gustó el texto sobre por qué Armin Ronacher usa Pi
Al ver la publicación de Armin, fue la primera vez que supe que Pi era el arnés de agentes de OpenClaw
Pi tiene una estructura basada en JavaScript, así que encaja bien con una arquitectura de sandbox de navegador
Creo que va en la dirección correcta para el futuro de los agentes de IA
Aun así, me gustaría que el autor fuera más flexible respecto a las vendor extensions
Discusión relacionada
Yo todavía no uso el modo YOLO
Parece que todavía faltan unos 6 meses para que el tooling esté realmente completo
Casi nunca hace falta que un agente ejecute comandos arbitrarios
Basta con integrar al sistema de permisos cosas como lint, búsqueda, edición y acceso web
Un runtime con sandboxing y control de permisos como Deno o Workerd ya sirve como primera línea de defensa
Por eso me cuesta entender que Anthropic haya elegido Bun: prácticamente no tiene arquitectura de seguridad