Extensión de flujo de trabajo que impone un ciclo de desarrollo estructurado al agente de coding Pi
(github.com/popododo0720)Últimamente están apareciendo por todas partes herramientas de agentes de coding con IA, y se ha puesto de moda la forma de modificar varios archivos al mismo tiempo con agentes en paralelo. Pero al usarlas directamente uno se da cuenta rápido de algo: los resultados terminan siendo un caos.
El agente genera código sin un plan, se rompe la consistencia entre módulos y repite los mismos errores en cada sesión. Que "genere mucho y rápido" no necesariamente es algo bueno. Por más alta que sea la velocidad de generación, si al final una persona tiene que invertir más tiempo arreglando todo después, no tiene sentido.
Por eso cambié el enfoque. ¿Y si reducimos intencionalmente la velocidad del agente, pero le imponemos una estructura para mejorar la calidad final?
Creé una extensión de flujo de trabajo para el agente de coding Pi (@mariozechner/pi-coding-agent), y la idea central es forzar al agente a seguir un ciclo de desarrollo de 6 etapas:
📝 Plan → 🔍 Verificar plan → 🔨 Implementar → ✅ Verificar implementación → 🧠 Consolidar → 🎉 Hecho
- Bloqueo de herramientas según la etapa
Si no está en la etapa de implementación (Implement), las herramientas para modificar archivos quedan bloqueadas por completo. Incluso comandos bash comorm,mv,sed -itambién se bloquean en las etapas de solo lectura. La IA no puede tocar el código antes de definir un plan. - Verificación adversarial paralela con múltiples modelos
Varios LLM verifican al mismo tiempo tanto el plan como el resultado de la implementación. No es una simple revisión de código, sino una forma de atacar creando escenarios concretos para romperlo. La severidad se clasifica como 🔴 CRITICAL / 🟡 WARNING / 🔵 INFO, y si hay хотя бы un CRITICAL, esa etapa no puede aprobarse. - Aprendizaje Compound y memoria del proyecto
Al terminar cada ciclo, se registran automáticamente patrones, errores frecuentes (gotchas) y decisiones de arquitectura. Esta memoria se guarda en.pi/workflow-memory.json, por lo que se mantiene incluso si cambia la sesión. Así se vuelve posible algo como: "ayer perdimos tiempo con esta parte, así que hoy no la repitamos". - Repo Map (AST + PageRank)
Conweb-tree-sitterse extraen los símbolos de todo el proyecto (funciones, clases, interfaces, etc.), se construye un grafo de imports y se asigna importancia a cada archivo con PageRank. Como esto permite entender la estructura del proyecto dentro del presupuesto de tokens (2048 por defecto), el agente trabaja comprendiendo "cómo está hecho este proyecto". Soporta 18 lenguajes.
Otras características
- Sistema de TODO — divide tareas grandes en unidades TODO, y para cada TODO ejecuta de forma independiente el ciclo Implement → Verify → Compound
- Automatización con Git — commit/push automáticos en cada límite de TODO, y si el árbol está sucio obliga primero a limpiarlo
- Checks personalizados — si colocas archivos Markdown en
docs/checks/, puedes agregar criterios de validación específicos para cada proyecto - Gestión de contexto — separa el contexto mínimo que siempre se inyecta del contexto bajo demanda que se busca cuando hace falta, para evitar desperdiciar tokens
Filosofía
No se trata de decir que los agentes en paralelo sean malos. Pero sí creo que la generación paralela sin estructura es prácticamente lo mismo que crear deuda técnica en paralelo. Esta extensión parte de la idea de "hacer que la IA trabaje, pero aplicándole la misma disciplina con la que trabaja una persona".
Está escrita 100% en TypeScript y se instala connpm installmás un symlink.
GitHub: https://github.com/popododo0720/pi-stuff
¡Se agradece el feedback!
Aún no hay comentarios.