/ Directorio / Playground / symfony-hexagonal-skill
● Comunidad aligundogdu ⚡ Instantáneo

symfony-hexagonal-skill

por aligundogdu · aligundogdu/symfony-hexagonal-skill

Implementa arquitectura hexagonal en proyectos Symfony — 10 skills activados automáticamente más 2 agentes de revisión que te evitan fugas de infraestructura hacia el dominio.

Un plugin de Claude Code para desarrolladores Symfony que realmente quieren mantener puertos y adaptadores limpios. Se activa automáticamente en patrones de código Symfony para guiar la separación dominio/aplicación/infraestructura. Incluye agentes de revisión que detectan fugas (entidades Doctrine importadas al dominio, controladores llamando repositorios directamente).

Por qué usarlo

Características clave

Demo en vivo

Cómo se ve en la práctica

symfony-hexagonal-skill.replay ▶ listo
0/0

Instalar

Elige tu cliente

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "symfony-hexagonal-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/aligundogdu/symfony-hexagonal-skill",
        "~/.claude/skills/symfony-hexagonal-skill"
      ],
      "_inferred": true
    }
  }
}

Abre Claude Desktop → Settings → Developer → Edit Config. Reinicia después de guardar.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "symfony-hexagonal-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/aligundogdu/symfony-hexagonal-skill",
        "~/.claude/skills/symfony-hexagonal-skill"
      ],
      "_inferred": true
    }
  }
}

Cursor usa el mismo esquema mcpServers que Claude Desktop. La configuración del proyecto prevalece sobre la global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "symfony-hexagonal-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/aligundogdu/symfony-hexagonal-skill",
        "~/.claude/skills/symfony-hexagonal-skill"
      ],
      "_inferred": true
    }
  }
}

Haz clic en el icono MCP Servers de la barra lateral de Cline y luego en "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "symfony-hexagonal-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/aligundogdu/symfony-hexagonal-skill",
        "~/.claude/skills/symfony-hexagonal-skill"
      ],
      "_inferred": true
    }
  }
}

Mismo formato que Claude Desktop. Reinicia Windsurf para aplicar.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "symfony-hexagonal-skill",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/aligundogdu/symfony-hexagonal-skill",
        "~/.claude/skills/symfony-hexagonal-skill"
      ]
    }
  ]
}

Continue usa un array de objetos de servidor en lugar de un mapa.

~/.config/zed/settings.json
{
  "context_servers": {
    "symfony-hexagonal-skill": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/aligundogdu/symfony-hexagonal-skill",
          "~/.claude/skills/symfony-hexagonal-skill"
        ]
      }
    }
  }
}

Añádelo a context_servers. Zed recarga en caliente al guardar.

claude mcp add symfony-hexagonal-skill -- git clone https://github.com/aligundogdu/symfony-hexagonal-skill ~/.claude/skills/symfony-hexagonal-skill

Un solo comando. Verifica con claude mcp list. Quita con claude mcp remove.

Casos de uso

Usos del mundo real: symfony-hexagonal-skill

Genera un nuevo contexto acotado con capas hexagonales

👤 Desarrolladores Symfony que construyen lógica de dominio no trivial ⏱ ~60 min advanced

Cuándo usarlo: Estás iniciando una nueva funcionalidad y quieres que la estructura de capas sea correcta desde el primer día.

Requisitos previos
  • Proyecto Symfony 6.x+ — composer create-project symfony/skeleton
  • Skill instalado — git clone https://github.com/aligundogdu/symfony-hexagonal-skill ~/.claude/skills/symfony-hexagonal-skill
Flujo
  1. Nombra el contexto
    Usa symfony-hexagonal-skill. Genera un contexto acotado 'Billing' con agregado Invoice, comandos issue/void, y una consulta para facturas abiertas.✓ Copiado
    → Carpetas src/Billing/Domain, Application, Infrastructure con separación adecuada
  2. Conecta la infraestructura
    Añade un adaptador Doctrine para InvoiceRepository detrás del puerto de dominio.✓ Copiado
    → Interfaz en Dominio, implementación en Infraestructura, vinculación en services.yaml
  3. Expone mediante controlador
    Añade un adaptador HTTP con un endpoint POST /invoices que despache el comando IssueInvoice.✓ Copiado
    → El controlador llama al bus, no al repositorio directamente

