Expand description
Plugin System for Shape
Provides dynamic loading of data source and output sink plugins using
the stable C ABI defined in shape-abi-v1.
§Overview
Plugins are dynamically loaded shared libraries (.so/.dll/.dylib) that implement the Shape plugin interface. This enables:
- Runtime extension without recompilation
- Third-party data source integrations
- Custom alert/output sinks
§Security Note
Plugin loading executes arbitrary code. Only load plugins from trusted sources.
Re-exports§
pub use language_runtime::CompiledForeignFunction;pub use language_runtime::PluginLanguageRuntime;pub use language_runtime::RuntimeLspConfig;
Modules§
- language_
runtime - Language runtime capability wrapper (
shape.language_runtime).
Structs§
- Claimed
Section - A TOML section claimed by a loaded plugin.
- Data
SourceV Table - Function pointer types for data source plugins
- Loaded
Plugin - Information about a loaded plugin
- Output
Field - Describes a single output field produced by the data source
- Output
Schema - Schema describing output data structure
- Output
SinkV Table - Function pointer types for output sink plugins (alerts, webhooks, etc.)
- Parsed
Module Artifact - Parsed bundled module artifact.
- Parsed
Module Function - Parsed schema for one module export.
- Parsed
Module Schema - Parsed
shape.moduleschema. - Parsed
Output Field - Rust-friendly representation of an output field
- Parsed
Output Schema - Rust-friendly representation of an output schema
- Parsed
Query Param - Rust-friendly representation of a query parameter
- Parsed
Query Schema - Rust-friendly representation of a query schema
- Plugin
Capability - One declared capability exposed by a loaded plugin.
- Plugin
Data Source - Wrapper around a plugin data source
- Plugin
Info - Plugin metadata returned by
shape_plugin_info() - Plugin
Loader - Plugin Loader
- Plugin
Module - Wrapper around the
shape.modulecapability. - Plugin
Output Sink - Wrapper around a plugin output sink
- Query
Param - Describes a single query parameter
- Query
Schema - Complete schema describing all query parameters for a data source
- Section
Claim - Declares a TOML section claimed by an extension.
- Sections
Manifest - Manifest of TOML sections claimed by an extension.
Enums§
- Alert
Severity - Alert severity levels
- Capability
Kind - Capability family exposed by a plugin/module.
- Param
Type - Parameter types that a data source can accept in queries
- Plugin
Error - Standard error codes returned by plugin functions
- Plugin
Type - Type of plugin
Constants§
- ABI_
VERSION - ABI version for compatibility checking ABI version for compatibility checking