# Goa > Goa est un framework Go qui donne aux agents de développement moins de code à écrire et un seul contrat pour raisonner. Générez des serveurs HTTP, gRPC et JSON-RPC, clients typés, validations et spécifications API. Créez des agents IA, serveurs MCP et registres d’outils avec Goa-AI. ## Why use Goa with a coding agent? Un agent écrit du code par inférence ; Goa dérive le code des contrats du design. Serveurs, clients, codecs et schémas générés sont autant de code que le modèle n’a pas à écrire séparément. Le design concentre le contexte, la structure reste cohérente et le compilateur repère les implémentations incompatibles après une modification. L’agent écrit toujours la logique métier et les tests. ## Goa and Goa-AI Goa conçoit et génère les API de services Go : HTTP, gRPC, JSON-RPC, clients, validation et spécifications. Goa-AI étend le même DSL et générateur avec des outils typés, agents IA, complétions structurées, évaluations et serveurs MCP. Il fournit aussi un runtime d’agents et un serveur de registre à héberger. Vous pouvez commencer par l’un ou l’autre ; Goa-AI n’exige pas de service Goa déployé séparément. ## Install the Goa service designer skill Run in your application repository with Node.js and npm available: ```bash npx skills add goadesign/goa --skill goa-service-designer ``` For Goa-AI, also read the generated AGENTS_QUICKSTART.md in your application. ## Start here - [Develop with a coding agent](https://goa.design/fr/docs/ai-development/index.md): workflow, generated-code boundaries, and a shared service/agent example. ## Documentation ### Goa - [Démarrage rapide](https://goa.design/fr/docs/1-goa/quickstart/index.md): Complete guide to installing Goa and building your first service - from setup to running a working HTTP endpoint. - [HTTP Guide](https://goa.design/fr/docs/1-goa/http-guide/index.md): Complete guide to HTTP transport in Goa - routing, content negotiation, WebSocket, SSE, CORS, and static content. - [gRPC Guide](https://goa.design/fr/docs/1-goa/grpc-guide/index.md): Complete guide to gRPC transport in Goa - service design, streaming patterns, error handling, and Protocol Buffer integration. - [Gestion des erreurs](https://goa.design/fr/docs/1-goa/error-handling/index.md): Complete guide to error handling in Goa - defining errors, transport mapping, custom types, and best practices. - [Intercepteurs](https://goa.design/fr/docs/1-goa/interceptors/index.md): Complete guide to interceptors and middleware in Goa - type-safe Goa interceptors, HTTP middleware, and gRPC interceptors. - [Production](https://goa.design/fr/docs/1-goa/production/index.md): Production-ready patterns for Goa services - observability, security, and common deployment patterns. - [Référence DSL](https://goa.design/fr/docs/1-goa/dsl-reference/index.md): Complete reference for Goa's design language - data modeling, services, methods, HTTP/gRPC mapping, and security. - [Génération de codes](https://goa.design/fr/docs/1-goa/code-generation/index.md): Complete guide to Goa's code generation - commands, process, generated code structure, and customization options. ### Goa-AI - [Démarrage rapide](https://goa.design/fr/docs/2-goa-ai/quickstart/index.md): Générez et exécutez un agent IA local, puis ajoutez planificateur, outils typés et intégration du modèle. - [Ensembles d'outils](https://goa.design/fr/docs/2-goa-ai/toolsets/index.md): Découvrez les types d'ensembles d'outils, leurs modèles d'exécution, la validation, la récupération structurée et les catalogues dans Goa-AI. - [Composition de l'agent](https://goa.design/fr/docs/2-goa-ai/agent-composition/index.md): Learn how to compose agents using agent-as-tool patterns, run trees, and streaming topology. - [Évaluations générées](https://goa.design/fr/docs/2-goa-ai/evaluations/index.md): Définissez des scénarios dans le design Goa, générez des hooks typés et produisez des rapports fiables. - [Intégration MCP](https://goa.design/fr/docs/2-goa-ai/mcp-integration/index.md): Créez des serveurs MCP avec outils, ressources et prompts, et utilisez des outils MCP externes. - [Mémoire et sessions](https://goa.design/fr/docs/2-goa-ai/memory-sessions/index.md): Manage state with transcripts, memory stores, sessions, and runs in Goa-AI. - [Production](https://goa.design/fr/docs/2-goa-ai/production/index.md): Set up Temporal for durable workflows, stream events to UIs, apply adaptive rate limiting, and use system reminders. - [Tests et dépannage](https://goa.design/fr/docs/2-goa-ai/testing/index.md): Learn how to test agents, planners, and tools, and troubleshoot common issues. - [Référence DSL](https://goa.design/fr/docs/2-goa-ai/dsl-reference/index.md): Complete reference for Goa-AI's DSL functions - agents, toolsets, policies, and MCP integration. - [Temps d'exécution](https://goa.design/fr/docs/2-goa-ai/runtime/index.md): Understand how the Goa-AI runtime orchestrates agents, enforces policies, and manages state. - [Registre des outils internes](https://goa.design/fr/docs/2-goa-ai/registry/index.md): Deploy a clustered gateway for cross-process toolset discovery and invocation. - [Tool Payload Defaults](https://goa.design/fr/docs/2-goa-ai/tool-payload-defaults/index.md): How Goa-AI applies Goa-style defaults to tool payloads (decode-body + transform) and what codegen contracts must hold. ### Écosystème - [Modèle](https://goa.design/fr/docs/3-ecosystem/model/index.md): Architecture diagrams as code using the C4 model - version-controlled, automatically generated, and interactive. - [Pulse](https://goa.design/fr/docs/3-ecosystem/pulse/index.md): Distributed event infrastructure - streaming, worker pools, and replicated maps for Go microservices. - [Indice](https://goa.design/fr/docs/3-ecosystem/clue/index.md): Microservice instrumentation for Go - logging, tracing, metrics, health checks, and debugging. ## Source - [Goa](https://github.com/goadesign/goa): service DSL and generator. - [Goa-AI](https://github.com/goadesign/goa-ai): agent DSL, generator, and runtime. - [Goa coding skill](https://github.com/goadesign/goa/tree/v3/skills): design-first workflow for coding agents. Edit design and application code. Regenerate gen/ with goa gen; do not edit generated files. Goa-AI also generates AGENTS_QUICKSTART.md for the application's agent design. Generation does not replace business logic, authorization, or tests.