Novolis.Transports.LocalIpc 2026.1.11.61

dotnet add package Novolis.Transports.LocalIpc --version 2026.1.11.61
                    
NuGet\Install-Package Novolis.Transports.LocalIpc -Version 2026.1.11.61
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Novolis.Transports.LocalIpc" Version="2026.1.11.61" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Novolis.Transports.LocalIpc" Version="2026.1.11.61" />
                    
Directory.Packages.props
<PackageReference Include="Novolis.Transports.LocalIpc" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Novolis.Transports.LocalIpc --version 2026.1.11.61
                    
#r "nuget: Novolis.Transports.LocalIpc, 2026.1.11.61"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Novolis.Transports.LocalIpc@2026.1.11.61
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Novolis.Transports.LocalIpc&version=2026.1.11.61
                    
Install as a Cake Addin
#tool nuget:?package=Novolis.Transports.LocalIpc&version=2026.1.11.61
                    
Install as a Cake Tool

Novolis

Novolis · Docs · Source

Novolis.Transports.LocalIpc

Framed local IPC transport for typed request/response and event-stream messaging over named pipes (Windows) or Unix domain sockets (non-Windows). Domain-agnostic — typed RPC helpers live in consumer packages (Novolis.Agent.Surface, Novolis.Avalonia.Agent.Protocol, etc.).

Install

dotnet add package Novolis.Transports.LocalIpc

Quick start — client

using Novolis.Transports.LocalIpc;

var endpoint = new LocalIpcEndpoint("novolis-audio-live");
using var client = LocalIpcTransport.CreateClient();
await using var connection = await client.ConnectAsync(endpoint);

await connection.SendAsync(new LocalIpcFrame(
    Sequence: 1,
    Kind: "request",
    Name: "Snapshot",
    Payload: Array.Empty<byte>()));

await foreach (var frame in connection.ReadAllAsync())
{
    // handle response/event frames
}

Quick start — server

var endpoint = new LocalIpcEndpoint("novolis-audio-live");
await using var listener = LocalIpcTransport.CreateListener(endpoint);

while (true)
{
    await using var connection = await listener.AcceptAsync();
    await foreach (var frame in connection.ReadAllAsync())
    {
        await connection.SendAsync(new LocalIpcFrame(
            frame.Sequence, "response", frame.Name, responseBytes));
    }
}

Frame protocol

Each frame on the wire: 4-byte little-endian length + binary body:

  • long sequence
  • UTF-8 kind (e.g. request, response, event)
  • UTF-8 name (operation or event name)
  • byte[] payload

LocalIpcFrameCodec.WriteAsync / ReadAsync handle encoding. ReadAsync returns null on clean EOF.

LocalIpcTransportKind.Auto picks named pipe on Windows, Unix socket elsewhere.

API

Type Role
LocalIpcTransport CreateClient(), CreateListener(endpoint)
LocalIpcEndpoint (Address, Kind) — pipe name or socket path
LocalIpcTransportKind Auto, NamedPipe, UnixDomainSocket
LocalIpcFrame (Sequence, Kind, Name, Payload)
LocalIpcFrameCodec Stream read/write helpers
ILocalIpcClient ConnectAsync → ILocalIpcConnection
ILocalIpcConnection SendAsync, ReadAllAsync, IAsyncDisposable
ILocalIpcListener AcceptAsync, IAsyncDisposable

Dogfooding / apps

Used by Live Studio audio host, Novolis Agent surface, Avalonia Agent MCP UI, and AvaloniaAgentMcp session runtime.

Package Role
Novolis.Agent.Surface Agent host IPC + typed message helpers
Novolis.Avalonia.Agent.Protocol UI agent client over default endpoint
Novolis.Http.Client Remote HTTP execution (complementary)
Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0

    • No dependencies.

NuGet packages (7)

Showing the top 5 NuGet packages that depend on Novolis.Transports.LocalIpc:

Package Downloads
Novolis.Audio.Live.Protocol

MessagePack DTOs, IPC helpers, and REPL client for Novolis Audio Live.

Novolis.Maui.Agent.Protocol

MessagePack DTOs, LocalIpc helpers, and client for the MAUI UI agent protocol (ui.*).

Novolis.Avalonia.Agent.Protocol

MessagePack DTOs, LocalIpc helpers, and client for the Avalonia UI agent protocol (ui.*).

Novolis.Maui.Agent

In-process MAUI UI agent host: LocalIpc ui.* protocol, tree dump, screenshot, click/type/wait.

Novolis.Avalonia.Agent

In-process Avalonia UI agent host: LocalIpc ui.* protocol, tree dump, screenshot, click/type/wait.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2026.1.11.61 90 10/4/2026
2026.1.1.60 45 10/4/2026
2026.1.1.58 48 10/3/2026
2026.1.1.57 46 10/1/2026
2026.1.1.56 49 9/30/2026