217 references to AgentEnvironment
aspire (76)
Agents\AgentEnvironmentDetector.cs (3)
12public async Task<AgentEnvironment> DetectAsync( 16var environments = AgentEnvironment.None;
Agents\ClaudeCode\ClaudeCodeAgentClient.cs (8)
23public AgentEnvironment Environments => AgentEnvironment.ClaudeCode; 81AgentEnvironment detectedEnvironments, CancellationToken cancellationToken) 83if (!detectedEnvironments.HasFlag(AgentEnvironment.ClaudeCode)) 85return new TelemetryHookConfigurationResult(AgentEnvironment.None, []); 90? new TelemetryHookConfigurationResult(AgentEnvironment.None, 91[new TelemetryHookSkip(AgentEnvironment.ClaudeCode, skipReason)]) 92: new TelemetryHookConfigurationResult(AgentEnvironment.ClaudeCode, []);
Agents\ClaudeCode\ClaudeCodeAgentEnvironmentScanner.cs (4)
17public async Task<AgentEnvironment> ScanAsync(AgentEnvironmentScanContext context, CancellationToken cancellationToken) 29return AgentEnvironment.ClaudeCode; 37return AgentEnvironment.ClaudeCode; 42return AgentEnvironment.None;
Agents\Copilot\CopilotAgentClient.cs (13)
35public AgentEnvironment Environments => AgentEnvironment.CopilotCli | AgentEnvironment.CopilotApp | AgentEnvironment.VsCode; 104AgentEnvironment detectedEnvironments, CancellationToken cancellationToken) 106var targetEnvironment = detectedEnvironments & (AgentEnvironment.CopilotApp | AgentEnvironment.CopilotCli); 110if (targetEnvironment.HasFlag(AgentEnvironment.CopilotApp)) 112targetEnvironment = AgentEnvironment.CopilotApp; 114if (targetEnvironment == AgentEnvironment.None) 116return new TelemetryHookConfigurationResult(AgentEnvironment.None, []); 152return new TelemetryHookConfigurationResult(AgentEnvironment.None,
Agents\Copilot\CopilotAgentEnvironmentScanner.cs (5)
18public async Task<AgentEnvironment> ScanAsync(AgentEnvironmentScanContext context, CancellationToken cancellationToken) 23var environments = AgentEnvironment.None; 27environments |= AgentEnvironment.CopilotApp; 44environments |= AgentEnvironment.CopilotCli;
Agents\Hooks\ITelemetryHookConfigurator.cs (3)
21AgentEnvironment detectedEnvironments, 45internal sealed record TelemetryHookSkip(AgentEnvironment Environment, TelemetryHookSkipReason Reason); 53AgentEnvironment ConfiguredEnvironments,
Agents\Hooks\TelemetryHookConfigurator.cs (10)
11AgentEnvironment detectedEnvironments, CancellationToken cancellationToken) 14var supportedEnvironments = detectedEnvironments & 15(AgentEnvironment.CopilotApp | AgentEnvironment.CopilotCli | AgentEnvironment.ClaudeCode); 16if (supportedEnvironments == AgentEnvironment.None) 18return new TelemetryHookConfigurationResult(AgentEnvironment.None, []); 24var configured = AgentEnvironment.None; 26foreach (var client in clients.Where(client => (client.Environments & supportedEnvironments) != AgentEnvironment.None))
Agents\IAgentClient.cs (2)
17AgentEnvironment Environments { get; } 46AgentEnvironment detectedEnvironments, CancellationToken cancellationToken);
Agents\IAgentEnvironmentDetector.cs (1)
17Task<AgentEnvironment> DetectAsync(
Agents\IAgentEnvironmentScanner.cs (1)
17Task<AgentEnvironment> ScanAsync(AgentEnvironmentScanContext context, CancellationToken cancellationToken);
Agents\OpenCode\OpenCodeAgentClient.cs (4)
45public AgentEnvironment Environments => AgentEnvironment.OpenCode; 196AgentEnvironment detectedEnvironments, CancellationToken cancellationToken) 197=> Task.FromResult(new TelemetryHookConfigurationResult(AgentEnvironment.None, []));
Agents\OpenCode\OpenCodeAgentEnvironmentScanner.cs (4)
16public async Task<AgentEnvironment> ScanAsync(AgentEnvironmentScanContext context, CancellationToken cancellationToken) 29return AgentEnvironment.OpenCode; 37return AgentEnvironment.OpenCode; 42return AgentEnvironment.None;
Agents\VsCode\VsCodeAgentEnvironmentScanner.cs (4)
19public async Task<AgentEnvironment> ScanAsync(AgentEnvironmentScanContext context, CancellationToken cancellationToken) 32return AgentEnvironment.VsCode; 38return AgentEnvironment.VsCode; 45return AgentEnvironment.None;
Commands\AgentInitCommand.cs (14)
326AgentEnvironment? detectedEnvironments = null; 353.Where(client => (client.Environments & detectedEnvironments.Value) != AgentEnvironment.None).ToArray(); 697var selectedEnvironments = selectedClients.Aggregate(AgentEnvironment.None, 721private async Task ConfigureTelemetryHooksAsync(AgentEnvironment detectedEnvironments, CancellationToken cancellationToken) 738if (result.ConfiguredEnvironments != AgentEnvironment.None) 740var environmentNames = string.Join(", ", Enum.GetValues<AgentEnvironment>() 741.Where(environment => environment != AgentEnvironment.None && result.ConfiguredEnvironments.HasFlag(environment)) 764private static string GetEnvironmentDisplayName(AgentEnvironment environment) 767AgentEnvironment.CopilotCli => "GitHub Copilot CLI", 768AgentEnvironment.CopilotApp => "GitHub Copilot App", 769AgentEnvironment.ClaudeCode => "Claude Code", 770AgentEnvironment.VsCode => "VS Code", 771AgentEnvironment.OpenCode => "OpenCode",
Aspire.Cli.Tests (141)
Agents\AgentEnvironmentDetectorTests.cs (13)
23var environments = await detector.DetectAsync(context, CancellationToken.None).DefaultTimeout(); 25Assert.Equal(AgentEnvironment.None, environments); 53DetectedEnvironments = AgentEnvironment.ClaudeCode 62var environments = await detector.DetectAsync(context, CancellationToken.None).DefaultTimeout(); 64Assert.Equal(AgentEnvironment.ClaudeCode, environments); 73DetectedEnvironments = AgentEnvironment.CopilotCli | AgentEnvironment.CopilotApp 77DetectedEnvironments = AgentEnvironment.OpenCode | AgentEnvironment.CopilotCli 86var environments = await detector.DetectAsync(context, CancellationToken.None).DefaultTimeout(); 90Assert.Equal(AgentEnvironment.CopilotCli | AgentEnvironment.CopilotApp | AgentEnvironment.OpenCode, environments);
Agents\ClaudeCodeAgentEnvironmentScannerTests.cs (9)
34var environments = await scanner.ScanAsync(context, CancellationToken.None).DefaultTimeout(); 36Assert.Equal(AgentEnvironment.ClaudeCode, environments); 64var environments = await scanner.ScanAsync(context, CancellationToken.None).DefaultTimeout(); 66Assert.Equal(AgentEnvironment.ClaudeCode, environments); 90var environments = await scanner.ScanAsync(context, CancellationToken.None).DefaultTimeout(); 92Assert.Equal(AgentEnvironment.None, environments); 125var environments = await scanner.ScanAsync(context, CancellationToken.None).DefaultTimeout(); 127Assert.Equal(rootHasProjectDirectory ? AgentEnvironment.ClaudeCode : AgentEnvironment.None, environments);
Agents\CopilotAgentEnvironmentScannerTests.cs (10)
35var environments = await scanner.ScanAsync(context, CancellationToken.None).DefaultTimeout(); 37Assert.Equal((cliInstalled ? AgentEnvironment.CopilotCli : AgentEnvironment.None) | 38(appInstalled ? AgentEnvironment.CopilotApp : AgentEnvironment.None), environments); 60var environments = await scanner.ScanAsync(context, CancellationToken.None).DefaultTimeout(); 62Assert.Equal(appInstalled ? AgentEnvironment.CopilotApp : AgentEnvironment.None, environments); 85var environments = await scanner.ScanAsync(context, CancellationToken.None).DefaultTimeout(); 87Assert.Equal(AgentEnvironment.CopilotCli, environments);
Agents\OpenCodeAgentEnvironmentScannerTests.cs (5)
34var environments = await scanner.ScanAsync(context, CancellationToken.None).DefaultTimeout(); 36Assert.Equal(AgentEnvironment.OpenCode, environments); 56var environments = await scanner.ScanAsync(context, CancellationToken.None).DefaultTimeout(); 58Assert.Equal(cliInstalled ? AgentEnvironment.OpenCode : AgentEnvironment.None, environments);
Agents\TelemetryHookConfiguratorTests.cs (42)
25var result = await configurator.ConfigureAsync(AgentEnvironment.CopilotCli, CancellationToken.None).DefaultTimeout(); 27Assert.Equal(AgentEnvironment.CopilotCli, result.ConfiguredEnvironments); 54AgentEnvironment.CopilotCli | AgentEnvironment.CopilotApp | AgentEnvironment.ClaudeCode | 55AgentEnvironment.VsCode | AgentEnvironment.OpenCode, 58Assert.Equal(AgentEnvironment.CopilotApp | AgentEnvironment.ClaudeCode, result.ConfiguredEnvironments); 77AgentEnvironment.CopilotApp | AgentEnvironment.CopilotCli | AgentEnvironment.ClaudeCode, 80Assert.Equal(AgentEnvironment.ClaudeCode, result.ConfiguredEnvironments); 82Assert.Equal(AgentEnvironment.CopilotApp, skip.Environment); 99await configurator.ConfigureAsync(AgentEnvironment.CopilotCli, CancellationToken.None).DefaultTimeout(); 112var result = await configurator.ConfigureAsync(AgentEnvironment.ClaudeCode, CancellationToken.None).DefaultTimeout(); 114Assert.Equal(AgentEnvironment.ClaudeCode, result.ConfiguredEnvironments); 138await configurator.ConfigureAsync(AgentEnvironment.ClaudeCode, CancellationToken.None).DefaultTimeout(); 139await configurator.ConfigureAsync(AgentEnvironment.ClaudeCode, CancellationToken.None).DefaultTimeout(); 174await configurator.ConfigureAsync(AgentEnvironment.ClaudeCode, CancellationToken.None).DefaultTimeout(); 194await configurator.ConfigureAsync(AgentEnvironment.ClaudeCode, CancellationToken.None); 195await configurator.ConfigureAsync(AgentEnvironment.ClaudeCode, CancellationToken.None); 206[InlineData((int)AgentEnvironment.ClaudeCode, (int)AgentEnvironment.None)] 208(int)(AgentEnvironment.CopilotApp | AgentEnvironment.CopilotCli | AgentEnvironment.ClaudeCode), 209(int)AgentEnvironment.CopilotApp)] 221var result = await configurator.ConfigureAsync((AgentEnvironment)detectedEnvironments, CancellationToken.None).DefaultTimeout(); 223Assert.Equal((AgentEnvironment)expectedEnvironments, result.ConfiguredEnvironments); 225Assert.Equal(AgentEnvironment.ClaudeCode, skip.Environment); 265await configurator.ConfigureAsync(AgentEnvironment.ClaudeCode, CancellationToken.None); 266await configurator.ConfigureAsync(AgentEnvironment.ClaudeCode, CancellationToken.None); 288var result = await configurator.ConfigureAsync(AgentEnvironment.ClaudeCode, CancellationToken.None).DefaultTimeout(); 290Assert.Contains(result.Skipped, s => s.Environment == AgentEnvironment.ClaudeCode && s.Reason == TelemetryHookSkipReason.UnexpectedConfigShape); 308var result = await configurator.ConfigureAsync(AgentEnvironment.ClaudeCode, CancellationToken.None).DefaultTimeout(); 310Assert.Contains(result.Skipped, s => s.Environment == AgentEnvironment.ClaudeCode && s.Reason == TelemetryHookSkipReason.UnexpectedConfigShape); 315[InlineData((int)AgentEnvironment.None)] 316[InlineData((int)(AgentEnvironment.VsCode | AgentEnvironment.OpenCode))] 322var result = await configurator.ConfigureAsync((AgentEnvironment)detectedEnvironments, CancellationToken.None).DefaultTimeout(); 324Assert.Equal(AgentEnvironment.None, result.ConfiguredEnvironments);
Agents\VsCodeAgentEnvironmentScannerTests.cs (11)
33var environments = await scanner.ScanAsync(context, CancellationToken.None).DefaultTimeout(); 35Assert.Equal(AgentEnvironment.VsCode, environments); 59var environments = await scanner.ScanAsync(context, CancellationToken.None).DefaultTimeout(); 61Assert.Equal(AgentEnvironment.None, environments); 84var environments = await scanner.ScanAsync(context, CancellationToken.None).DefaultTimeout(); 86Assert.Equal(AgentEnvironment.VsCode, environments); 106var environments = await scanner.ScanAsync(context, CancellationToken.None).DefaultTimeout(); 108Assert.Equal(cliInstalled ? AgentEnvironment.VsCode : AgentEnvironment.None, environments); 127var environments = await scanner.ScanAsync(context, CancellationToken.None).DefaultTimeout(); 129Assert.Equal(AgentEnvironment.VsCode, environments);
Commands\AgentInitClientSelectionTests.cs (34)
33DetectedEnvironments = AgentEnvironment.CopilotApp | AgentEnvironment.CopilotCli | AgentEnvironment.VsCode 47Assert.Equal(AgentEnvironment.CopilotApp | AgentEnvironment.CopilotCli | AgentEnvironment.VsCode, copilot.Environments); 59[InlineData("project", true, false, nameof(AgentEnvironment.ClaudeCode), "claude")] 60[InlineData("project", false, true, nameof(AgentEnvironment.ClaudeCode), "claude")] 61[InlineData("project", true, true, nameof(AgentEnvironment.ClaudeCode), "claude")] 62[InlineData("project", false, false, nameof(AgentEnvironment.ClaudeCode), "claude")] 63[InlineData("global", true, false, nameof(AgentEnvironment.ClaudeCode), "claude")] 64[InlineData("global", false, true, nameof(AgentEnvironment.ClaudeCode), "claude")] 65[InlineData("global", true, true, nameof(AgentEnvironment.ClaudeCode), "claude")] 66[InlineData("global", false, false, nameof(AgentEnvironment.ClaudeCode), "claude")] 67[InlineData("project", false, true, nameof(AgentEnvironment.OpenCode), "opencode")] 68[InlineData("global", false, true, nameof(AgentEnvironment.OpenCode), "opencode")] 76AgentEnvironment? detectedEnvironment = detectedEnvironmentName is { } name ? Enum.Parse<AgentEnvironment>(name) : null; 79DetectedEnvironments = detectedEnvironment ?? AgentEnvironment.None 122defaults.Any(client => (client.Environments & detected) != AgentEnvironment.None) ? detected : AgentEnvironment.None, 135var detector = new TestAgentEnvironmentDetector { DetectedEnvironments = AgentEnvironment.ClaudeCode }; 149Assert.Equal(expectedScanCount == 1 ? AgentEnvironment.ClaudeCode : AgentEnvironment.None, hooks.ConfiguredEnvironments); 313Assert.Equal(AgentEnvironment.None, hooks.ConfiguredEnvironments); 1370DetectedEnvironments = AgentEnvironment.CopilotApp | AgentEnvironment.ClaudeCode | AgentEnvironment.OpenCode 1378Assert.Equal(scope == "global" ? AgentEnvironment.ClaudeCode : AgentEnvironment.None, hooks.ConfiguredEnvironments); 1431options.AgentEnvironmentDetectorFactory = _ => new TestAgentEnvironmentDetector { DetectedEnvironments = AgentEnvironment.CopilotCli }; 1464Assert.Equal(AgentEnvironment.CopilotCli, hooks.ConfiguredEnvironments); 1474Assert.Equal(AgentEnvironment.CopilotCli, hooks.ConfiguredEnvironments); 1479Assert.Equal(AgentEnvironment.None, hooks.ConfiguredEnvironments);
Commands\AgentInitCommandTests.cs (8)
672[InlineData(nameof(AgentEnvironment.CopilotCli), "GitHub Copilot CLI")] 673[InlineData(nameof(AgentEnvironment.CopilotApp), "GitHub Copilot App")] 679var environment = Enum.Parse<AgentEnvironment>(environmentName); 716options.AgentEnvironmentDetectorFactory = _ => new TestAgentEnvironmentDetector { DetectedEnvironments = AgentEnvironment.CopilotCli }; 1006options.AgentEnvironmentDetectorFactory = _ => new TestAgentEnvironmentDetector { DetectedEnvironments = AgentEnvironment.CopilotCli }; 1017Assert.Equal(scope is AgentConfigurationScope.Global ? AgentEnvironment.CopilotCli : AgentEnvironment.None, hooks.ConfiguredEnvironments);
Commands\NewCommandTests.cs (3)
2586options.AgentEnvironmentDetectorFactory = _ => new TestAgentEnvironmentDetector { DetectedEnvironments = AgentEnvironment.CopilotCli }; 3459options.AgentEnvironmentDetectorFactory = _ => new TestAgentEnvironmentDetector { DetectedEnvironments = AgentEnvironment.CopilotCli }; 3488options.AgentEnvironmentDetectorFactory = _ => new TestAgentEnvironmentDetector { DetectedEnvironments = AgentEnvironment.CopilotCli };
TestServices\TestAgentEnvironmentDetector.cs (2)
14public AgentEnvironment DetectedEnvironments { get; init; } 16public Task<AgentEnvironment> DetectAsync(
TestServices\TestAgentEnvironmentScanner.cs (2)
12public AgentEnvironment DetectedEnvironments { get; init; } 14public Task<AgentEnvironment> ScanAsync(AgentEnvironmentScanContext context, CancellationToken cancellationToken)
TestServices\TestTelemetryHookConfigurator.cs (2)
12public AgentEnvironment ConfiguredEnvironments { get; private set; } 15AgentEnvironment detectedEnvironments,