mcpField
A
agent-framework-builder-dotnet

agent-framework-builder-dotnet

github.com/microsoftエージェントワークフロー14.6k55 回インストール今日更新
リポジトリ

agent-framework-builder-dotnet について

Microsoft Agent Framework を使った .NET アプリ開発向けのコーディングスキルです。コーディングエージェントが実装パターンを選び、関連資料を参照し、現行 API に基づいて検証する手順を示します。

主な機能

  1. 01フレームワークパターンの選択
  2. 02関連リファレンスの参照
  3. 03現行 API の検証
  4. 04実装とテストの手順
  5. 05統合とデプロイのガイダンス

活用シーン

  1. 01Agent Framework アプリの開始
  2. 02.NET ソリューションへのエージェントやワークフローの追加
  3. 03プロバイダー、プロトコル、ホスティングの選定
  4. 04実行時の挙動や品質低下の調査

MCP 対応

最新のドキュメントやコードサンプルを調べるため、Microsoft Learn MCP Server を Streamable HTTP ソースとして設定する方法を案内します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/microsoft/agent-framework --skill agent-framework-builder-dotnet

インストール後、Claude Code で/agent-framework-builder-dotnetを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
agent-builder.md
declarative.md
evaluation.md
extensibility.md
harness-agent-builder.md
hosting-and-deployment.md
integrations.md
observability.md
workflow-builder.md

詳細

.NET 用 Agent Framework ビルダー

このスキルを、.NET Agent Framework アプリケーション開発の入り口として使用してください。必要な動作を維持できる最小のフレームワークパターンを選び、関連する参照だけを読み、記憶に頼ったプレビュー時代の構文ではなく、現在の API に照らして検証してください。

ワークフロー

  1. 既存のソリューションを確認します。対象フレームワーク、SDK バージョン、パッケージ管理方式(一元管理かプロジェクト単位か)、インストール済みの Microsoft.Agents.AI.* パッケージとそのバージョンを調べます。
  2. 以下の表から、最もシンプルで要件に合った方法を選びます。
  3. 実装に大きく影響する場合に限り、設計上の疑問点を解決します。
  4. 選択した方法に対応するリンク先の参照だけを読みます。
  5. 一貫性のある最小限の変更を実装し、それを検証できる最小範囲のテストを実行します。

コア抽象化

  • チャットクライアントは Microsoft.Extensions.AI.IChatClient です。モデルプロバイダーにメッセージとオプションを送信し、チャット応答またはストリーミング更新を返します。Agent Framework は、これらを再定義するのではなく、ChatMessage、AIFunction、ChatOptions などの Microsoft.Extensions.AI の型を基盤として構築されています。
  • エージェントは AIAgent を継承し、RunAsync(...) と RunStreamingAsync(...) を公開します。標準実装の ChatClientAgent は、IChatClient を指示、ツール、コンテキストプロバイダー、チャット履歴プロバイダー、セッション処理とともにラップします。プロバイダーパッケージでは通常、AsAIAgent(...) 拡張メソッドを使ってエージェントを作成します。
  • ハーネスエージェントは、Microsoft.Agents.AI.Harness の HarnessAgent です。定められた一連のコンテキストプロバイダーとエージェントデコレーターで ChatClientAgent をラップしますが、これも AIAgent です。
  • ワークフロー(Microsoft.Agents.AI.Workflows)は、実行器とエージェント間の明示的な実行パスを調整します。AgentWorkflowBuilder は、AIAgent の参加者を使った標準的な逐次、並行、引き継ぎ、グループチャット、Magentic パターンを提供します。呼び出し元がエージェントの契約を必要とする場合、ワークフローを AIAgent として公開できます。

ユーザーインターフェイスの選択肢

  • DevUI(Microsoft.Agents.AI.DevUI)は、エージェントやワークフローと対話するためのローカル開発、テスト、デバッグツールです。DevUI を本番環境のアプリケーションホストとして実行またはデプロイしないでください。
  • AG-UI は、エージェントまたはワークフローを AG-UI 対応のフロントエンドに接続するための、アプリケーション向けプロトコル統合です。ストリーミング UI イベント、ツールとの対話、共有状態、中断、または再開の動作が製品で必要な場合は、Microsoft.Agents.AI.Hosting.AGUI.AspNetCore(サーバー)を使用してください。

ビルドパスを選択する

