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
Search Document