Commander guide
Commander Plugins
Plugin discovery
Commander discovers viewer and filesystem plugins at startup. Installed plugins can register support for specialized formats, then Commander routes matching files to the plugin instead of treating them as generic text or binary data.
Plugins are intended for formats and file-like sources that do not belong in the core application: CSV and database viewers, archive and disk-image handlers, document previewers, source-code tools and other focused integrations.
Server-deployed plugins
Plugin packages can be deployed alongside each Commander release on the download
server. The website first reads the release manifest, selects latest.path, and
then loads that version’s plugins/index.json catalog at runtime. Available
plugins can be shown on the Commander page without baking plugin names into the
static Hugo build.
The catalog can expose plugin name, description, version, category or type, supported platforms and a download URL. Commander and the website should only show plugins that are present in the server catalog, which keeps the public list aligned with what is actually available for installation.
Compatibility
Each plugin should declare the platforms or targets it supports. When platform metadata is present, Commander can avoid offering incompatible packages, and the website can label plugin entries for macOS, Windows or Linux.
If a plugin is installed locally but is no longer advertised by the server, the installed copy can still be discovered at startup. The server catalog only describes what is currently available to download.
Updating plugins
Because plugin availability is read from the current release’s plugin catalog,
publishing a new plugin or new plugin version is a deployment operation rather
than a website rebuild. After the release manifest points at the new version,
the Commander page and compatible app clients can load that version’s
plugins/index.json on their next refresh.
Commander also supports plugin install and uninstall workflows in the app. The server catalog describes what can be installed, while local discovery determines which installed plugins are active at startup.
Long-running packer plugins can report progress while extracting or creating archives. Plugins that emit progress drive the same cancellable progress UI as native file operations; plugins that do not still run with an indeterminate operation indicator.
Submitting a plugin
Plugin maintainers can use the Add a new plugin form on the Commander product page to submit a public source repository for review. Include the plugin manifest, source code, reproducible build instructions and a license in the repository. The submission also identifies the plugin capabilities, supported platforms and current version.
Submissions are reviewed for protocol compatibility, packaging, catalog metadata and security before publication. Submission does not guarantee acceptance. Never include credentials, signing keys or other secrets in the form or repository.