.adosplug itself, then run the same install flow as a local file: archive parse, signature verification, manifest validation, board check and permission gating. Only the transport differs.
How it works
The agent’sPOST /api/plugins/install_from_url endpoint takes the URL and downloads the archive directly. Two callers use it:
- Mission Control. Clicking Install on a catalog card in a node’s Extensions tab sends the catalog’s archive URL plus its sha256 pin; the agent fetches the archive itself. There is no paste-a-link field in Mission Control.
- The agent CLI.
ados plugin install <https-url>previews the archive throughPOST /api/plugins/parse_from_url, then installs pinned to the sha256 of the bytes you reviewed. Use this to install any allowlisted URL.
Rules the agent enforces
A URL whose host is not on the allowlist is rejected before any bytes are downloaded.
Self-hosted release hosts
Self-hosted release hosts are not supported: the allowlist is compiled into the agent. Publish on a GitHub release, or copy the file to the node and use local install.Integrity is identical to local install
Once the bytes are on disk, URL and local install are the same flow. A signer the agent does not trust fails the install however the archive arrived. The transport adds the host allowlist, the size cap and the hash pin on top. Signing is on Signing keys.Next steps
Catalog and registry
Browse, auto-update and the registry API.
Local install
Install from a file.