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§
- Plugin
Id - Universal plugin identifier:
name@marketplace. - Plugin
Prompt Section - 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.