CDS.ScriptChat.WinForms
1.4.1
dotnet add package CDS.ScriptChat.WinForms --version 1.4.1
NuGet\Install-Package CDS.ScriptChat.WinForms -Version 1.4.1
<PackageReference Include="CDS.ScriptChat.WinForms" Version="1.4.1" />
<PackageVersion Include="CDS.ScriptChat.WinForms" Version="1.4.1" />
<PackageReference Include="CDS.ScriptChat.WinForms" />
paket add CDS.ScriptChat.WinForms --version 1.4.1
#r "nuget: CDS.ScriptChat.WinForms, 1.4.1"
#:package CDS.ScriptChat.WinForms@1.4.1
#addin nuget:?package=CDS.ScriptChat.WinForms&version=1.4.1
#tool nuget:?package=CDS.ScriptChat.WinForms&version=1.4.1
CDS.ScriptChat.WinForms
A drop-in WinForms script+chat panel: the user talks to an LLM about the C# script they are editing, and the assistant can propose edits to it.
Two calls to adopt it:
_chatPanel.AddScript(
name: "Inspection",
read: () => _scriptTextBox.Text,
write: script => _scriptTextBox.Text = script,
api: typeof(ScriptGlobals)); // drives the orientation index AND lookup_symbol
_chatPanel.UseStoredKey("MyApp"); // key store, settings dialogue, and restore
ScriptChatHostPanel— the control to drop in.AddScriptonce per script,UseStoredKeyonce. It reaches the host's script buffer through caller-supplied delegates, so it works with any editor control (Scintilla, a plainTextBox, anything) and depends on none of them.ScriptChatPanel— the inner chat UI, for a host that wants to drive sessions itself.ScriptChatSettingsPanel/ScriptChatSettingsForm— provider, model and API key configuration, as a panel or a ready-made dialogue.UseStoredKeywires these up for you.DpapiApiKeyStore— per-user API key storage via Windows DPAPI. Swap in your own viaIApiKeyStore.
Set
<GenerateDocumentationFile>true</GenerateDocumentationFile>in your app, orlookup_symbolreturns correct signatures with no documentation.
Proposed edits — a full rewrite or a targeted find/replace patch — are shown as a diff and applied only when the user accepts. Only one proposal is ever awaiting a decision at a time.
Bring your own key. The key is stored per-user under DPAPI and is never logged or transmitted anywhere except the provider SDK call itself.
Builds on CDS.ScriptChat.Core, which holds the provider-agnostic conversation engine.
MIT licensed.
Full docs, a screenshot, and the design record: GitHub repo.
Credits
Package icon: Seo and web icons created by Yogi Aprelliyanto — Flaticon
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0-windows7.0 is compatible. |
-
net10.0-windows7.0
- CDS.Markdown.Lite (>= 1.5.5)
- CDS.ScriptChat.Core (>= 1.4.1)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.11)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.