SmooAI.SmoothOperator.Server.AspNetCore 1.36.7

dotnet add package SmooAI.SmoothOperator.Server.AspNetCore --version 1.36.7
                    
NuGet\Install-Package SmooAI.SmoothOperator.Server.AspNetCore -Version 1.36.7
                    
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="SmooAI.SmoothOperator.Server.AspNetCore" Version="1.36.7" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SmooAI.SmoothOperator.Server.AspNetCore" Version="1.36.7" />
                    
Directory.Packages.props
<PackageReference Include="SmooAI.SmoothOperator.Server.AspNetCore" />
                    
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 SmooAI.SmoothOperator.Server.AspNetCore --version 1.36.7
                    
#r "nuget: SmooAI.SmoothOperator.Server.AspNetCore, 1.36.7"
                    
#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 SmooAI.SmoothOperator.Server.AspNetCore@1.36.7
                    
#: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=SmooAI.SmoothOperator.Server.AspNetCore&version=1.36.7
                    
Install as a Cake Addin
#tool nuget:?package=SmooAI.SmoothOperator.Server.AspNetCore&version=1.36.7
                    
Install as a Cake Tool

<p align="center"> <a href="https://smoo.ai"><img src="https://raw.githubusercontent.com/SmooAI/smooth-operator/main/.github/banner-dotnet.png" alt="SmooAI.SmoothOperator.Server.AspNetCore — the ASP.NET Core WebSocket host for the smooth-operator server." width="100%" /></a> </p>

<p align="center"> <a href="https://smoo.ai"><img src="https://img.shields.io/badge/Smoo_AI-platform-00A6A6?style=for-the-badge&labelColor=020618" alt="Smoo AI"></a> <a href="https://github.com/SmooAI/smooth-operator/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-MIT-F49F0A?style=for-the-badge&labelColor=020618" alt="license"></a> <a href="https://lom.smoo.ai"><img src="https://img.shields.io/badge/hosted-lom.smoo.ai-FF6B6C?style=for-the-badge&labelColor=020618" alt="lom.smoo.ai"></a> <a href="https://www.nuget.org/packages/SmooAI.SmoothOperator.Server.AspNetCore"><img src="https://img.shields.io/nuget/v/SmooAI.SmoothOperator.Server.AspNetCore?style=for-the-badge&labelColor=020618&color=00A6A6" alt="NuGet"></a> <a href="https://dotnet.microsoft.com"><img src="https://img.shields.io/badge/.NET-8.0-00A6A6?style=for-the-badge&labelColor=020618" alt=".NET 8.0"></a> </p>

<p align="center"> <b><code>SmooAI.SmoothOperator.Server.AspNetCore</code></b> — the ASP.NET Core host that turns <a href="https://www.nuget.org/packages/SmooAI.SmoothOperator.Server"><code>SmooAI.SmoothOperator.Server</code></a> into a running WebSocket backend.<br/>The <a href="https://github.com/SmooAI/smooth-operator/blob/main/docs/PROTOCOL.md">smooth-operator</a> protocol on a <code>/ws</code> endpoint, wired through DI, in a handful of lines. </p>


What is this?

SmooAI.SmoothOperator.Server gives you the agent loop — sessions, streaming turns, tool-calling, HITL, citations. This package is its deployable surface: the ASP.NET Core glue that maps that loop onto a real WebSocket endpoint and registers it in the DI container. If .Server is the engine, .Server.AspNetCore is the chassis you actually drive.

It's the C# analog of the Rust, Go, TypeScript, and Python server hosts — all speaking one schema-driven protocol from spec/.


Install

dotnet add package SmooAI.SmoothOperator.Server.AspNetCore

Targets net8.0. References Microsoft.AspNetCore.App (framework) and brings in SmooAI.SmoothOperator.Server — which in turn pulls the SmooAI.SmoothOperator.Core engine.


Quickstart — a full agent backend in one Program.cs

using Microsoft.Extensions.AI;
using SmooAI.SmoothOperator.Server;
using SmooAI.SmoothOperator.Server.AspNetCore;

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddSingleton<IChatClient>(/* your model, e.g. an OpenAI/Anthropic IChatClient */);
builder.Services.AddSmoothOperatorServer();          // session store + turn runner + frame dispatcher

var app = builder.Build();
app.MapSmoothOperatorWebSocket("/ws");               // the protocol endpoint
app.Run();

That's it — sessions, streaming turns, tool-calling, and citations on one WebSocket. Any of the five native clients (including SmooAI.SmoothOperator for .NET) can connect and drive a turn.

Gate the dangerous tools (HITL)

Register a ConfirmTools and matching tool calls pause for human approval — the resumed stream flows back into the same turn:

builder.Services.AddSingleton(new ConfirmTools("delete_record", "send_email"));

Admin endpoints

app.MapSmoothOperatorAdmin("/admin");                // optional operational surface

What ships in this package

API What it does
IServiceCollection.AddSmoothOperatorServer() Registers the store, turn runner, and dispatcher (defaults to the in-memory session store — swap in SmooAI.SmoothOperator.Server.Postgres for durability).
WebApplication.MapSmoothOperatorWebSocket(path, dispatcherFor?) Maps the smooth-operator protocol onto a WebSocket endpoint.
IEndpointRouteBuilder.MapSmoothOperatorAdmin(prefix) Optional admin/operational routes.

One protocol, one .NET family — each package is published on NuGet and references the others:

Package Role
SmooAI.SmoothOperator.Core The agent engineSmoothAgent, tools, checkpoints.
SmooAI.SmoothOperator.Server The agent server loop — sessions, streaming turns, dispatch, HITL.
SmooAI.SmoothOperator.Server.AspNetCore This package — the ASP.NET Core WebSocket host.
SmooAI.SmoothOperator.Server.Postgres Durable Postgres stores — sessions + ACL-scoped pgvector knowledge.
SmooAI.SmoothOperator The native .NET client (with an IChatClient facade) for talking to this server.

🧩 Part of Smoo AI

Built and open-sourced by Smoo AI — the AI-powered business platform with AI built into every product.

📄 License

MIT © 2026 Smoo AI. See LICENSE.


<p align="center"> Built by <a href="https://smoo.ai"><strong>Smoo AI</strong></a> — AI built into every product. </p>

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  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.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.36.7 0 7/20/2026
1.36.6 0 7/20/2026
1.36.2 22 7/20/2026
1.36.1 28 7/20/2026
1.36.0 30 7/20/2026
1.35.0 23 7/20/2026
1.34.0 25 7/20/2026
1.33.0 25 7/20/2026
1.32.1 34 7/20/2026
1.32.0 48 7/19/2026
1.30.0 46 7/18/2026
1.28.0 39 7/18/2026
1.27.2 36 7/18/2026
1.27.0 41 7/18/2026
1.26.0 37 7/18/2026