# Goa and Goa-AI

Goa es un framework Go que da a los agentes de programación menos código que escribir y un único contrato sobre el que razonar. Genera servidores HTTP, gRPC y JSON-RPC, clientes tipados, validación y especificaciones API. Crea agentes de IA, servidores MCP y registros de herramientas con Goa-AI.

GitHub: [Goa](https://github.com/goadesign/goa) · [Goa-AI](https://github.com/goadesign/goa-ai)

Source: https://goa.design/es/

## Menos trabajo para tu agente.

### Genera el código. Ahorra esos tokens.

Cada transporte, cliente y esquema generado es código que el LLM no necesita redactar. Dedica ese trabajo a la lógica de negocio, pruebas útiles y mejores herramientas.

### Un contrato para entender el sistema.

Los tipos, restricciones, descripciones y métodos viven en el diseño. La estructura generada ofrece al agente un mapa del código y un lugar claro donde realizar cambios.

### El compilador detecta las divergencias.

Cambia el contrato y regenera todas sus representaciones juntas. Go señala llamadas e implementaciones incompatibles y ofrece al agente indicaciones concretas para la siguiente edición.

## Goa

Define tu servicio una vez. Genera sus API, clientes, validación y especificaciones juntos. Implementa la lógica de negocio detrás de una interfaz Go tipada.

HTTP, gRPC, JSON-RPC. Servidores, clientes tipados y clientes CLI desde el mismo diseño.

Tipos Go, validación, codificación, mapeo de errores, OpenAPI y Protocol Buffers.

[Crear un servicio](https://goa.design/es/docs/1-goa/quickstart/)

## Goa-AI

Diseña las herramientas y los resultados. Genera los contratos. El runtime coordina llamadas a modelos, ejecución de herramientas, intervención humana y flujos duraderos.

Esquemas, códecs, enlaces a servicios y helpers de completado generados. Agentes como herramientas, ejecuciones hijas vinculadas, suites de evaluación tipadas y hooks de escenarios.

Eventos tipados, confirmaciones, cancelación y políticas. Ejecución local para empezar; Temporal para durabilidad.

[Crear un agente de IA](https://goa.design/es/docs/2-goa-ai/quickstart/)

## Crea servidores MCP desde tus servicios.

Expón métodos de servicio como herramientas MCP. Publica recursos y plantillas de prompts. Goa-AI genera el manejo del protocolo y los adaptadores: MCP se convierte en otra interfaz de tu aplicación. Los agentes también pueden consumir herramientas MCP externas.

[Crear un servidor MCP](https://goa.design/es/docs/2-goa-ai/mcp-integration/)

## Aloja un registro para tus herramientas.

Ejecuta el servidor de registro incluido como catálogo compartido y pasarela de invocación. Publica conjuntos de herramientas, descubre sus esquemas y enruta llamadas a proveedores disponibles. Los agentes y proveedores pueden desplegarse y escalar por separado. Basado en Redis y Pulse.

[Alojar un registro de herramientas](https://goa.design/es/docs/2-goa-ai/registry/)

## Enseña a tu agente el método Goa.

Instala la skill Goa service designer en tu proyecto. Guía a tu agente por el diseño, la generación, la implementación y la verificación, indicando qué archivos editar y cuáles regenerar.

```bash
npx skills add goadesign/goa --skill goa-service-designer
```

Ejecuta en tu proyecto. Requiere Node.js y npm.

[Instalación y flujo de trabajo](https://goa.design/es/docs/ai-development/#install-the-skill)

## ¿Por qué usar Goa si un agente puede escribir el código?

Un agente escribe código por inferencia; Goa deriva el código de los contratos del diseño. Cada servidor, cliente, códec y esquema generado es código que el modelo no necesita escribir por separado. El diseño concentra el contexto, la estructura sigue siendo coherente y el compilador detecta implementaciones incompatibles tras los cambios. El agente sigue escribiendo lógica de negocio y pruebas.

## ¿Qué diferencia hay entre Goa y Goa-AI?

Goa diseña y genera API de servicios Go: HTTP, gRPC, JSON-RPC, clientes, validación y especificaciones. Goa-AI amplía el mismo DSL y generador con herramientas tipadas, agentes de IA, resultados estructurados, evaluaciones y servidores MCP. También ofrece un runtime de agentes y un servidor de registro que puedes alojar. Puedes empezar con cualquiera; Goa-AI no requiere un servicio Goa desplegado por separado.

## ¿Puedo usar Goa-AI solo para crear un servidor MCP?

Sí. Añade declaraciones MCP a un servicio Goa para generar un servidor con herramientas, recursos y plantillas de prompts. Implementa los métodos detrás de los adaptadores generados. No necesitas ejecutar un agente Goa-AI para servir MCP.

## ¿Cómo reduce la generación el trabajo del LLM?

Goa genera el código de transporte y contratos sin que un LLM redacte esos archivos. Así elimina una categoría de trabajo con tokens de salida. El ahorro total depende de la tarea, el modelo, el contexto y las iteraciones; compara cambios completos, incluidas pruebas y revisión, para medir el efecto en tu proyecto.

