SharpClaw.SidecarHost.InProcess
0.5.0-dev.20260920.1
dotnet add package SharpClaw.SidecarHost.InProcess --version 0.5.0-dev.20260920.1
NuGet\Install-Package SharpClaw.SidecarHost.InProcess -Version 0.5.0-dev.20260920.1
<PackageReference Include="SharpClaw.SidecarHost.InProcess" Version="0.5.0-dev.20260920.1" />
<PackageVersion Include="SharpClaw.SidecarHost.InProcess" Version="0.5.0-dev.20260920.1" />
<PackageReference Include="SharpClaw.SidecarHost.InProcess" />
paket add SharpClaw.SidecarHost.InProcess --version 0.5.0-dev.20260920.1
#r "nuget: SharpClaw.SidecarHost.InProcess, 0.5.0-dev.20260920.1"
#:package SharpClaw.SidecarHost.InProcess@0.5.0-dev.20260920.1
#addin nuget:?package=SharpClaw.SidecarHost.InProcess&version=0.5.0-dev.20260920.1&prerelease
#tool nuget:?package=SharpClaw.SidecarHost.InProcess&version=0.5.0-dev.20260920.1&prerelease
SharpClaw.SidecarHost.InProcess
SharpClaw.SidecarHost.InProcess loads one explicitly trusted .NET package into a collectible assembly context. It parses package.json, validates hostMode: in-process, creates the package instance, and compiles the same ModuleSDK graph used by sidecar hosting.
Host Composition
InProcessRegistrationHost.LoadAsync returns validated service descriptors and the compiled graph. The application host adds those descriptors to its service collection, builds its provider, and calls Bind. InProcessModuleInvoker resolves scoped handlers from that provider for each invocation.
await using var package = await InProcessRegistrationHost.LoadAsync(packageDirectory);
var services = new ServiceCollection();
foreach (var descriptor in package.ServiceDescriptors)
((ICollection<ServiceDescriptor>)services).Add(descriptor);
await using var provider = services.BuildServiceProvider(new ServiceProviderOptions
{
ValidateOnBuild = true,
ValidateScopes = true,
});
package.Bind(provider);
await package.StartAsync(hostVersion, features, cancellationToken);
Authority
The host issues action, endpoint, CLI, tool, and storage authority. The invoker does not create caller identity or substitute an outcome. It resolves only the handler selected by the compiled graph.
Lifetime
Create one registration host for each loaded package. Stop package lifecycle behavior before disposal. Disposal unloads the collectible context after the package has released its references.
Out-of-process hosting remains the default for optional packages. Use this package only for an explicit in-process trust decision.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Microsoft.Extensions.DependencyInjection (>= 10.0.8)
- SharpClaw.Contracts (= 0.5.0-dev.20260920.1)
- SharpClaw.ModuleSDK (= 0.5.0-dev.20260920.1)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on SharpClaw.SidecarHost.InProcess:
| Package | Downloads |
|---|---|
|
SharpClaw.SidecarHost.OutOfProcess
Runs SharpClaw .NET modules in the default out-of-process host model over the SharpClaw foreign-module protocol. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.5.0-dev.20260920.1 | 31 | 9/20/2026 |
| 0.5.0-dev.20260919.3 | 65 | 9/19/2026 |