ControlAgentNet.Core
0.1.0
See the version list below for details.
dotnet add package ControlAgentNet.Core --version 0.1.0
NuGet\Install-Package ControlAgentNet.Core -Version 0.1.0
<PackageReference Include="ControlAgentNet.Core" Version="0.1.0" />
<PackageVersion Include="ControlAgentNet.Core" Version="0.1.0" />
<PackageReference Include="ControlAgentNet.Core" />
paket add ControlAgentNet.Core --version 0.1.0
#r "nuget: ControlAgentNet.Core, 0.1.0"
#:package ControlAgentNet.Core@0.1.0
#addin nuget:?package=ControlAgentNet.Core&version=0.1.0
#tool nuget:?package=ControlAgentNet.Core&version=0.1.0
ControlAgentNet.Core
Core contracts and neutral models for ControlAgentNet - the foundation every package builds upon.
Purpose
ControlAgentNet.Core defines the shared abstractions that all other packages depend on. This enables:
- Modularity - Any package can reference Core without pulling in extra dependencies
- Extensibility - Third parties can build new implementations
- Consistency - All packages share the same types and interfaces
What's in Core
Interfaces
| Interface | Description |
|---|---|
IAgentOrchestrator |
Main entry point for agent processing |
IAgentEngine |
Cognitive execution of AI interactions |
IAgentMiddleware |
Pipeline component for request/response processing |
IToolGuard |
Tool execution policy enforcement |
IApprovalStore |
Human-in-the-loop approval persistence |
Models
| Model | Description |
|---|---|
IncomingMessage |
User input to the agent |
OutgoingMessage |
Agent response |
AgentContext |
Runtime context passed through middleware |
ToolExecutionRequest |
Tool invocation context |
ToolGuardDecision |
Guard evaluation result |
PolicyValue |
Tool/channel enable/disable/approval states |
PolicyContext |
Scoping for policy resolution |
Descriptors
| Descriptor | Description |
|---|---|
ToolDescriptor |
Tool metadata (id, name, risk level, etc.) |
ChannelDescriptor |
Channel metadata (id, transport, etc.) |
CapabilityRiskLevel |
Risk classification (Low, Medium, High, Critical) |
Why These Types?
Design Principle: Core Stays Lean
Core contains only types that need to be shared across packages:
┌─────────────────────────────────────────┐
│ ControlAgentNet.Core │
│ (interfaces, models, descriptors) │
└─────────────────────────────────────────┘
▲ ▲ ▲
│ │ │
Policies Runtime Guards
(stores) (orch) (enforce)
Core knows nothing about:
- Database connections
- HTTP clients
- Specific AI providers
- Channel implementations
This keeps Core lightweight and focused on contracts.
Extending Core
Third parties can create new implementations:
// Create a custom engine
public sealed class MyCustomEngine : IAgentEngine
{
public Task<AgentEngineResult> RunAsync(AgentContext context, CancellationToken ct)
{
// Custom AI logic
return Task.FromResult(AgentEngineResult.FromText("Hello from my custom engine"));
}
public IAsyncEnumerable<string> StreamAsync(AgentContext context, CancellationToken ct)
{
// Streaming support
}
}
// Register it
builder.Services.AddSingleton<IAgentEngine, MyCustomEngine>();
RunAsync returns AgentEngineResult so engines can surface response text plus optional metadata such as model id, finish reason, and token usage.
Versioning
Core follows semantic versioning. Once v1.0.0 is released:
- Breaking changes = major version bump
- New features = minor version bump
- Bug fixes = patch version bump
Dependencies
Zero external dependencies. Core is pure .NET:
<PropertyGroup>
<TargetFramework>net10.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
This ensures Core can be referenced by any package without version conflicts.
Related Packages
- ControlAgentNet.Agents - Main facade
- ControlAgentNet.Runtime - Implementation
| 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.Configuration.Abstractions (>= 10.0.4)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.4)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.4)
NuGet packages (10)
Showing the top 5 NuGet packages that depend on ControlAgentNet.Core:
| Package | Downloads |
|---|---|
|
ControlAgentNet.Runtime
Runtime orchestration, middleware pipeline, and DI composition for ControlAgentNet agents. |
|
|
ControlAgentNet.Channels.Telegram
Telegram bot channel for ControlAgentNet agents with polling and webhook modes. |
|
|
ControlAgentNet.Agents
Base facade package for ControlAgentNet agents on .NET 10 using the default Microsoft Agents stack. |
|
|
ControlAgentNet.Guards
Core tool execution guards for ControlAgentNet. |
|
|
ControlAgentNet.Policies
Core policy abstractions, scoped policy contracts, and audit contracts for ControlAgentNet. |
GitHub repositories
This package is not used by any popular GitHub repositories.