# Goa > Goaは、コーディングエージェントが書くコードを減らし、推論の基準となる契約をひとつにまとめるGoフレームワークです。HTTP・gRPC・JSON-RPCサーバー、型付きクライアント、検証、API仕様書を生成。Goa-AIでAIエージェント、MCPサーバー、ツールレジストリを構築できます。 ## Why use Goa with a coding agent? エージェントは推論によってコードを書き、Goaは設計から契約のコードを導出します。サーバー、クライアント、コーデック、スキーマを個別に書く必要がなくなります。設計にコンテキストを集約し、構造を統一し、変更後の型の不整合をコンパイラーで検出できます。ビジネスロジックとテストはエージェントが実装します。 ## Goa and Goa-AI GoaはGoサービスのAPIを設計・生成します。HTTP、gRPC、JSON-RPC、クライアント、検証、仕様書が対象です。Goa-AIは同じDSLと生成器を拡張し、型付きツール、AIエージェント、構造化された完了、評価、MCPサーバーに対応。エージェントランタイムと自分で運用するツールレジストリも提供します。どちらからでも始められ、別途デプロイしたGoaサービスは不要です。 ## 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/ja/docs/ai-development/index.md): workflow, generated-code boundaries, and a shared service/agent example. ## Documentation ### Goa - [クイックスタート](https://goa.design/ja/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ガイド](https://goa.design/ja/docs/1-goa/http-guide/index.md): Complete guide to HTTP transport in Goa - routing, content negotiation, WebSocket, SSE, CORS, and static content. - [gRPCガイド](https://goa.design/ja/docs/1-goa/grpc-guide/index.md): Complete guide to gRPC transport in Goa - service design, streaming patterns, error handling, and Protocol Buffer integration. - [エラー処理](https://goa.design/ja/docs/1-goa/error-handling/index.md): Complete guide to error handling in Goa - defining errors, transport mapping, custom types, and best practices. - [インターセプター](https://goa.design/ja/docs/1-goa/interceptors/index.md): Complete guide to interceptors and middleware in Goa - type-safe Goa interceptors, HTTP middleware, and gRPC interceptors. - [プロダクション](https://goa.design/ja/docs/1-goa/production/index.md): Production-ready patterns for Goa services - observability, security, and common deployment patterns. - [DSLリファレンス](https://goa.design/ja/docs/1-goa/dsl-reference/index.md): Complete reference for Goa's design language - data modeling, services, methods, HTTP/gRPC mapping, and security. - [コード生成](https://goa.design/ja/docs/1-goa/code-generation/index.md): Complete guide to Goa's code generation - commands, process, generated code structure, and customization options. ### Goa-AI - [クイックスタート](https://goa.design/ja/docs/2-goa-ai/quickstart/index.md): ローカルでAIエージェントを生成・実行し、プランナー、型付きツール、モデル接続を追加します。 - [ツールセット](https://goa.design/ja/docs/2-goa-ai/toolsets/index.md): Goa-AI におけるツールセットの種類、実行モデル、検証、構造化された失敗回復、ツールカタログについて学びます。 - [エージェントの構成](https://goa.design/ja/docs/2-goa-ai/agent-composition/index.md): Agent-as-Tool パターン、ランツリー、ストリーミングトポロジーを使ったエージェントの合成方法を学びます。 - [生成型評価](https://goa.design/ja/docs/2-goa-ai/evaluations/index.md): Goa design で評価 scenario を定義し、型付き hook と信頼できる report を生成します。 - [MCP 統合](https://goa.design/ja/docs/2-goa-ai/mcp-integration/index.md): ツール、リソース、プロンプトを公開するMCPサーバーを構築し、外部MCPツールを利用します。 - [記憶とセッション](https://goa.design/ja/docs/2-goa-ai/memory-sessions/index.md): Manage state with transcripts, memory stores, sessions, and runs in Goa-AI. - [プロダクション](https://goa.design/ja/docs/2-goa-ai/production/index.md): Temporal による耐久性のあるワークフロー、UI へのイベントストリーミング、適応型レート制限、システムリマインダー。 - [テストとトラブルシューティング](https://goa.design/ja/docs/2-goa-ai/testing/index.md): エージェント、プランナー、ツールのテスト方法と、よくある問題のトラブルシューティングを学びます。 - [DSLリファレンス](https://goa.design/ja/docs/2-goa-ai/dsl-reference/index.md): Goa-AI の DSL 関数(エージェント、ツールセット、ポリシー、MCP 連携)を網羅した完全リファレンス。 - [ランタイム](https://goa.design/ja/docs/2-goa-ai/runtime/index.md): Goa-AI ランタイムがエージェントをオーケストレーションし、ポリシーを強制し、状態を管理する仕組みを理解します。 - [内部ツールレジストリ](https://goa.design/ja/docs/2-goa-ai/registry/index.md): プロセス境界をまたぐツールセットの発見と呼び出しのために、クラスタ化されたゲートウェイをデプロイします。 - [Tool Payload Defaults](https://goa.design/ja/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. ### エコシステム - [Model](https://goa.design/ja/docs/3-ecosystem/model/index.md): C4 モデルを用いたアーキテクチャ図をコードとして管理 — バージョン管理され、自動生成でき、インタラクティブに編集できます。 - [Pulse](https://goa.design/ja/docs/3-ecosystem/pulse/index.md): 分散イベント基盤: Go マイクロサービス向けのストリーミング、ワーカープール、レプリケートマップ。 - [Clue](https://goa.design/ja/docs/3-ecosystem/clue/index.md): Go 向けのマイクロサービス計測 - ロギング、トレーシング、メトリクス、ヘルスチェック、デバッグ。 ## 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.