SDK Overview
AgentCircuits.Core is the SDK package and assembly for the runtime layer.
Main namespaces
Section titled “Main namespaces”The current public source is organized around these namespaces:
AgentCircuitsAgentCircuits.EventsAgentCircuits.ProvidersAgentCircuits.SessionsAgentCircuits.ToolsAgentCircuits.Hooks
Related namespaces in the same SDK include MCP support, skills, teams, and host abstractions.
Core object model
Section titled “Core object model”The runtime centers on these abstractions:
Agentfor execution and orchestrationILanguageModelfor provider-specific inferenceSessionandISessionServicefor persistenceIToolfor tool execution- event types for all streamed output
Two execution styles
Section titled “Two execution styles”The same agent can be used in two ways:
ReceiveAsync()for a streaming loop that runs until the turn sequence completesStepAsync()for explicit turn control and tool approval workflows
Internally both paths rely on the same turn execution pipeline.
Design principles
Section titled “Design principles”The SDK is built for:
- in-process execution
- provider abstraction without changing the agent loop
- tool-first extensibility
- explicit session control
- observable, typed events instead of string-only output
Continue with Agents for configuration details.