SaasCopilot.GUI.WinForms 1.0.0-pr.202604101458

This is a prerelease version of SaasCopilot.GUI.WinForms.
dotnet add package SaasCopilot.GUI.WinForms --version 1.0.0-pr.202604101458
                    
NuGet\Install-Package SaasCopilot.GUI.WinForms -Version 1.0.0-pr.202604101458
                    
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="SaasCopilot.GUI.WinForms" Version="1.0.0-pr.202604101458" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SaasCopilot.GUI.WinForms" Version="1.0.0-pr.202604101458" />
                    
Directory.Packages.props
<PackageReference Include="SaasCopilot.GUI.WinForms" />
                    
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 SaasCopilot.GUI.WinForms --version 1.0.0-pr.202604101458
                    
#r "nuget: SaasCopilot.GUI.WinForms, 1.0.0-pr.202604101458"
                    
#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 SaasCopilot.GUI.WinForms@1.0.0-pr.202604101458
                    
#: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=SaasCopilot.GUI.WinForms&version=1.0.0-pr.202604101458&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=SaasCopilot.GUI.WinForms&version=1.0.0-pr.202604101458&prerelease
                    
Install as a Cake Tool

SaasCopilot.GUI.WinForms

A Windows Forms AI copilot panel for the SaasCopilot desktop client. Backed by a locally-running LLM via LM Studio, it can call MCP tools exposed by a live SaasCopilot application — keeping all data fully on-premise.

For the repository overview and package map see README.md.

For architecture details, design decisions, and roadmap see ARCHITECTURE.md.


Requirements

  • Windows 10 (build 17763) or later
  • .NET 10 (Windows)
  • LM Studio running on http://localhost:1234
  • A SaasCopilot application instance exposing a /mcp endpoint (Act mode only)

Installation

dotnet add package SaasCopilot.GUI.WinForms

Quick Start

1. Register services

var services = new ServiceCollection();
services.AddSaasCopilotCopilotGui();
var provider = services.BuildServiceProvider();

2. Show the copilot panel

var factory = provider.GetRequiredService<IMcpSidecarPresenterFactory>();
using var presenter = factory.Create(new Uri("https://my-saascopilot-host"));
presenter.Show();

IMcpSidecarPresenterFactory.Create derives the /mcp endpoint from the URI automatically. Call presenter.Hide() / presenter.Dispose() to close the panel.


Configuration

Settings are persisted to %APPDATA%\SaasCopilot\mcp-config.json via IMcpConfigurationStore.

Property Default Description
McpEndpointOverride null Override the auto-derived /mcp URI
SelectedModelId null LM Studio model ID; null = first available
PanelWidth 400 Width of the floating panel in pixels

Public API

DI extension

// registers all services needed by the copilot panel
services.AddSaasCopilotCopilotGui();

Presenter (recommended entry point)

IMcpSidecarPresenterFactory   // resolve from DI
    .Create(Uri appBaseUri) → IMcpSidecarPresenter

IMcpSidecarPresenter
    .Show()
    .Hide()
    .Dispose()

WinForms controls (advanced / custom embedding)

Class Description
McpSidecarForm Top-level floating tool window
McpSidecarControl Chat input + response area + mode selector
McpChatTranscriptControl Scrollable log of all tool/model messages
McpSidecarSettingsForm Endpoint override + model picker dialog

Assistant modes

McpAssistantMode.Chat  // LLM answers from its own knowledge; no tools called
McpAssistantMode.Act   // LLM may call any MCP tool; prefix with #toolName to pin one

Built-in Tools

Always available regardless of MCP connection:

Tool Description
file_read Read a local file
file_write Create or overwrite a local file
run_command Run a shell command and capture stdout/stderr
search_web Fetch text content from an HTTP/HTTPS URL

Destructive tools (file_write, run_command) require explicit user approval before execution.


See Also

Product Compatible and additional computed target framework versions.
.NET net10.0-windows7.0 is compatible. 
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.0.0-pr.202604101458 73 4/10/2026