Agent 365 CLI
各ステップをきめ細かく制御して、Agent 365 環境を設定します。 このコマンドは、エージェント 365 ブループリントの初期セットアップ ワークフローを管理します。
Minimum ロールが必要です: Azure Contributor + Agent ID Developer
Note
保持するロールによって、1 回の実行で完了するセットアップの量が決まります。 グローバル管理者 は、すべての手順を一度に完了できます。 エージェントID管理者 および エージェントID開発者 は、OAuth2権限付与(管理者の同意)を除くすべての手順を完了できます。OAuth2権限付与はグローバル管理者の対応が必要です。 セットアップが完了すると、CLIはグローバル管理者の次のステップを直接出力に出力します。
Syntax
a365 setup [command] [options]
オプション
| Option | Description |
|---|---|
-?、 -h、 --help |
ヘルプと使用状況の情報を表示します。 |
推奨される実行順序
# 0. Check prerequisites (optional)
a365 setup requirements
# 1. Create blueprint
a365 setup blueprint
# 2. Configure MCP permissions
a365 setup permissions mcp
# 3. Configure bot permissions
a365 setup permissions bot
# 4. Configure CopilotStudio permissions (if needed)
a365 setup permissions copilotstudio
# 5. Configure custom permissions (if needed)
a365 setup permissions custom
または、すべての手順を一度に実行します。
# Full setup using config file (a365.config.json)
a365 setup all
# Config-free: no a365.config.json needed
a365 setup all --agent-name "MyAgent"
(グローバル管理者ではなく) エージェント ID 管理者またはエージェント ID 開発者として実行している場合、 a365 setup all は OAuth2 アクセス許可付与を除くすべての手順を完了します。 送信が完了すると、グローバル管理者が助成金を完了するための次のステップが出力されます。直接リンクや同意URLも開けられます。
setup requirements
エージェント 365 セットアップの前提条件を検証します。 モジュール要件チェックを実行し、検出された問題に関するガイダンスを提供します。
a365 setup requirements [options]
このコマンドは、次の手順を実行します。
- エージェント 365 のセットアップに必要なすべての前提条件を確認します。
- 詳細な解決ガイダンスに関する問題を報告します。
- 一部のチェックが失敗した場合でも、すべての要件のチェックを続行します。
- 最後のすべてのチェックの概要を提供します。
Tip
もしあなたがグローバル管理者で、よく知られた Agent 365 CLI クライアントアプリがテナントに見つからない場合は、 setup requirements 自動的に作成を促されます。 既存のアプリIDを入力し、 C を入力してアプリを作成し、管理者の同意を一歩で付与できます。手動のEntra登録は不要です。
requirements のオプション
| Option | Description |
|---|---|
-v、--verbose |
詳細ログを有効にします。 |
--category <category> |
特定のカテゴリのみ、例えばAzure、Authentication、PowerShell、Tenant Enrollmentなど)だけのチェックを行います。 |
-?、 -h、 --help |
ヘルプと使用状況の情報を表示します。 |
Note
setup requirements 設定ファイルは不要で、どのディレクトリでも実行できます。
setup blueprint
エージェント ブループリントを作成する (アプリケーションの登録Entra ID)。
最低限必要なアクセス許可: エージェント ID 開発者ロール
a365 setup blueprint [options]
blueprint のオプション
| Option | Description |
|---|---|
-n、--agent-name <name> |
エージェントの基地名。 このオプションを用意すれば、設定ファイルは必要ありません。 コマンドは az account showからテナントIDを自動検出します。
--tenant-idで上書きしてください。 |
--tenant-id <tenantId> |
Azure AD テナント ID。 Overrides auto-detection.
--agent-name で使用します。 |
-v、--verbose |
詳細な出力を表示します。 |
--dry-run |
コマンドを実行せずに実行する内容を表示します。 |
--skip-requirements |
要件の検証チェックをスキップします。 注意して使用してください。 |
--no-endpoint |
メッセージング エンドポイントを登録しないでください (ブループリントのみ)。 |
--endpoint-only |
メッセージング エンドポイントのみを登録します。 既存のブループリントが必要です。 |
--update-endpoint <url> |
既存のメッセージングエンドポイントを削除し、指定されたURLで新しいエンドポイントを登録します。 |
--m365 |
このエージェントはM365エージェントとして扱ってください。 MCPプラットフォームを通じてメッセージングエンドポイントを登録します。 デフォルトは false (オプトイン)です。 |
-?、 -h、 --help |
ヘルプと使用状況の情報を表示します。 |
setup permissions
OAuth2 アクセス許可の付与と継承可能なアクセス許可を構成します。
最低限必要なアクセス許可: グローバル管理者
a365 setup permissions [command] [options]
オプション
| Option | Description |
|---|---|
-?、 -h、 --help |
ヘルプと使用状況の情報を表示します。 |
Subcommands
| Subcommand | Description |
|---|---|
mcp |
MCP サーバー OAuth2 の許可と継承可能なアクセス許可を構成します。 |
bot |
Messaging Bot API OAuth2 の許可と継承可能なアクセス許可を構成します。 |
custom |
エージェントの操作に必要な標準のアクセス許可を超えるカスタム API アクセス許可をエージェント ブループリントに適用します。 |
copilotstudio |
Power Platform API を介してCopilot Studio副操縦を呼び出すように、エージェント ブループリントの OAuth2 アクセス許可付与と継承可能なアクセス許可を構成します。 |
setup permissions mcp
MCP サーバー OAuth2 の許可と継承可能なアクセス許可を構成します。
最低限必要なアクセス許可: グローバル管理者
a365 setup permissions mcp [options]
This command:
-
ToolingManifest.jsonで指定されたdeploymentProjectPathからa365.config.jsonを読み取ります。 - エージェント ブループリントに対する MCP サーバー スコープごとに OAuth2 の委任されたアクセス許可を付与します。
- エージェント インスタンスが MCP ツールにアクセスできるように、継承可能なアクセス許可を構成します。
- べき等であり、複数回実行しても安全です。
Important
- このコマンドを実行する前に、
deploymentProjectPathが更新されたToolingManifest.jsonを含むプロジェクトフォルダを指しているか確認してください。 開発者が別のコンピューターに MCP サーバーを追加する場合は、最初に更新されたToolingManifest.jsonをグローバル管理者と共有します。 正しいToolingManifest.jsonなしで実行しても、新しい MCP サーバーのアクセス許可はブループリントに追加されません。 - 開発者がを実行した
a365 develop add-mcp-servers、このコマンドを実行します。 マニフェストに MCP サーバーを追加し、ブループリントにアクセス許可を付与する手順は 2 つあります。 このコマンドが完了すると、MCP サーバーのアクセス許可がエージェント ブループリントに表示されます。
permissions mcp のオプション
| Option | Description |
|---|---|
-n、--agent-name <name> |
エージェントの基地名。 このオプションを用意すれば、設定ファイルは必要ありません。 |
--tenant-id <tenantId> |
Azure AD テナント ID。 Overrides auto-detection.
--agent-name で使用します。 |
-v、--verbose |
詳細な出力を表示します。 |
--dry-run |
コマンドを実行せずに実行する内容を表示します。 |
--remove-legacy-scopes |
サーバーごとのアクセス許可 (McpServers.*.All) に移行した後、ブループリントからレガシ共有スコープ (Tools.ListInvoke.All形式) を削除します。 V2 SDKが稼働が確認された後のみ使用してください。V1 SDKのエージェントは早期に削除されるとツールアクセス権を失います。 |
-?、 -h、 --help |
ヘルプと使用状況の情報を表示します。 |
サーバーごとの MCP アクセス許可への移行
従来の共有アクセス許可モデルからサーバーごとのアクセス許可に移行する場合は、 --remove-legacy-scopes を使用します。
-
従来の共有モデル:
ea9ffc3e-8a23-4a7d-836d-234d7c7565c1やMcpServers.Mail.Allなどの共有スコープを持つ単一のリソース アプリ ID (McpServers.Teams.All)。 -
サーバーごとのモデル: 各 MCP サーバーには、スコープ
Tools.ListInvoke.Allを持つ独自のアプリ ID があります。
次の例は、ブループリントの適用後にMicrosoft Entra 管理センターにサーバーごとのアクセス許可がどのように表示されるかを示しています。 Work IQ Calendar MCP や Work IQ Mail MCP などの各 MCP サーバーには、独自の委任された Tools.ListInvoke.All スコープがあります。 共有 McpServersMetadata.Read.All スコープは、MCP サーバーメタデータへのアクセスを提供します。
setup permissions bot
Messaging Bot API OAuth2 の許可と継承可能なアクセス許可を構成します。
最低限必要なアクセス許可: グローバル管理者
前提条件: ブループリントと MCP のアクセス許可 (最初に a365 setup permissions mcp 実行)
a365 setup permissions bot [options]
permissions bot のオプション
| Option | Description |
|---|---|
-n、--agent-name <name> |
エージェントの基地名。 このオプションを用意すれば、設定ファイルは必要ありません。 |
--tenant-id <tenantId> |
Azure AD テナント ID。 Overrides auto-detection.
--agent-name で使用します。 |
-v、--verbose |
詳細な出力を表示します。 |
--dry-run |
コマンドを実行せずに実行する内容を表示します。 |
-?、 -h、 --help |
ヘルプと使用状況の情報を表示します。 |
setup permissions custom
エージェントの操作に必要な標準のアクセス許可を超えるカスタム API アクセス許可をエージェント ブループリントに適用します。 このコマンドを使用すると、プレゼンス、ファイル、チャットなどの追加のMicrosoft Graph スコープ、または組織のMicrosoft Entra ID テナントに登録されているカスタム API へのアクセス権をエージェントに付与します。
最低限必要なアクセス許可: グローバル管理者
前提条件: 最初に a365 setup blueprint 実行します。
a365 setup permissions custom [options]
This command:
- 構成された各リソースに対する管理者の同意を使用して、OAuth2 の委任されたアクセス許可の付与を構成します。
- エージェント ユーザーがブループリントからアクセスを継承できるように、継承可能なアクセス許可を設定します。
- 新しいアクセス許可を追加し、構成から削除したアクセス許可を削除することで、Microsoft Entraを現在の構成と調整します。
- べき等であり、複数回実行しても安全です。
permissions custom のオプション
| Option | Description |
|---|---|
-n、--agent-name <name> |
エージェントの基地名。 このオプションを用意すれば、設定ファイルは必要ありません。 |
--tenant-id <tenantId> |
Azure AD テナント ID。 Overrides auto-detection.
--agent-name で使用します。 |
-v、--verbose |
詳細な出力を表示します。 |
--dry-run |
コマンドを実行せずに実行する内容を表示します。 |
--resource-app-id <guid> |
インラインカスタム権限のためのリソースアプリケーションID(GUID)。
--scopes で使用します。 |
--scopes <scopes> |
インラインカスタム権限のためのカンマ区切られた委任スコープ。
--resource-app-id で使用します。 |
-?、 -h、 --help |
ヘルプと使用状況の情報を表示します。 |
カスタム権限をインラインで設定する
--resource-app-idと--scopesを使って、a365.config.jsonを編集せずに直接カスタム権限を適用できます:
# Add Microsoft Graph extended permissions
a365 setup permissions custom `
--resource-app-id 00000003-0000-0000-c000-000000000000 `
--scopes Presence.ReadWrite,Files.Read.All,Chat.Read
# Add custom API permissions
a365 setup permissions custom `
--resource-app-id <your-api-app-id> `
--scopes CustomScope.Read,CustomScope.Write
リソース名はMicrosoft Entraから自動解決されます。 特に指定する必要はありません。
設定ファイルでカスタム権限を設定する
あるいは、customBlueprintPermissionsにa365.config.jsonを追加し、インラインフラグなしでコマンドを実行する方法もあります:
a365 setup permissions custom
このコマンドはMicrosoft Entraと設定された権限を照合し、新しい権限を追加し、設定から削除した権限を削除します。
setup all との統合
構成にカスタムアクセス許可が含まれている場合、 a365 setup all 実行すると、単一のバッチアクセス許可フェーズの一部として自動的に構成されます。 完全なセットアップ順序は次のとおりです。
- Blueprint
- アクセス許可バッチ (MCP、Bot API、カスタム ブループリントのアクセス許可 - すべて一緒に構成)
setup permissions copilotstudio
Power Platform API を介してCopilot Studio副操縦を呼び出すように、エージェント ブループリントの OAuth2 アクセス許可付与と継承可能なアクセス許可を構成します。
最低限必要なアクセス許可: グローバル管理者
前提条件: 最初に a365 setup blueprint 実行します。
a365 setup permissions copilotstudio [options]
This command:
- Power Platform API サービス プリンシパルがテナントに存在することを確認します。
-
CopilotStudio.Copilots.Invokeスコープを使用して、ブループリントから Power Platform API への OAuth2 アクセス許可付与を作成します。 - エージェント インスタンスがCopilot Studio副操縦を呼び出すことができるように、継承可能なアクセス許可を設定します。
permissions copilotstudio のオプション
| Option | Description |
|---|---|
-n、--agent-name <name> |
エージェントの基地名。 このオプションを用意すれば、設定ファイルは必要ありません。 |
--tenant-id <tenantId> |
Azure AD テナント ID。 Overrides auto-detection.
--agent-name で使用します。 |
-v、--verbose |
詳細な出力を表示します。 |
--dry-run |
コマンドを実行せずに実行する内容を表示します。 |
-?、 -h、 --help |
ヘルプと使用状況の情報を表示します。 |
エージェントが実行時にCopilot Studioの副操縦を呼び出す必要がある場合、または CopilotStudio のアクセス許可を必要とする Power Platform API を呼び出す必要がある場合は、このコマンドを使用します。
setup all
すべてのセットアップ手順を実行して Agent 365 環境を設定する
a365 setup all [options]
エージェント 365 のセットアップ全体を順番に実行します。
含まれるもの: ブループリントとアクセス許可。
完了する手順は、ロールによって異なります。
| Step | Global Administrator | エージェントID管理者 | エージェント ID 開発者 |
|---|---|---|---|
| Prerequisites check | Yes | Yes | Yes |
| エージェント ブループリントの作成 | Yes | Yes | Yes |
| 継承権限(AIチームメイトのみ) | Yes | Yes | Yes |
| OAuth2 アクセス許可の付与 (管理者の同意) | Yes | GA ステップが必要 | GA ステップが必要 |
エージェント識別 付与(--authmode s2s または both) |
Yes | Yes | PowerShell fallback |
グローバル管理者なしで a365 setup all を実行すると、CLI は次のようになります。
- 可能なすべての手順 (ブループリントの作成と継承可能なアクセス許可) を完了します。
- リソースごとの管理者の同意 URL を生成し、
a365.generated.config.jsonに保存します。 - グローバル管理者がOAuth2の付与を完了するための次のステップを出力に表示し、直接リンクや同意URLも含まれます。
Tip
グローバル管理者の場合、 a365 setup all はハンドオフを必要とせず、1 回の実行ですべてを完了します。
最小限必要なアクセス許可:
- エージェント ID 開発者ロール (ブループリント作成用)
- グローバル管理者(OAuth2権限付与用 - 利用できない場合はCLIが出力内の次のステップを印刷)
- エージェントID Administrator、Application Administrator、またはグローバル管理者(S2S(サーバー間)エージェントのアイデンティティ付与 -
--authmode s2sまたはboth;利用できない場合はCLIがセットアップ概要にPowerShellのフォールバックを印刷します)
setup all のオプション
| Option | Description |
|---|---|
-v、--verbose |
詳細な出力を表示します。 |
--dry-run |
コマンドを実行せずに実行する内容を表示します。 |
--skip-requirements |
要件の検証チェックをスキップします。 慎重に使用してください。前提条件が満たされていない場合、セットアップが失敗する可能性があります。 |
--aiteammate |
このパラメータを使って、AIチームメイトのエージェントフローにブループリントと権限のみのプロビジョニングを指示します。 このパラメータがなければ、Blueprint Agent FlowはEntraユーザーなしで自動的にエージェント識別サービスプリンシパルを作成します。 このパラメータはa365.config.jsonの場aiteammateを上書きします。 |
--authmode <mode> |
エージェントのアイデンティティ権限付与のための認証パターン(ブループリントエージェントのみ)。
obo (デフォルト) — 主体範囲の委任助成金、管理職は不要。
s2s — エージェントIDSP上のアプリロール割り当てには、 エージェントID管理者、アプリケーション管理者、またはグローバル管理者が必要です。ロールがない場合にPowerShellのフォールバックが印刷されます。
both — OBO(代理者向け)およびS2S助成金を適用します。
--aiteammateではサポートされていません。
authModeではa365.config.json設定も可能です。 |
--agent-registration-only |
ブループリントや許可のステップを飛ばして、エージェント登録だけを実行してください。 失敗した登録手順を再試行するために使用します。 |
--m365 |
このエージェントはM365エージェントとして扱ってください。 MCPプラットフォームを通じてメッセージングエンドポイントを登録します。 デフォルトは false (オプトイン)です。 |
-n、--agent-name <name> |
エージェントのベース名 (たとえば、 "MyAgent")。 指定した場合、構成ファイルは必要ありません。 表示名を "<name> Identity" および "<name> Blueprint"として派生させます。 TenantId は、 az account show ( --tenant-id でオーバーライド) から自動検出されます。 ClientAppId は、テナント内の Agent 365 CLI を調べることで解決されます。 |
--tenant-id <tenantId> |
Azure AD テナント ID。
az account showからの自動検出をオーバーライドします。 非対話型環境で実行する場合、または特定のテナントをターゲットにする場合は、 --agent-name と共に使用します。 |
-?、 -h、 --help |
ヘルプと使用状況の情報を表示します。 |
Agent setup
デフォルトでは、 a365 setup all はブループリントエージェントフローを実行します。 このフローでは、Dataverse または AI のチームメイトの依存関係を持たないエージェントが作成されます。 Agent 365プラットフォームと直接通信するエージェント向けに機能します。
# Default: uses a365.config.json
a365 setup all
# Or explicitly (same result)
a365 setup all --aiteammate false
AIチームメイトエージェントのフローを動かすには、 --aiteammateをパスしてください。
このフローでは、次の手順が順番に実行されます。
- Requirements 検証 — ロールと前提条件Azure確認します。
- Blueprint の作成 - Entra ID エージェント ブループリント アプリケーションを作成または再利用します。
- Batch アクセス許可 — Microsoft Graph、Agent 365 Tools、Messaging Bot API、Observability API、Power Platform、およびカスタム リソースのブループリントで委任されたアクセス許可付与を構成します。
- Agent Identity creation — エージェント ID Graph APIを使用して、Entra IDにエージェント ID を作成します。
- エージェントの登録 - AgentX V2 エージェント登録 API を使用してエージェントを登録します。
-
Config sync — ランタイム接続設定と可観測性構成をプロジェクト ファイル (
appsettings.json、.env) に書き込みます。
Note
エージェントのセットアップには、カスタム クライアント アプリに対する 6 つの追加ベータ API アクセス許可 ( AgentIdentityBlueprint.AddRemoveCreds.All、 AgentIdentityBlueprint.DeleteRestore.All、 AgentInstance.ReadWrite.All、 AgentIdentity.ReadWrite.All、 AgentIdentity.Create.All、 AgentIdentity.DeleteRestore.All) が必要です。 完全な一覧については、「 カスタム クライアント アプリの登録 」を参照してください。
を使用した構成不要のセットアップ --agent-name
a365.config.json ファイルがない場合は、--agent-nameを使用してセットアップを実行します。 CLI はテナントを自動検出し、テナント内の既知の Agent 365 CLI アプリの登録を調べることでクライアント アプリを解決します。
# Preview what would happen (no changes made)
a365 setup all --agent-name "MyAgent" --dry-run
# Run the full setup
a365 setup all --agent-name "MyAgent"
--agent-nameを使用する場合:
-
TenantId は、
az account showから自動検出されます。 オーバーライドする--tenant-idを渡します。 -
ClientAppId は、テナントで
Agent 365 CLIという名前の Entra アプリを探すことによって解決されます。 見つからない場合、CLI はエラーで終了します。 このアプリを登録する方法については、「 カスタム クライアント アプリの登録 」を参照してください。 -
表示名 は、
"<name> Agent"(ID) および"<name> Blueprint"(ブループリント) として派生します。 - インフラストラクチャ は常にスキップされます (外部ホスティングが想定されます)。
- 構成されたプロジェクト パスがないため、構成同期 (
appsettings.jsonの書き込み) はスキップされます。
セットアップ中の管理者の同意
クライアント アプリに必要なアクセス許可に対する管理者の同意 AllPrincipals がない場合、CLI はこれを検出し、対話形式で同意を付与するように求められます。
The following permissions require admin consent:
AgentIdentity.ReadWrite.All
AgentIdentity.Create.All
...
Grant admin consent for these permissions now? [y/N]:
yを入力して、同意をインラインで付与します。 グローバル管理者でない場合は拒否してください。CLIはセットアップ概要でグローバル管理者の次のステップを印刷します。
エージェントの同一性付与(--authmode)
デフォルトでは、 a365 setup all エージェント識別サービスプリンシパル(obo モード)に対して、プリンシパルスコープに基づく委任付与が作成されます。 これらの助成金は管理職を必要としません。
助成金の種類を制御するには --authmode を使う:
| Value | Behavior | Minimum role |
|---|---|---|
obo (既定値) |
代理人識別SP に対する主件範囲の委任助成金 | なし(認証済みユーザーなし) |
s2s |
エージェント識別子SP上のアプリロール割り当て | エージェントID管理者、アプリケーション管理者、またはグローバル管理者 |
both |
OBOは助成金とS2Sアプリケーションの役割割り当てを委任しました | S2Sの役割(上記)はS2Sの部分についてです |
# Default — OBO delegated grants (no admin role needed)
a365 setup all
# S2S app role assignments
a365 setup all --authmode s2s
# Both OBO and S2S
a365 setup all --authmode both
サインインしたユーザーがS2Sの付与に必要な役割を持たない場合、CLIはセットアップ概要にPowerShellのフォールバックブロックを印刷します。 管理者が実行して課題を完了させることができます。
authModeをa365.config.jsonに設定し、フラグが出ていないすべてのランに適用するようにしてください:
{
"authMode": "s2s"
}
Note
--authmode は、 --aiteammateではサポートされていません。 AIのチームメイトエージェントは、エージェントのユーザーIDを通じて自動的にOBOを使用します。
Config sync
正常に実行されると、CLI によってプロジェクト ファイルにランタイム設定が自動的に書き込まれます。
| Setting | Written to | Description |
|---|---|---|
Connections.ServiceConnection |
appsettings.json / .env |
ブループリント クライアント ID、クライアント シークレット、テナント ID、トークン エンドポイント |
Agent365Observability |
appsettings.json / .env |
テレメトリ エクスポート用のエージェント ID (エージェント ID)、ブループリント ID、テナント ID、クライアント ID、クライアント シークレット |
TokenValidation |
appsettings.json |
トークン検証の設定 (DW 以外の場合は既定で無効) |
ConnectionsMap |
appsettings.json / .env |
接続マッピングへの既定のサービス URL |
ファイルが存在しない場合は CLI によって作成され、構成の残りの部分は上書きされずに個々のフィールドが更新されます。
失敗した登録を再試行する
セットアップがブループリントとアクセス許可を正常に完了したが、エージェントの登録中に失敗した場合は、 --agent-registration-only を使用して、前の作業を繰り返さずにその手順のみを再試行します。
a365 setup all --agent-registration-only