Connectly
Ingeniería2025-08-19

Diles adiós a los agentes de código perdidos: presentamos Yellhorn MCP

Por Sravan Jayanthi

Diles adiós a los agentes de código perdidos: presentamos Yellhorn MCP

Convierte el vibe coding en algo real

Autores: Sravan Jayanthi, Mark Snidal @ Connectly AI

Ver video

Resumen

Presentamos Yellhorn, un MCP de código abierto que da a los agentes de código IA planificación y memoria a nivel de un desarrollador de software real. Se conecta a tu repositorio de GitHub y usa issues de GitHub para orquestar cambios grandes y de varias partes. Los agentes de código se pierden cuando las tareas están mal definidas y no logran escalar a proyectos de software grandes. Yellhorn impone una estructura de diseño de software rigurosa aprovechando los issues de GitHub como "tableros de planificación" (curando el contexto correcto, desglosando pasos e identificando checkpoints) para que los agentes acierten al primer intento.

Enlace al repositorio: https://github.com/msnidal/yellhorn-mcp

GitHub - msnidal/yellhorn-mcp: Yellhorn ofrece herramientas MCP para publicar planes de trabajo detallados como issues de GitHub con razonamiento sobre todo el codebase y para revisar diffs contra ellos

Contexto sobre MCP

Model Context Protocol proporciona contexto a los modelos de IA en un formato estandarizado, permitiendo a los agentes elegir entre herramientas para interactuar con el mundo externo. Buenos ejemplos incluyen usar un servidor MCP de generación de imágenes para crear imágenes dentro de Cursor, tener un servidor MCP de PostgreSQL para ejecutar comandos de base de datos en Claude Desktop para no expertos y, por supuesto, aprovechar Yellhorn MCP para traer el desarrollo basado en especificaciones a tu IDE de código.

Desarrollo basado en especificaciones

El desarrollo basado en especificaciones es el proceso de fundamentar las funcionalidades de código en el contexto de especificaciones de diseño completas. Proporciona criterios de éxito rigurosos, guiando a los ingenieros hacia una implementación exitosa.

Esto está ganando atención ahora en la era de agentes de código altamente capaces, incluyendo el desarrollo basado en especificaciones de Kiro, que escribe archivos Markdown separados de requisitos, diseño y lista de tareas dentro del proceso de codificación. Claude SPARC es otro sistema de codificación autónomo que combina Claude Code CLI con la metodología SPARC: Specification, Pseudocode, Architecture, Refinement y Completion.

Yellhorn

Yellhorn, la herramienta MCP de Crear-Curar-Juzgar, construye especificaciones de diseño de alta calidad y conscientes del codebase directamente en un issue de GitHub, un tablero de planificación estructurado e interpretable desde el cual el agente de código puede perfilar los requisitos, la arquitectura técnica y los criterios de aceptación para la implementación.

Ejemplo de plan de trabajo generado por Yellhorn MCP

Ejemplo de plan de trabajo generado por Yellhorn MCP

El código es muy multicapa y tiene muchas dependencias integradas, especialmente entre diferentes versiones de librerías y paquetes usados en distintas plataformas. Los agentes de código LLM tienen una visión muy limitada y tienden a escribir código que no coincide con las versiones de librerías deseadas dentro del codebase. La comprensión de Yellhorn a nivel de todo el codebase, con conocimiento adicional de tu stack tecnológico existente, le permite hacer cambios a medida en tu codebase basados en las dependencias upstream correctas.

La utilidad principal de Yellhorn es la capacidad de interactuar inteligentemente con un plan de trabajo en GitHub, superando las limitaciones de la ventana de contexto para los agentes de código, permitiéndole leer todo lo que necesita y destilar el contenido más importante para usar. Lo hemos encontrado más útil en codebases grandes, especialmente en entornos empresariales, con demasiados archivos y dependencias para ser proporcionados como contexto o buscados eficientemente por agentes de generación de código.

Ejemplo de un proyecto exitoso construido con Yellhorn

El desafío: Connectly AI necesitaba construir un agente de IA sofisticado de generación de leads para un cliente importante de e-commerce. Los requisitos eran complejos:

Inteligencia geográfica: Servicios de geolocalización en tiempo real para envíos y cumplimiento normativo

Orquestación de flujos de trabajo: 14 flujos de recorrido de cliente distintos (onboarding, soporte, ventas, retención)

Pipeline de analítica: Seguimiento de eventos personalizado, métricas de conversión y paneles de rendimiento

Enfoque con Yellhorn (Crear → Curar → Juzgar).

