AutomateX.Plugin.Sdk
1.0.0
dotnet add package AutomateX.Plugin.Sdk --version 1.0.0
NuGet\Install-Package AutomateX.Plugin.Sdk -Version 1.0.0
<PackageReference Include="AutomateX.Plugin.Sdk" Version="1.0.0" />
<PackageVersion Include="AutomateX.Plugin.Sdk" Version="1.0.0" />
<PackageReference Include="AutomateX.Plugin.Sdk" />
paket add AutomateX.Plugin.Sdk --version 1.0.0
#r "nuget: AutomateX.Plugin.Sdk, 1.0.0"
#:package AutomateX.Plugin.Sdk@1.0.0
#addin nuget:?package=AutomateX.Plugin.Sdk&version=1.0.0
#tool nuget:?package=AutomateX.Plugin.Sdk&version=1.0.0
AutomateX Plugin SDK
The author-facing SDK for building AutomateX plugins — actions, triggers, and connection types that run out-of-process under the engine's plugin host.
Install
<PackageReference Include="AutomateX.Plugin.Sdk" Version="1.0.0">
<ExcludeAssets>runtime</ExcludeAssets>
</PackageReference>
ExcludeAssets=runtime is important: the host provides the SDK assembly at runtime, so a plugin must not
ship its own copy (the same reason first-party plugins reference it with <Private>false</Private>). Package
your plugin as the flat dotnet publish output zipped as <PluginName>.zip with <PluginName>.dll at the
root, plus a plugin.json manifest.
Minimal action
using AutomateX.Plugin.Sdk;
public sealed record GreetConfig(string Name);
public sealed record GreetResult(string Message);
[Action("example.greet", "Greet", Description = "Returns a greeting.")]
public sealed class GreetAction : IAction<GreetConfig, GreetResult>
{
public Task<GreetResult> ExecuteAsync(GreetConfig config, ActionContext context, CancellationToken ct = default) =>
Task.FromResult(new GreetResult($"Hello, {config.Name}!"));
}
Manifest (plugin.json)
Ship a plugin.json at the package root so the plugin is browsable in the catalog before install:
{
"schemaVersion": 1,
"id": "example.greeter",
"name": "Example.Greeter",
"displayName": "Greeter",
"version": "1.0.0",
"description": "A tiny example plugin.",
"author": "you",
"license": "MIT",
"minAutomateXVersion": "5.0.0",
"capabilities": { "actions": ["example.greet"], "triggers": [], "connectionTypes": [] },
"permissions": { "egress": [] }
}
version is the plugin's own semver — bump it only when the plugin changes. See the AutomateX repo for
publishing a catalog and hosting your own plugin source.
| 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.Logging.Abstractions (>= 10.0.9)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on AutomateX.Plugin.Sdk:
| Package | Downloads |
|---|---|
|
AutomateX.Plugin.Protocol
Host↔plugin protocol for AutomateX: stdio frame codec, egress guard, and JSON-Schema export (SchemaExport) for plugin config/result types. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 98 | 7/12/2026 |