pub struct InternalGenericAgentProvider { /* private fields */ }Implementations§
Source§impl InternalGenericAgentProvider
impl InternalGenericAgentProvider
Sourcepub fn with_checkpoint_store(
self,
checkpoint_store: Arc<dyn GenericAgentCheckpointStore>,
) -> Result<Self, AgentProtocolError>
pub fn with_checkpoint_store( self, checkpoint_store: Arc<dyn GenericAgentCheckpointStore>, ) -> Result<Self, AgentProtocolError>
Replaces the process-lifetime checkpoint WAL before this Provider is cloned or bound to a controller.
Sourcepub fn with_session_compaction(
self,
summarizer: Arc<dyn AgentSessionSummarizer>,
policy: SessionCompactionPolicy,
) -> Result<Self, AgentProtocolError>
pub fn with_session_compaction( self, summarizer: Arc<dyn AgentSessionSummarizer>, policy: SessionCompactionPolicy, ) -> Result<Self, AgentProtocolError>
Binds one explicit Session compaction strategy before this Provider is shared. The policy becomes part of the immutable Generic Agent config digest; summaries remain durable Journal facts with their own strategy and version provenance.
pub fn new( backend: Arc<dyn ModelBackend>, config: GenericAgentConfig, ) -> Result<Self, AgentProtocolError>
pub fn new_with_session_journal( backend: Arc<dyn ModelBackend>, config: GenericAgentConfig, session_journal: Arc<dyn AgentSessionJournalStore>, token_meter: Arc<dyn ModelTokenMeter>, ) -> Result<Self, AgentProtocolError>
pub fn new_with_tools( backend: Arc<dyn ModelBackend>, config: GenericAgentConfig, runtime: Arc<dyn AgentToolRuntime>, run_grant: RunToolGrant, ) -> Result<Self, AgentProtocolError>
pub fn new_with_tools_and_session_journal( backend: Arc<dyn ModelBackend>, config: GenericAgentConfig, runtime: Arc<dyn AgentToolRuntime>, run_grant: RunToolGrant, session_journal: Arc<dyn AgentSessionJournalStore>, token_meter: Arc<dyn ModelTokenMeter>, ) -> Result<Self, AgentProtocolError>
Sourcepub fn new_with_tools_approval_and_session_journal(
backend: Arc<dyn ModelBackend>,
config: GenericAgentConfig,
runtime: Arc<dyn AgentToolRuntime>,
run_grant: RunToolGrant,
approval_bridge: Arc<dyn AgentApprovalBridge>,
session_journal: Arc<dyn AgentSessionJournalStore>,
token_meter: Arc<dyn ModelTokenMeter>,
) -> Result<Self, AgentProtocolError>
pub fn new_with_tools_approval_and_session_journal( backend: Arc<dyn ModelBackend>, config: GenericAgentConfig, runtime: Arc<dyn AgentToolRuntime>, run_grant: RunToolGrant, approval_bridge: Arc<dyn AgentApprovalBridge>, session_journal: Arc<dyn AgentSessionJournalStore>, token_meter: Arc<dyn ModelTokenMeter>, ) -> Result<Self, AgentProtocolError>
Enables Host-mediated approval while keeping capability issuance out of both the model and the Generic Agent implementation.
Sourcepub fn new_with_workflow_and_session_journal(
backend: Arc<dyn ModelBackend>,
config: GenericAgentConfig,
runtime: Arc<dyn AgentToolRuntime>,
run_grant: RunToolGrant,
workflow: Arc<WorkflowExecutionStrategy>,
session_journal: Arc<dyn AgentSessionJournalStore>,
token_meter: Arc<dyn ModelTokenMeter>,
) -> Result<Self, AgentProtocolError>
pub fn new_with_workflow_and_session_journal( backend: Arc<dyn ModelBackend>, config: GenericAgentConfig, runtime: Arc<dyn AgentToolRuntime>, run_grant: RunToolGrant, workflow: Arc<WorkflowExecutionStrategy>, session_journal: Arc<dyn AgentSessionJournalStore>, token_meter: Arc<dyn ModelTokenMeter>, ) -> Result<Self, AgentProtocolError>
Enables explicit complex-workflow selection while retaining one Generic Agent loop and the same guarded Tool Runtime for direct and DAG calls.
Sourcepub fn new_with_skills_and_session_journal(
backend: Arc<dyn ModelBackend>,
config: GenericAgentConfig,
skills: Arc<SkillRuntime>,
session_journal: Arc<dyn AgentSessionJournalStore>,
token_meter: Arc<dyn ModelTokenMeter>,
) -> Result<Self, AgentProtocolError>
pub fn new_with_skills_and_session_journal( backend: Arc<dyn ModelBackend>, config: GenericAgentConfig, skills: Arc<SkillRuntime>, session_journal: Arc<dyn AgentSessionJournalStore>, token_meter: Arc<dyn ModelTokenMeter>, ) -> Result<Self, AgentProtocolError>
Enables the independent Skill Context Plane. The catalog must still be bound into each Run before descriptors or loading are visible.
Sourcepub fn new_with_tools_approval_skills_and_session_journal(
backend: Arc<dyn ModelBackend>,
config: GenericAgentConfig,
runtime: Arc<dyn AgentToolRuntime>,
run_grant: RunToolGrant,
approval_bridge: Arc<dyn AgentApprovalBridge>,
skills: Arc<SkillRuntime>,
session_journal: Arc<dyn AgentSessionJournalStore>,
token_meter: Arc<dyn ModelTokenMeter>,
) -> Result<Self, AgentProtocolError>
pub fn new_with_tools_approval_skills_and_session_journal( backend: Arc<dyn ModelBackend>, config: GenericAgentConfig, runtime: Arc<dyn AgentToolRuntime>, run_grant: RunToolGrant, approval_bridge: Arc<dyn AgentApprovalBridge>, skills: Arc<SkillRuntime>, session_journal: Arc<dyn AgentSessionJournalStore>, token_meter: Arc<dyn ModelTokenMeter>, ) -> Result<Self, AgentProtocolError>
Composition-root constructor for the ordinary CLI/API Agent: Skill context and guarded Tools remain separate runtimes sharing only the Generic Agent loop.
Trait Implementations§
Source§impl AgentProvider for InternalGenericAgentProvider
impl AgentProvider for InternalGenericAgentProvider
Source§fn describe(&self) -> AgentDescriptorEnvelope
fn describe(&self) -> AgentDescriptorEnvelope
Source§fn start<'life0, 'async_trait>(
&'life0 self,
request: AgentStartRequest,
) -> Pin<Box<dyn Future<Output = Result<AgentStart, AgentStartError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn start<'life0, 'async_trait>(
&'life0 self,
request: AgentStartRequest,
) -> Pin<Box<dyn Future<Output = Result<AgentStart, AgentStartError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
AgentStartRequest identity: Run,
Session, spec digest, Provider binding, and descriptor digest. Read moreSource§fn command<'life0, 'life1, 'async_trait>(
&'life0 self,
execution: &'life1 AgentExecutionRef,
command: AgentCommandEnvelope,
) -> Pin<Box<dyn Future<Output = Result<ProviderCommandDisposition, AgentProtocolError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn command<'life0, 'life1, 'async_trait>(
&'life0 self,
execution: &'life1 AgentExecutionRef,
command: AgentCommandEnvelope,
) -> Pin<Box<dyn Future<Output = Result<ProviderCommandDisposition, AgentProtocolError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn recover<'life0, 'async_trait>(
&'life0 self,
request: AgentRecoveryRequest,
) -> Pin<Box<dyn Future<Output = Result<AgentRecovery, AgentProtocolError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn recover<'life0, 'async_trait>(
&'life0 self,
request: AgentRecoveryRequest,
) -> Pin<Box<dyn Future<Output = Result<AgentRecovery, AgentProtocolError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§impl Clone for InternalGenericAgentProvider
impl Clone for InternalGenericAgentProvider
Source§fn clone(&self) -> InternalGenericAgentProvider
fn clone(&self) -> InternalGenericAgentProvider
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for InternalGenericAgentProvider
impl !UnwindSafe for InternalGenericAgentProvider
impl Freeze for InternalGenericAgentProvider
impl Send for InternalGenericAgentProvider
impl Sync for InternalGenericAgentProvider
impl Unpin for InternalGenericAgentProvider
impl UnsafeUnpin for InternalGenericAgentProvider
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.