Plugins are standard Python wheels. Build with uv build
and the wheel can be installed locally by anyone who points at it.
cd plugins/sources/myapi
uv build shenasctl source add myapi --local ./dist/shenas_source_myapi-*.whl For your own plugins you're iterating on, this is the fastest loop. The CLI installs the wheel and the plugin appears in the UI on the next sync.
Open a PR against
shenas-org/shenas
adding your plugin under plugins/sources/<name>/.
Once merged, CI builds the wheel, signs it (Ed25519) and
publishes it to the shenas-managed plugin index. Users then
install with shenasctl source add <name>; the
CLI verifies the signature before installing.
A public third-party plugin index that doesn't require the upstream-PR step is on the roadmap; see roadmap.
Not yet shipping. The intent: plugins that meet a quality bar — tests, documentation, no credential leaks, clean table schemas — will be eligible for certified status, shown as a badge in the UI, listed in an official directory. Today every plugin in the main repo is shipped without a tiered certification distinction. The mechanism is being designed; the bar is being written down.
self.get_config_value() — never hardcoded or logged. See the roadmap for current status on plugin certification and the third-party plugin index.