diff --git a/eng/targets/GeneratePkgDef.targets b/eng/targets/GeneratePkgDef.targets
index 54877ced329be..9d8bf69b1d090 100644
--- a/eng/targets/GeneratePkgDef.targets
+++ b/eng/targets/GeneratePkgDef.targets
@@ -35,6 +35,7 @@
Metadata:
- ItemSpec: service name
+ - Audience ('Local'|'Process'): Microsoft.VisualStudio.Shell.ServiceBroker.ServiceAudience enum value
- ProfferingPackageId (guid, optional): GUID of the proffering package or empty for ServiceHub services
4) PkgDefBindingRedirect
@@ -87,6 +88,19 @@
+
+
+
+
+
+ <_Audience>dword:00000003
+ <_Audience Condition="'%(PkgDefBrokeredService.Audience)' == 'Process'">dword:00000001
+
+
+
+
diff --git a/src/Tools/ExternalAccess/Razor/Microsoft.CodeAnalysis.ExternalAccess.Razor.csproj b/src/Tools/ExternalAccess/Razor/Microsoft.CodeAnalysis.ExternalAccess.Razor.csproj
index ff5cc5f18ef13..85aaccdf515a9 100644
--- a/src/Tools/ExternalAccess/Razor/Microsoft.CodeAnalysis.ExternalAccess.Razor.csproj
+++ b/src/Tools/ExternalAccess/Razor/Microsoft.CodeAnalysis.ExternalAccess.Razor.csproj
@@ -28,6 +28,7 @@
+
diff --git a/src/Tools/ExternalAccess/Razor/RazorRemoteHostClient.cs b/src/Tools/ExternalAccess/Razor/RazorRemoteHostClient.cs
deleted file mode 100644
index 506c8d57ee843..0000000000000
--- a/src/Tools/ExternalAccess/Razor/RazorRemoteHostClient.cs
+++ /dev/null
@@ -1,33 +0,0 @@
-// Licensed to the .NET Foundation under one or more agreements.
-// The .NET Foundation licenses this file to you under the MIT license.
-// See the LICENSE file in the project root for more information.
-#nullable enable annotations
-
-using System.Collections.Generic;
-using System.Threading;
-using System.Threading.Tasks;
-using Microsoft.CodeAnalysis.Experiments;
-using Microsoft.CodeAnalysis.Options;
-using Microsoft.CodeAnalysis.Remote;
-
-namespace Microsoft.CodeAnalysis.ExternalAccess.Razor
-{
- internal sealed class RazorRemoteHostClient
- {
- private readonly RemoteHostClient _client;
-
- internal RazorRemoteHostClient(RemoteHostClient client)
- {
- _client = client;
- }
-
- public static async Task CreateAsync(Workspace workspace, CancellationToken cancellationToken = default)
- {
- var client = await RemoteHostClient.TryGetClientAsync(workspace.Services, cancellationToken).ConfigureAwait(false);
- return client == null ? null : new RazorRemoteHostClient(client);
- }
-
- public async Task> TryRunRemoteAsync(string targetName, Solution? solution, IReadOnlyList