Curar: Se filtró el repositorio con .gitignore + .yellhornignore + .yellhorncontext; se extrajeron solo los módulos relevantes + versiones de SDK.

Crear: Se generó un issue de plan de trabajo en GitHub descompuesto en sub-issues (por flujo de trabajo), cada uno con criterios de aceptación y ganchos de prueba.

Juzgar: Después de cada subtarea, se comparó la implementación contra el plan de trabajo; se marcaron versiones de SDK no coincidentes y eventos de analítica faltantes.

Sin Yellhorn: experiencia previa

Nuestro equipo había intentado un proyecto similar 6 meses antes usando enfoques tradicionales de codificación con IA:

Cronograma: más de 4 semanas de iteraciones de ida y vuelta

Problemas: integraciones de API inconsistentes, conflictos de versiones, manejo de errores faltante

Deuda técnica: 40% del código requirió refactorización después de la implementación inicial

Pérdida de contexto: los agentes de código "olvidaban" decisiones arquitectónicas anteriores, generando patrones inconsistentes

Métricas técnicas finales

Codebase final: 23.247 líneas de código de producción

Arquitectura: 62 módulos principales basados en 47 dependencias externas (Google Maps, Tenacity, Redis, etc.)

Cronograma: 4 días desde la especificación inicial hasta un prototipo funcional, 8 días hasta estar listo para producción

¡Configúralo en 3 pasos simples!

  1. Asegúrate de tener configurado gh CLI: https://cli.github.com/ y ejecuta gh auth login
  2. En el entorno de Python de tu proyecto, instala pip install yellhorn-mcp
  3. Ve a la configuración MCP de tu IDE de código favorito (Cursor: .cursor/mcp.json, Windsurf: .codeium/windsurf/mcp.json, Claude Code: .mcp.json y .claude/settings.json) y agrega este archivo de configuración:
{
   "mcpServers": {
       "yellhorn-mcp": {
           "type": "stdio",
           "command": "yellhorn-mcp",
           "args": [],
           "env": {
               "GEMINI_API_KEY": "",
               "YELLHORN_MCP_MODEL": "gemini-2.5-pro",
               "REPO_PATH": ""
           }
       }
   }
}

Ejemplo de tarea

Ver video

Tarea de ejemplo: Quiero agregar autenticación de dos factores para usuarios con diferentes roles y permisos. Quiero usar un proveedor de autenticación primario en Auth0 y gestión de sesiones con OAuth2-prox.

Usa estos prompts para interactuar con Yellhorn:

  1. "Usa curate context para esta tarea: <tu tarea>": Revisa las partes de tu directorio seleccionadas: .yellhorncontext (Yellhorn). Inspecciona el archivo para agregar o quitar directorios.
  2. "Genera un plan de trabajo para la tarea usando razonamiento sobre todo el codebase": Procesará de forma asíncrona y escribirá el plan de trabajo en un issue de GitHub. Inspecciona el plan de trabajo para validar que se alinee con tus expectativas.
  3. "Revisa el plan de trabajo: <revisión>": Para mejorar cualquier parte faltante de la especificación.
  4. "Obtén el plan de trabajo e implementalo paso a paso. Asegúrate de completar las pruebas y verificación de cada subtarea antes de pasar a la siguiente": Observa cómo tu agente de código inicia la implementación
  5. *"*Juzga el plan de trabajo": Yellhorn comparará la implementación con el plan de trabajo original y dará retroalimentación, resaltando funcionalidades erróneas o brechas en la implementación

¿Cómo puedes adoptar las mejores prácticas de codificación con IA en tu equipo de ingeniería?

  1. Documenta cómo haces actualmente el desarrollo de funcionalidades, particularmente la planificación de tareas de ingeniería en foros como sprints o sesiones de diseño.
  2. Construye un repositorio común de reglas de diseño del equipo (.cursorrules, Claude.MD, .windsurf/rules) que permita a todos los ingenieros hacer seguimiento. Además, haz que tu equipo sugiera comandos y automatizaciones de confianza para los agentes de código. Guarda, mejora y documéntalo con hooks posteriores a la creación (linter, verificación de tipos, hooks post-commit, pruebas unitarias, pruebas de integración, evaluaciones de cobertura de pruebas, actualizaciones de documentación, etc.)
  3. Aprovecha Yellhorn MCP para convertir ideas en especificaciones de diseño de ingeniería completas.
  4. Revisa el plan de trabajo, anota las brechas y construye el contexto faltante en las reglas de diseño de tu equipo.
  5. ¡Repite y multiplica por 10 tu velocidad de desarrollo!

Referencias