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