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
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ Before using the Agent365 CLI, you must create a custom Entra ID app registratio

⚠️ **Important**: Use **Delegated** permissions (you sign in, CLI acts on your behalf), NOT Application permissions (for background services).

📖 **Detailed Setup Guide**: [docs/guides/custom-client-app-registration.md](docs/guides/custom-client-app-registration.md)
📖 **Detailed Setup Guide**: [Custom Client App Registration](https://learn.microsoft.com/microsoft-agent-365/developer/custom-client-app-registration)

> **Why is this required?** The CLI needs elevated permissions to create and manage Agent Identity Blueprints in your tenant. You maintain control over which permissions are granted, and the app stays within your tenant's security boundaries.

Expand Down
4 changes: 2 additions & 2 deletions docs/commands/config-init.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ Retry (2 attempts remaining)? (Y/n):
```

**Prerequisites**: Before running config init, create your custom client app:
1. Follow the guide: [Custom Client App Registration](../guides/custom-client-app-registration.md)
1. Follow the guide: [Custom Client App Registration](https://learn.microsoft.com/microsoft-agent-365/developer/custom-client-app-registration)
2. Copy the **Application (client) ID** from Azure Portal
3. Ensure admin consent is granted for all permissions
4. Enter the ID when prompted during config init
Expand Down Expand Up @@ -254,7 +254,7 @@ The wizard automatically populates these fields:
|-------|-------------|--------|---------|
| **clientAppId** | Custom Entra ID app registration Application (client) ID | User provides after creating app | `a1b2c3d4-e5f6-g7h8-i9j0-k1l2m3n4o5p6` |

**Important**: This must be configured before setup. See [Custom Client App Registration Guide](../guides/custom-client-app-registration.md) for detailed setup instructions.
**Important**: This must be configured before setup. See [Custom Client App Registration Guide](https://learn.microsoft.com/microsoft-agent-365/developer/custom-client-app-registration) for detailed setup instructions.

### Azure Infrastructure (Auto-detected from Azure CLI)

Expand Down
2 changes: 1 addition & 1 deletion docs/commands/develop/develop-addpermissions.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ The application you're adding permissions to can be the **same application** you

**Example**: If your `a365.config.json` has `clientAppId: "12345678-..."`, running `a365 develop add-permissions` will add MCP permissions to that same application.

> **Note**: The `clientAppId` must be a **client application you create in your Entra ID tenant** with `Application.ReadWrite.All` permission. See the [custom client app registration guide](../../guides/custom-client-app-registration.md) for setup instructions.
> **Note**: The `clientAppId` must be a **client application you create in your Entra ID tenant** with `Application.ReadWrite.All` permission. See the [custom client app registration guide](https://learn.microsoft.com/microsoft-agent-365/developer/custom-client-app-registration) for setup instructions.

## Prerequisites

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -541,7 +541,7 @@ private static void LogDeprecationError(ILogger logger, string commandName)
logger.LogError(" 3. Create an agent instance through Microsoft Teams");
logger.LogError("");
logger.LogError("For more information, see:");
logger.LogError("https://learn.microsoft.com/en-us/microsoft-agent-365/onboard");
logger.LogError("https://learn.microsoft.com/microsoft-agent-365/onboard");
logger.LogError("");
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,12 @@ public static class ConfigConstants
/// <summary>
/// Microsoft Learn documentation URL for Agent 365 CLI setup and usage
/// </summary>
public const string Agent365CliDocumentationUrl = "https://learn.microsoft.com/en-us/microsoft-agent-365/developer/agent-365-cli";
public const string Agent365CliDocumentationUrl = "https://learn.microsoft.com/microsoft-agent-365/developer/agent-365-cli";

/// <summary>
/// Microsoft Learn documentation URL for custom client app registration
/// </summary>
public const string CustomClientAppRegistrationUrl = "https://learn.microsoft.com/microsoft-agent-365/developer/custom-client-app-registration";
Copy link

Copilot AI Jan 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The new constant CustomClientAppRegistrationUrl correctly omits the locale segment (/en-us/) for automatic redirection, but the existing Agent365CliDocumentationUrl constant on line 29 still includes /en-us/. For consistency and to ensure all users get content in their preferred locale, consider updating Agent365CliDocumentationUrl to also be locale-agnostic: https://learn.microsoft.com/microsoft-agent-365/developer/agent-365-cli

Copilot uses AI. Check for mistakes.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot apply changes based on this feedback

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated in commit 997d76f. Made all microsoft-agent-365 URLs locale-agnostic:

  • ConfigConstants.cs: Removed /en-us/ from Agent365CliDocumentationUrl
  • Also updated 3 other user-facing URLs in A365CreateInstanceRunner.cs, CreateInstanceCommand.cs, and FrontierPreviewRequirementCheck.cs

All Microsoft Learn URLs now automatically redirect based on user's locale preferences.


/// <summary>
/// Production Agent 365 Tools Discover endpoint URL
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ public async Task<bool> RunAsync(
_logger.LogError(" - Work correctly with messaging and event propagation");
_logger.LogError("");
_logger.LogError("Use 'a365 publish' followed by Teams-based hiring instead.");
_logger.LogError("See: https://learn.microsoft.com/en-us/microsoft-agent-365/onboard");
_logger.LogError("See: https://learn.microsoft.com/microsoft-agent-365/onboard");
_logger.LogError("");
return false;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -849,7 +849,7 @@ private string GetUsageLocationFromAccount(AzureAccountInfo accountInfo)
Console.WriteLine("Why Delegated? You sign in interactively, CLI acts on your behalf.");
Console.WriteLine("Application permissions are for background services only.");
Console.WriteLine();
Console.WriteLine("See: https://github.com/microsoft/Agent365-devTools/blob/main/docs/guides/custom-client-app-registration.md");
Console.WriteLine($"See: {ConfigConstants.CustomClientAppRegistrationUrl}");
Console.WriteLine("=================================================================");
Console.WriteLine();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ public override Task<RequirementCheckResult> CheckAsync(Agent365Config config, I
Console.WriteLine(" - Please confirm your tenant is enrolled before continuing.");
Console.WriteLine();
Console.WriteLine("Documentation:");
Console.WriteLine(" - https://learn.microsoft.com/en-us/microsoft-agent-365/developer/");
Console.WriteLine(" - https://adoption.microsoft.com/en-us/copilot/frontier-program/");
Console.WriteLine(" - https://learn.microsoft.com/microsoft-agent-365/developer/");
Console.WriteLine(" - https://adoption.microsoft.com/copilot/frontier-program/");

// Return warning without using base class logging (already logged above)
return Task.FromResult(RequirementCheckResult.Warning(
Expand Down
Loading