15 puntos por GN⁺ 2026-02-02 | 2 comentarios | Compartir por WhatsApp
  • 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

 
GN⁺ 2026-02-02
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

    • Yo también probé algo parecido. Gestiono un archivo Markdown llamado MIND_MAP.md en forma de grafo y voy registrando citas en línea
      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

    • Más bien creo que los precios de API van a bajar todavía más y que los beneficios de la suscripción de Claude Code probablemente aumenten
      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
    • Pi también permite integración con suscripción. OpenAI permitió usar la suscripción de GPT desde Pi
      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
    • Es casi exactamente la misma situación que entre ChatGPT y GPT-3
      OpenAI también decía: “no entiendo por qué ChatGPT es tan popular, si GPT ya existía vía API”
    • También creo que podría terminar en enshittification (degradación de calidad), como ollama
    • El nombre “pi” es un poco confuso. Ya existe otro “Pi” bastante conocido, así que me pregunto por qué usaron ese nombre
  • 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

    • AI Studio tiene un bug por el cual sigue contando tokens incluso cuando no estás escribiendo
      El uso de CPU sube hasta 100%, y siento que mi laptop consume más energía que un clúster de TPU
    • De hecho, Anthropic tampoco ofrece un tokenizador
  • 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

    • Creo que cualquier tool call que no sea de solo lectura debería requerir aprobación manual
      Aunque dé flojera, sigue siendo mejor que tener que recuperar un comando equivocado
    • Mi Codex, si le pides que parchee un SDK fuera del sandbox, modifica los archivos con Python
    • Ejecutar un agente fuera de un contenedor es riesgoso. Es lo más básico de lo básico
    • Yo conecté Codex a un repo de GitHub para que genere PR automáticamente
      Sin tocar la base de datos, solo dejando que modifique la UI y el código de capa intermedia
    • Me pregunto si Codex desactiva arbitrariamente el sandbox como Claude Code
    • El modo YOLO solo debería usarse dentro de un contenedor. Hay que limitarlo para que acceda solo a los recursos necesarios
  • 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

    • Pi es la parte que más atención debería recibir dentro de moltXYZ
      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

    • La fortaleza de Cursor es su bucle de retroalimentación corto
      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
    • Si instalas la extensión de Claude Code para VS Code, puedes aprovechar al mismo tiempo la exploración de codebases grandes y la integración con CC
    • Claude Code no tiene un índice del proyecto por defecto, así que va explorando archivos uno por uno
      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
    • Yo también soy un desarrollador solo, bootstrappeado, y uso Claude para automatizar tareas pequeñas
      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
    • Cursor también está mejorando. Pronto agregará la función de blame de líneas escritas por IA, para ver qué modelo escribió qué y con qué prompt
  • 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

    • La frase “estandariza la intersección y expón la unión” me pareció muy buena
  • 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