64 references to AgentClientKind
aspire (34)
Agents\AgentEnvironmentScanContext.cs (3)
13private readonly HashSet<AgentClientKind> _detectedClients = []; 69public void AddDetectedClient(AgentClientKind client) 77public IReadOnlyCollection<AgentClientKind> DetectedClients => _detectedClients;
Agents\ClaudeCode\ClaudeCodeAgentEnvironmentScanner.cs (2)
58context.AddDetectedClient(AgentClientKind.ClaudeCode); 90context.AddDetectedClient(AgentClientKind.ClaudeCode);
Agents\Copilot\CopilotAgentEnvironmentScanner.cs (3)
70context.AddDetectedClient(AgentClientKind.CopilotApp); 81context.AddDetectedClient(AgentClientKind.CopilotCli); 91context.AddDetectedClient(AgentClientKind.CopilotCli);
Agents\Hooks\ITelemetryHookConfigurator.cs (3)
21IReadOnlyCollection<AgentClientKind> detectedClients, 45internal sealed record TelemetryHookSkip(AgentClientKind Client, TelemetryHookSkipReason Reason); 53IReadOnlyList<AgentClientKind> ConfiguredClients,
Agents\Hooks\TelemetryHookConfigurator.cs (13)
57IReadOnlyCollection<AgentClientKind> detectedClients, 62var configured = new List<AgentClientKind>(); 68var supported = new List<AgentClientKind>(); 69if (detectedClients.Contains(AgentClientKind.CopilotApp)) 71supported.Add(AgentClientKind.CopilotApp); 73else if (detectedClients.Contains(AgentClientKind.CopilotCli)) 75supported.Add(AgentClientKind.CopilotCli); 78if (detectedClients.Contains(AgentClientKind.ClaudeCode)) 80supported.Add(AgentClientKind.ClaudeCode); 91foreach (var client in supported) 95case AgentClientKind.CopilotApp: 96case AgentClientKind.CopilotCli: 107case AgentClientKind.ClaudeCode:
Agents\OpenCode\OpenCodeAgentEnvironmentScanner.cs (2)
56context.AddDetectedClient(AgentClientKind.OpenCode); 84context.AddDetectedClient(AgentClientKind.OpenCode);
Agents\VsCode\VsCodeAgentEnvironmentScanner.cs (2)
63context.AddDetectedClient(AgentClientKind.VsCode); 84context.AddDetectedClient(AgentClientKind.VsCode);
Commands\AgentInitCommand.cs (6)
490private static string GetClientDisplayName(AgentClientKind client) 493AgentClientKind.CopilotCli => "GitHub Copilot CLI", 494AgentClientKind.CopilotApp => "GitHub Copilot App", 495AgentClientKind.ClaudeCode => "Claude Code", 496AgentClientKind.VsCode => "VS Code", 497AgentClientKind.OpenCode => "OpenCode",
Aspire.Cli.Tests (30)
Agents\CopilotAgentEnvironmentScannerTests.cs (3)
214Assert.Equal([AgentClientKind.CopilotApp], context.DetectedClients); 229[AgentClientKind.CopilotCli, AgentClientKind.CopilotApp],
Agents\TelemetryHookConfiguratorTests.cs (20)
22var result = await configurator.ConfigureAsync([AgentClientKind.CopilotCli], CancellationToken.None).DefaultTimeout(); 24Assert.Contains(AgentClientKind.CopilotCli, result.ConfiguredClients); 52[AgentClientKind.CopilotCli, AgentClientKind.CopilotApp], 55Assert.Equal([AgentClientKind.CopilotApp], result.ConfiguredClients); 71await configurator.ConfigureAsync([AgentClientKind.CopilotCli], CancellationToken.None).DefaultTimeout(); 84var result = await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None).DefaultTimeout(); 86Assert.Contains(AgentClientKind.ClaudeCode, result.ConfiguredClients); 121await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None).DefaultTimeout(); 122await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None).DefaultTimeout(); 157await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None).DefaultTimeout(); 178var result = await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None).DefaultTimeout(); 180Assert.DoesNotContain(AgentClientKind.ClaudeCode, result.ConfiguredClients); 181Assert.Contains(result.Skipped, s => s.Client == AgentClientKind.ClaudeCode && s.Reason == TelemetryHookSkipReason.MalformedConfig); 197var result = await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None).DefaultTimeout(); 199Assert.Contains(result.Skipped, s => s.Client == AgentClientKind.ClaudeCode && s.Reason == TelemetryHookSkipReason.UnexpectedConfigShape); 217var result = await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None).DefaultTimeout(); 219Assert.Contains(result.Skipped, s => s.Client == AgentClientKind.ClaudeCode && s.Reason == TelemetryHookSkipReason.UnexpectedConfigShape); 231[AgentClientKind.VsCode, AgentClientKind.OpenCode],
Commands\AgentInitCommandTests.cs (7)
929[InlineData(nameof(AgentClientKind.CopilotCli), "GitHub Copilot CLI")] 930[InlineData(nameof(AgentClientKind.CopilotApp), "GitHub Copilot App")] 936var client = Enum.Parse<AgentClientKind>(clientKind); 973options.AgentEnvironmentDetectorFactory = _ => new FakeDetectingDetector(AgentClientKind.CopilotCli); 999private sealed class FakeDetectingDetector(AgentClientKind client) : IAgentEnvironmentDetector 1016IReadOnlyCollection<AgentClientKind> detectedClients,