SessionGrain Type
Self-contained session grain. Resolves workspaces from IWorkspaceRegistry, manages multiple conversation contexts and memory through Orleans persistence. Dependencies (injected via Orleans DI at silo startup): - IWorkspaceRegistry: multi-tenant workspace registry (multiple workspaces per silo) - ILlmProvider: the LLM backend used to power agents On each ProcessAsync call: 1. Resolves the workspace from registry by stored key 2. Finds the agent definition + tools from that workspace 3. Builds a fresh agent instance (no prior state) 4. Runs the agent through the full ETCLOVG harness (governance, verification, etc.) 5. Persists the updated conversation in the active context
Constructors
| Constructor |
Description
|
Full Usage:
SessionGrain(persistentState, registry, provider, orchestratorFactory, conversationStore, harnessServicesFactory, feedbackFactory, eventBus, grainFactory)
Parameters:
IPersistentState<SessionGrainState>
registry : IWorkspaceRegistry
provider : ILlmProvider
orchestratorFactory : IOrchestratorFactory
conversationStore : IConversationStore
harnessServicesFactory : Func<string, string, IHarnessServices>
feedbackFactory : Func<string, FeedbackService>
eventBus : IEventBus
grainFactory : IGrainFactory
Returns: SessionGrain
|
|
Nao