pub struct PluginContext {
pub llm: Option<Arc<dyn LlmClient>>,
pub document_parsers: Option<Arc<DocumentParserRegistry>>,
pub skill_registry: Option<Arc<SkillRegistry>>,
}Expand description
Runtime context provided to plugins when they are loaded.
Gives plugins access to shared session dependencies such as the LLM client,
skill registry, and document parser registry without coupling the Plugin
trait to specific concrete types.
Fields§
§llm: Option<Arc<dyn LlmClient>>LLM client — required by tools that do LLM inference (e.g. agentic_parse).
document_parsers: Option<Arc<DocumentParserRegistry>>Document parser registry for plugins that need stronger file-to-text extraction before handing context to the model.
skill_registry: Option<Arc<SkillRegistry>>Skill registry — plugins may register companion skills here.
Implementations§
Source§impl PluginContext
impl PluginContext
pub fn new() -> Self
pub fn with_llm(self, llm: Arc<dyn LlmClient>) -> Self
pub fn with_document_parsers( self, registry: Arc<DocumentParserRegistry>, ) -> Self
pub fn with_skill_registry(self, registry: Arc<SkillRegistry>) -> Self
Trait Implementations§
Source§impl Clone for PluginContext
impl Clone for PluginContext
Source§fn clone(&self) -> PluginContext
fn clone(&self) -> PluginContext
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for PluginContext
impl !RefUnwindSafe for PluginContext
impl Send for PluginContext
impl Sync for PluginContext
impl Unpin for PluginContext
impl UnsafeUnpin for PluginContext
impl !UnwindSafe for PluginContext
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more