Skip to main content

Module plugin

Module plugin 

Source
Expand description

Plugin System for A3S Code

Provides a unified interface for loading and unloading optional tool plugins. All plugins implement the Plugin trait, which gives the system a single consistent surface for lifecycle management.

§Architecture

SessionOptions::plugins  ──►  PluginManager::load_all(registry, ctx)
                                    │
                        ┌───────────┴────────────┐
                        ▼                        ▼
             AgenticSearchPlugin       AgenticParsePlugin
             (registers agentic_search) (registers agentic_parse)

§Usage

use a3s_code_core::{SessionOptions, AgenticSearchPlugin, AgenticParsePlugin};

let opts = SessionOptions::new()
    .with_plugin(AgenticSearchPlugin::new())
    .with_plugin(AgenticParsePlugin::new());

Structs§

AgenticParsePlugin
Plugin that mounts the agentic_parse tool.
AgenticSearchPlugin
Plugin that mounts the agentic_search tool.
PluginContext
Runtime context provided to plugins when they are loaded.
PluginManager
Manages the lifecycle of all loaded plugins for a session.
SkillPlugin
A skill-only plugin that injects custom skills into the session’s skill registry without registering any tools.

Traits§

Plugin
Unified interface for all A3S Code plugins.