パス選択する場面詳細
プレーンエージェント1 つのモデル駆動型アクターがタスクを担い、ツール、セッション、コンテキスト、ミドルウェアで十分な場合。プレーンエージェント
ハーネスエージェントtodo、モード、メモリ、承認、スキル、オプションのファイルアクセス、バックグラウンドエージェント、シェル、コンパクション、または繰り返し実行を備えた動作ループが製品に必要な場合。ハーネスエージェント
ワークフローまたはオーケストレーション明示的なステージ、ルーティング、並列処理、複数の参加者、チェックポイント、人間による入力、中間出力が正確性の要となる場合。ワークフロー
宣言的定義サポート対象のエージェントまたはワークフローにおいて、YAML を信頼できる情報源とする場合。宣言的定義
評価期待される出力、ツール呼び出し、失敗した実行、または品質の低下が主な懸念事項である場合。評価
可観測性トレース、ログ、メトリクスを使って実行時の動作を診断または監視する場合。可観測性
拡張性アプリケーションにカスタムチャットクライアント、エージェント、コンテキストプロバイダー、チャット履歴プロバイダー、またはミドルウェアが必要な場合。拡張性
統合プロバイダー、プロトコル、メモリストア、ツールサービス、UI、またはプラットフォーム拡張を選択または接続する場合。統合
ホスティングとデプロイAgent Framework のコードにプロセスホスト、プロトコルエンドポイント、ID コントラクト、またはデプロイ形態が必要な場合。ホスティングとデプロイ

デフォルト

  • 現在サポートされている .NET リリースを対象にしてください。パッケージは現在および直近の LTS .NET バージョンをマルチターゲットしており、一部は .NET Standard 2.0 と .NET Framework 4.7.2 もサポートしています。プロジェクトで SDK が固定されていない限り、最新のサポート対象 SDK を使用してください。
  • Microsoft.Agents.AI とプロバイダーパッケージ 1 つなど、アプリケーションに必要な最小限のパッケージだけを追加し、 すべての Microsoft.Agents.AI.* パッケージを追加するのは避けてください。
  • パッケージごとに成熟度は異なります。リリース済みのものもあれば、-preview または -alpha のものもあります。依存する前に パッケージの現在のステータスを確認し、必要な場合に限りプレリリースバージョンを許可してください。
  • 一部の API には [Experimental] のマークが付き、診断 ID(例:MAAI001)が通知されます。機能が変更される可能性を確認したうえで、 API を使用するコードの範囲に限定し、意図的に診断を抑制してください。
  • Agent Framework が設定を代わりに読み込むことはありません。IConfiguration、ユーザーシークレット、または環境変数からエンドポイント、 モデル、キーを読み込み、それらをクライアントに明示的に渡してください。API キーよりも DefaultAzureCredential などのトークン資格情報を優先し、 シークレットをハードコードしないでください。
  • DefaultAzureCredential は複数の資格情報ソースを確認するため、本番環境では遅延とリスクが増加します。ホスティング ID が既知の場合 (例:マネージド ID)は、その特定の資格情報を使用してください。

最新のドキュメント参照

安定した判断や一般的なパターンには、ローカルのガイダンスを使用してください。プロバイダーの比較表、パッケージの成熟度、ホスト型ツール、デプロイの詳細、不慣れな API については、コードを生成する前に最新の情報源を確認してください。

リファレンスページでは、意図的に選択ルール、不変条件、分かりにくい注意点について説明しています。シグネチャやオプションの詳細には XML ドキュメントまたは API リファレンスページを使用し、エンドツーエンドの手順には Learn または保守されているサンプルを使用してください。

コーディングエージェントが MCP をサポートしている場合は、Microsoft Learn MCP Server を Streamable HTTP サーバーとして設定してください。

https://learn.microsoft.com/api/mcp

クライアントの設定については、Microsoft Learn MCP Server のセットアップを参照してください。このエンドポイントは MCP クライアント向けであり、ブラウザーで直接開くとエラーを返します。

  1. microsoft_docs_search を使用して Microsoft Learn を検索します。
  2. microsoft_docs_fetch を使用して関連ページを取得します。
  3. 最新の実装例が必要な場合は、microsoft_code_sample_search を使用します。
  4. Learn MCP を利用できず、信頼できる mslearn CLI がすでにインストールされている場合は、同等のコマンドを使用します。
MCP ツールプリインストール済みの CLI
microsoft_docs_search(query="...")mslearn search "..."
microsoft_docs_fetch(url="...")mslearn fetch "..."
microsoft_code_sample_search(query="...", language="csharp")mslearn code-search "..." --language csharp

コーディングセッション中に、バージョンを固定していない CLI パッケージを取得して実行しないでください。意図的にインストールまたは更新する場合は、Microsoft Learn MCP/CLI の公式セットアップを使用してください。

正規の出発点:

コメント