Skip to main content

Module plugin

Module plugin 

Source
Expand description

Plugin system — marketplace-based extensibility for the agent runtime.

A plugin is a directory containing a plugin.json manifest that declares which components it provides: tools, policies, skills, MCP servers, agents, prompt sections, and output styles.

Plugins are installed from marketplaces — curated collections fetched from GitHub, git URLs, npm, pip, or local directories.

Re-exports§

pub use errors::DependencyReason;
pub use errors::PluginError;
pub use manifest::CommandPolicyDef;
pub use manifest::ConfigOptionType;
pub use manifest::DependencyRef;
pub use manifest::LspServerEntry;
pub use manifest::LspServersConfig;
pub use manifest::MarketplaceEntry;
pub use manifest::McpServerEntry;
pub use manifest::McpServersConfig;
pub use manifest::PartialPluginManifest;
pub use manifest::PluginAuthor;
pub use manifest::PluginManifest;
pub use manifest::PluginSource;
pub use manifest::PoliciesConfig;
pub use manifest::SessionPolicyDef;
pub use manifest::ToolPolicyDef;
pub use manifest::UserConfigOption;
pub use marketplace::Marketplace;
pub use marketplace::MarketplaceRegistry;
pub use registry::LoadedPlugin;
pub use registry::PluginEntry;
pub use registry::PluginRegistry;
pub use registry::PluginStatus;
pub use sources::MarketplaceSource;
pub use tool_loader::CommandTool;
pub use tool_loader::ToolPermission;
pub use tool_loader::ToolSpec;
pub use tool_loader::load_tool_spec;

Modules§

errors
Plugin system error types — discriminated union following modular error-pattern conventions.
manifest
Plugin manifest types — serde-compatible schema for plugin.json.
marketplace
Marketplace registry — manages marketplace sources and their plugin catalogs.
policy_loader
Command-backed plugin policy with a controlled working directory and environment.
registry
PluginRegistry — manages loaded plugins and their enable/disable lifecycle.
sources
Source types for marketplaces — where marketplace.json comes from.
tool_loader
CommandTool — declarative JSON-defined tools executed as subprocesses.

Structs§

PluginId
Universal plugin identifier: name@marketplace.
PluginPromptSection
A prompt section backed by a static template string from a plugin.

Constants§

BUILTIN_MARKETPLACE
Sentinel marketplace name for built-in plugins that ship with the binary.