Spanda

Plugin Development

Quick start

spanda plugin install --path my-plugin/
spanda plugin enable my-plugin-name
spanda plugin inspect my-plugin-name

Project layout

my-readiness-plugin/
├── spanda.plugin.toml
├── plugin.wasm          # P0 production artifact
└── README.md

Default loader uses Wasmtime for plugin.wasm. Network is disabled in the default WASM sandbox.

Native (local dev only)

Enable native-loader on spanda-plugin. Not for production.

TypeScript (Control Center)

For control-center-ui plugins, ship index.js and declare [control_center] panels.

Recovery extensions

Recovery plugins declare [[recovery.extensions]] in the manifest (playbook, strategy, validator) and may enable on_recovery_completed in [hooks]. See examples/plugins/recovery-plugin/ and plugin-api.md.

Testing

cargo test -p spanda-plugin

Do not replace packages