Resultado: Un contexto acotado limpio que no se convertirá en código spaghetti en 6 meses.

Errores comunes
  • El dominio depende de anotaciones Doctrine — Usa mapeo XML / atributos en Infraestructura, no en entidades de dominio
Combinar con: filesystem

Revisa un PR en busca de violaciones de estructura hexagonal

👤 Tech leads en equipos Symfony ⏱ ~20 min intermediate

Cuándo usarlo: Estás revisando un PR y quieres un primer análisis automatizado sobre la estructura de capas.

Flujo
  1. Ejecuta el agente de revisión
    Usa el agente de revisión symfony-hexagonal-skill en este diff. Señala cualquier importación Doctrine / Symfony FW en Domain/, cualquier llamada directa controller->repository, cualquier fuga ORM en respuestas.✓ Copiado
    → Hallazgos concretos con archivo+línea
  2. Sugiere correcciones
    Para cada hallazgo, propón el refactor mínimo.✓ Copiado
    → Diffs que introducen un puerto o DTO

Resultado: Un PR que no degrada silenciosamente la arquitectura.

Combinar con: github

Refactoriza progresivamente una aplicación Symfony existente hacia hexagonal

👤 Equipos con un proyecto Symfony heredado ⏱ ~120 min advanced

Cuándo usarlo: La reescritura de un solo golpe no es una opción; quieres una limpieza incremental.

Flujo
  1. Identifica una costura
    Usa symfony-hexagonal-skill. Mira src/Module/Orders — ¿cuál es la menor porción que puedo extraer a un dominio limpio?✓ Copiado
    → Clase específica identificada con plan de extracción
  2. Extrae incrementalmente
    Guíame a través de la extracción en 3 pasos del tamaño de PR.✓ Copiado
    → Plan por etapas con pruebas preservadas en cada paso

Resultado: Una base de código heredada mejorando, un PR a la vez.

Errores comunes
  • Extraer demasiado en un solo paso — Solo porciones de tamaño PR; el agente de revisión del plugin ayuda a controlar cada paso
Combinar con: git

Combinaciones

Combínalo con otros MCPs para multiplicar por 10

symfony-hexagonal-skill + github

Controla PRs con revisión de capas antes de fusionar

Ejecuta la revisión hexagonal en el PR abierto en este repositorio y publica los hallazgos como comentarios.✓ Copiado
symfony-hexagonal-skill + filesystem

Aplica scaffolds en el repositorio actual

Aplica el scaffold de contexto a mi proyecto bajo src/.✓ Copiado

Herramientas

Lo que expone este MCP

HerramientaEntradasCuándo llamarCoste
context_scaffold nombre del contexto, agregados Nuevo contexto acotado 0
port_adapter_pair nombre de interfaz de puerto, tipo de adaptador Añadir infraestructura 0
layering_review diff o directorio Antes de fusionar 0
refactor_plan módulo heredado Iniciando una limpieza 0

Coste y límites

Lo que cuesta ejecutarlo

Cuota de API
Ninguno
Tokens por llamada
Moderado — las revisiones escanean archivos
Monetario
Gratis
Consejo
Limita las revisiones al diff, no a repositorios completos, para ahorrar tokens.

Seguridad

Permisos, secretos, alcance

Almacenamiento de credenciales: Ninguno
Salida de datos: Ninguno del skill

Resolución de problemas

Errores comunes y soluciones

El agente de revisión no detecta violaciones

Asegúrate de que el diff completo esté en contexto; los diffs muy grandes pueden necesitar fragmentación

El scaffold genera código con estilo antiguo de Symfony 5

Menciona tu versión de Symfony explícitamente — las convenciones de 6 vs 7 difieren

Alternativas

symfony-hexagonal-skill vs otros

AlternativaCuándo usarlaContrapartida
Deptrac static analysisQuieres aplicación estática basada en reglas de estructura de capasSin ayuda de refactor; solo controla violaciones
craftcms-claude-skillEstás en Craft CMS, no en SymfonyMarco diferente

Más

Recursos

📖 Lee el README oficial en GitHub

🐙 Ver issues abiertas

🔍 Ver todos los 400+ servidores MCP y Skills