Eternet.Agents.Control.Abstractions 2.0.21

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

Eternet.Agents.Control.Abstractions

Stable contracts for EAC plugin packages.

Plugins reference this package to expose diagnostics, deterministic code fixes, transformers, and guidance without taking a dependency on Eternet.Agents.Control.Core or the eac CLI host.

The package targets netstandard2.0 so repo-local and global plugin packages can stay independent from the host runtime as long as they only use the public abstractions.

Plugin code-fix contracts can declare eligibility metadata, required diagnostic properties, cascade diagnostics, and dry-run plan scope so the host can keep batching, safety gates, and verification host-owned while plugins contribute the domain-specific remediation logic.

Plugin CLI output contracts

Plugin CLI aliases should use the contract that matches the output shape.

  • EacPluginCliQueryableOutput is for row-oriented results that benefit from dataset querying. V2 commands should declare a stable DefaultDatasetId, bounded DefaultColumns, and any MaxTop or cache hints the host needs to keep the default response compact.
  • EacPluginCliNonQueryableOutput is for bounded summary or preview results. Use preview only when the contract has an explicit positive preview item limit.
  • If a command really needs nested-object summary / page / full behavior, keep that behavior on a host-owned disclosure surface instead of trying to overload plugin dataset flags. full still means the richest bounded page, not an unlimited inline payload.

The paging families are intentionally separate:

  • disclosure and simple list paging use --skip / --take;
  • dataset querying uses --dataset, --select, --filter, --orderby, --skip, and --top;
  • --top is not a disclosure alias, and --take is not a dataset alias.
  • host-owned alias options stay reserved in plugin manifests: do not declare or shadow --workspace, --format, --apply, --detail, --search, --skip, --take, --dataset, --select, --filter, --orderby, --top, --count, --persist-result, or --result-id.
  • host-side output normalization does not require plugin-side changes as long as the plugin remains ABI-compatible with the installed EAC CLI and abstractions package. ABI mismatch errors still require rebuilding and reinstalling the plugin against the current package.
  • when one inline page still exceeds the budget, the host emits bounded budgetInfo / partialInfo, continuation hints, and artifact references instead of the raw oversized payload body.

EacPluginRenderHints remains the DTO for compact dataset previews: default dataset id, default columns, preview row count, and preferred renderer hints all stay explicit in the contract.

Guidance provider content

IEacGuidanceProvider returns full EacGuidanceDocument instances, and the host derives section metadata from ContentMarkdown. Guidance providers should therefore author stable section markers inside the markdown instead of assuming callers will always load the entire document or bypass paging with a legacy flag.

Recommended marker shape:





## Quick Start

Guidance packs should keep section ids stable, provide summaries for migrated sections, and use lowercase comma-separated tags. The host then keeps guidance search and guidance toc metadata-first, guidance show compact by default, and guidance show --detail full as the richest projection for the current bounded page. Legacy guidance show --full remains a compatibility alias for the same bounded behavior.

Workspace edit contracts

IEacWorkspaceEditProvider is the preferred additive contract for providers that can describe repository edits without writing files directly.

  • BuildEditSetAsync(...) returns an EacWorkspaceEditSet with concrete TextEdits and DeleteEdits collections so the contract stays DTO-only and round-trips cleanly for netstandard2.0 consumers.
  • RelativePath values are workspace-relative paths only. Providers should not emit rooted paths or paths that escape the workspace.
  • ExpectedOriginalContentHashSha256 is an optional optimistic-concurrency token for the original file text before Core applies the edit.
  • EacCodeFixApplicationResult.WorkspaceMutation carries authoritative mutation evidence when the host computes it. Legacy ChangedFiles remains available as a compatibility mirror during migration waves.

EacWorkspaceTextOutput remains in the package only as a legacy compatibility helper while the Core-owned mutation boundary and first-party plugin migrations complete. New provider work should prefer IEacWorkspaceEditProvider, and first-party repos now guard new raw System.IO write exceptions with focused policy tests instead of growing new productive EacWorkspaceTextOutput call sites.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  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. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on Eternet.Agents.Control.Abstractions:

Package Downloads
Eternet.Agents.Control.Contracts

Contracts for Eternet.Agents.Control.Contracts API features.

Eternet.Agents.Control.Plugins.Assertions

EAC plugin with assertion package migration diagnostics and deterministic code fixes.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.0.21 92 8/7/2026
2.0.20 97 7/26/2026
2.0.19 89 7/25/2026
2.0.18 150 6/6/2026
2.0.17 170 5/21/2026
0.1.5 104 5/16/2026
0.1.4 115 5/14/2026
0.1.3 97 5/14/2026
0.1.2 124 5/13/2026
0.1.1 122 5/12/2026
0.1.0 106 5/12/2026