68 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>(); 70var supported = new List<AgentClientKind>(); 71if (detectedClients.Contains(AgentClientKind.CopilotApp)) 73supported.Add(AgentClientKind.CopilotApp); 75else if (detectedClients.Contains(AgentClientKind.CopilotCli)) 77supported.Add(AgentClientKind.CopilotCli); 80if (detectedClients.Contains(AgentClientKind.ClaudeCode)) 82supported.Add(AgentClientKind.ClaudeCode); 93foreach (var client in supported) 97case AgentClientKind.CopilotApp: 98case AgentClientKind.CopilotCli: 109case 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 (34)
Agents\CopilotAgentEnvironmentScannerTests.cs (3)
214Assert.Equal([AgentClientKind.CopilotApp], context.DetectedClients); 229[AgentClientKind.CopilotCli, AgentClientKind.CopilotApp],
Agents\TelemetryHookConfiguratorTests.cs (24)
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); 110await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None).DefaultTimeout(); 111await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None).DefaultTimeout(); 146await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None).DefaultTimeout(); 166await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None); 167await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None); 188var result = await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None).DefaultTimeout(); 190Assert.DoesNotContain(AgentClientKind.ClaudeCode, result.ConfiguredClients); 191Assert.Contains(result.Skipped, s => s.Client == AgentClientKind.ClaudeCode && s.Reason == TelemetryHookSkipReason.MalformedConfig); 230await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None); 231await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None); 253var result = await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None).DefaultTimeout(); 255Assert.Contains(result.Skipped, s => s.Client == AgentClientKind.ClaudeCode && s.Reason == TelemetryHookSkipReason.UnexpectedConfigShape); 273var result = await configurator.ConfigureAsync([AgentClientKind.ClaudeCode], CancellationToken.None).DefaultTimeout(); 275Assert.Contains(result.Skipped, s => s.Client == AgentClientKind.ClaudeCode && s.Reason == TelemetryHookSkipReason.UnexpectedConfigShape); 287[AgentClientKind.VsCode, AgentClientKind.OpenCode],
Commands\AgentInitCommandTests.cs (7)
991[InlineData(nameof(AgentClientKind.CopilotCli), "GitHub Copilot CLI")] 992[InlineData(nameof(AgentClientKind.CopilotApp), "GitHub Copilot App")] 998var client = Enum.Parse<AgentClientKind>(clientKind); 1035options.AgentEnvironmentDetectorFactory = _ => new FakeDetectingDetector(AgentClientKind.CopilotCli); 1061private sealed class FakeDetectingDetector(AgentClientKind client) : IAgentEnvironmentDetector 1078IReadOnlyCollection<AgentClientKind> detectedClients,