plugins/shapes
Plugin shape — all plugins (built-in and user-provided) conform to this.
The supervised flag declares whether the plugin needs OTP supervision.
Plugins with supervised: True are started as permanent children of the
gateway supervisor; plugins with supervised: False are used as pure modules.
Types
pub type Plugin {
Plugin(
name: String,
description: String,
plugin_type: PluginType,
supervised: Bool,
start: fn() -> Result(Nil, String),
stop: fn() -> Nil,
health: fn() -> Bool,
)
}
Constructors
-
Plugin( name: String, description: String, plugin_type: PluginType, supervised: Bool, start: fn() -> Result(Nil, String), stop: fn() -> Nil, health: fn() -> Bool, )
pub type PluginType {
Tool
Gateway
Hook
MemoryProvider
}
Constructors
-
Tool -
Gateway -
Hook -
MemoryProvider