Publish a Plugin to the Hub
This guide describes the public delivery path for an Open Nua Plugin. A Plugin is a versioned package with a manifest, Skills, runtime behavior, and explicit permissions. It is not an arbitrary URL or an unreviewed frontend handed to Desktop.
What the Hub owns
The Hub validates package structure, manifest metadata, versions, checksums, and release notes. It is the source of truth for what can be installed. Gateway remains the controlled runtime entry point, and Desktop only loads capability that the user or organization has enabled.
Before you publish
- Choose the runtime contract and document the supported operations.
- Write
PLUGIN.mdso an Agent can understand when and how to use the capability. - Declare permissions, required configuration, output artifacts, and human-confirmation points in the manifest.
- Run the local validation and conversation checks against a clean workspace.
- Build a reproducible package and record the version and checksum.
Release flow
authoring → local validation → package → Hub review → publish → enable
The organization administrator controls production enablement. A package may be visible in the Hub without being enabled for every user. Runtime configuration is controlled by the organization; authors must not smuggle an upstream URL into a manifest to bypass that boundary.
Troubleshooting
- If the package is rejected, fix the manifest or package layout and publish a new version.
- If a runtime call is denied, inspect the declared permission and the organization policy before changing code.
- If a new version is not visible, verify the Hub release record, cache invalidation, and the selected organization.
For the complete authoring contract, continue to Plugin development.