Docs / Publishing

Publish a plugin

The plugin repository owns code and plugin.json. The Registry owns display metadata and immutable release records.

1. Prepare the plugin

Put plugin.json at the ZIP root. Declare the correct ID, SemVer, Plugin API version, app version range, execution mode, and dependencies. Runtime fields come from this file.

Package requirements ↗

2. Create an entry

pnpm registry:new-plugin

Enter the plugin ID, publisher, repository, Chinese and English names and summaries, categories, and license. The script creates a draft. A draft is not included in the public API.

3. Create a GitHub Release

Use a v<version> tag and upload <plugin-id>-<version>.zip. A published version cannot be overwritten; publish a new version to correct it.

4. Import and validate

pnpm registry:import-release -- <plugin-id> https://github.com/OWNER/REPO/releases/tag/v1.0.0
pnpm registry:verify-releases
pnpm check

The importer reads the Release and tag commit, downloads the ZIP, validates paths and manifest, computes SHA-256, and writes the version record. Review screenshots, both READMEs, permissions, and compatibility before submitting a PR.

Human review still matters

Hash and schema validation prove consistency, not safe behavior. Never commit accounts, cookies, keys, or personal data to the Registry.

No plugins found