Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,7 @@ Agents provisioned before this release need `Agent365.Observability.OtelWrite` g
- Agent registration endpoint promoted from `/stagingbeta/copilot/agentRegistrations` to `/beta/copilot/agentRegistrations`

### Removed
- `a365 create-instance` command — temporarily removed due to differences in instance creation via Teams and CLI.
- `a365 deploy` command (`deploy app`, `deploy mcp`) — Azure App Service hosting is no longer managed by the CLI. Provide a `messagingEndpoint` in `a365.config.json` pointing to your externally hosted agent.
- `a365 setup infrastructure` subcommand — Azure App Service and App Service Plan provisioning has been removed. Hosting infrastructure must be provisioned externally before running `a365 setup all`.
- Config properties `subscriptionId`, `resourceGroup`, `appServicePlanName`, `appServicePlanSku`, `webAppName`, `needDeployment`, `location` — removed from `a365.config.json`. Generated config properties `deploymentLastTimestamp`, `deploymentLastStatus`, `deploymentLastCommitHash`, `deploymentLastBuildId` have also been removed.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,7 @@ public static Command CreateCommand(

var aiTeammateOption = new Option<bool?>(
"--aiteammate",
description: "true = AI Teammate agent: setup provisions blueprint and permissions only;\n" +
" run 'a365 create-instance' separately to create the agent identity SP and Entra user.\n" +
description: "true = AI Teammate agent: setup provisions blueprint and permissions only.\n" +
"false = blueprint-only agent: setup auto-creates agent identity SP; no Entra user (default)\n" +
"Overrides the aiTeammate field in a365.config.json");
Comment thread
gwharris7 marked this conversation as resolved.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -272,7 +272,7 @@ private static Command CreateInstanceScopesSubcommand(
}
else
{
logger.LogError("No agent identity found in configuration. Please run 'a365 create-instance' first.");
logger.LogError("No agent identity found in configuration. Please create an agent instance first.");
logger.LogInformation("An agent identity must be created before you can query OAuth2 grants.");
Comment thread
gwharris7 marked this conversation as resolved.
context.ExitCode = 1;
return;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,8 +109,7 @@ public static Command CreateCommand(

var aiTeammateOption = new Option<bool>(
"--aiteammate",
description: "AI Teammate agent: setup provisions blueprint and permissions only;\n" +
"run 'a365 create-instance' separately to create the agent identity SP and Entra user.\n" +
description: "AI Teammate agent: setup provisions blueprint and permissions only.\n" +
"Omit for blueprint-only agent (default): setup auto-creates agent identity SP; no Entra user.\n" +
"Overrides the aiTeammate field in a365.config.json");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -213,8 +213,7 @@ private static void ValidateAuthMode(string? value, List<string> errors)

/// <summary>
/// Controls which setup and publish flow is used.
/// true (default) = AI Teammate agent: setup all provisions blueprint and permissions only;
/// agent identity SP and Entra user are created separately via 'a365 create-instance'.
/// true (default) = AI Teammate agent: setup all provisions blueprint and permissions only.
Comment thread
gwharris7 marked this conversation as resolved.
/// false = blueprint-only agent: setup all auto-creates agent identity SP; no Entra user. Two variants:
/// - UseBlueprint = false: App Registration + Azure Bot, no blueprint.
/// - UseBlueprint = true: Blueprint-only non-DW flow (Agent Identity Blueprint + Agent Instance).
Expand Down
4 changes: 0 additions & 4 deletions src/Microsoft.Agents.A365.DevTools.Cli/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,6 @@ await Task.WhenAll(

// Get loggers and services
var setupLogger = serviceProvider.GetRequiredService<ILogger<SetupCommand>>();
var createInstanceLogger = serviceProvider.GetRequiredService<ILogger<CreateInstanceCommand>>();
var queryEntraLogger = serviceProvider.GetRequiredService<ILogger<QueryEntraCommand>>();
var cleanupLogger = serviceProvider.GetRequiredService<ILogger<CleanupCommand>>();
var publishLogger = serviceProvider.GetRequiredService<ILogger<PublishCommand>>();
Expand Down Expand Up @@ -150,9 +149,6 @@ await Task.WhenAll(
var confirmationProvider = serviceProvider.GetRequiredService<IConfirmationProvider>();
rootCommand.AddCommand(SetupCommand.CreateCommand(setupLogger, configService, executor,
backendConfigurator, azureAuthValidator, platformDetector, graphApiService, agentBlueprintService, blueprintLookupService, federatedCredentialService, clientAppValidator, confirmationProvider, armApiService, resolver: bootstrapResolver));
rootCommand.AddCommand(CreateInstanceCommand.CreateCommand(createInstanceLogger, configService, executor,
graphApiService, resolver: bootstrapResolver));

var manifestTemplateService = serviceProvider.GetRequiredService<ManifestTemplateService>();
rootCommand.AddCommand(QueryEntraCommand.CreateCommand(queryEntraLogger, configService, executor, graphApiService, agentBlueprintService, resolver: bootstrapResolver));
rootCommand.AddCommand(CleanupCommand.CreateCommand(cleanupLogger, configService, backendConfigurator, executor, agentBlueprintService, confirmationProvider, federatedCredentialService, azureAuthValidator, graphApiService, resolver: bootstrapResolver));
Expand Down
Loading